gpt4 book ai didi

c++ - 如何在 Visual Studio 中的干净构建期间删除 dlldata.c?

转载 作者:太空宇宙 更新时间:2023-11-04 14:26:45 25 4
gpt4 key购买 nike

我将创建一系列旨在构建 COM 对象的项目。我试图创建一个属性表(.vsprops 文件),它将为每个项目设置构建。我对属性文件所做的其中一件事是自定义 MIDL 编译器创建的文件的位置和名称。这是我为此使用的代码:

<Tool
Name="VCMIDLTool"
TypeLibraryName="$(InputName).tlb"
OutputDirectory="$(RPCDIR)"
HeaderFileName="$(InputName).h"
DLLDataFileName="$(InputName)_dlldata.c"
InterfaceIdentifierFileName="$(InputName)_i.c"
ProxyFileName="$(InputName)_p.c"
/>

RPCDIR 是在属性文件的这一部分之前定义的宏。这非常适合编译代码。当我构建我的项目时,这五个文件以正确的名称创建在我在 RPCDIR 宏中指定的位置。我的问题是当我尝试清理构建时。 clean 成功删除了其中四个文件,但 DLL 数据文件没有被删除。我特别困惑的是有些被删除了,一个没有 - 我本以为要么全部删除,要么一个都不删除,而不是像这样拆分。

有谁知道我如何自定义清理版本以正确删除这些文件?最佳情况下,我需要进行的任何更改都将在属性表​​中进行,以便我可以与其他项目共享它,但如果这不可能,那么我希望至少能够在项目文件中进行。提前感谢您提供的任何帮助!

最佳答案

不是你的问题,这是构建系统中的错误。使用常规构建也不会删除 dlldata.c 文件。 msbuild .log 文件中没有足够的可用诊断来查看是什么目标搞砸了这个。我猜它与 <FilePatternsToDelete> 有关Microsoft.CppClean.targets 文件中的项目。

我建议您在 connect.microsoft.com 上报告此问题

关于c++ - 如何在 Visual Studio 中的干净构建期间删除 dlldata.c?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3321169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com