我將創建一系列建立COM對象的項目。我試圖創建一個屬性表(.vsprops文件),它將爲每個項目設置構建。我對屬性文件所做的一件事是自定義由MIDL編譯器創建的文件的位置和名稱。以下是我用於此的代碼:如何在Visual Studio中清理生成期間刪除dlldata.c?
<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宏指定的位置創建正確的名稱。我的問題是當我嘗試清理構建。清理成功刪除四個文件,但DLL數據文件不會被刪除。我特別困惑的是,一些被刪除,一個不是 - 我會想,要麼他們都將被刪除或不被刪除,而不是像這樣的分裂。
有誰知道我可以如何定製清潔版本以正確刪除這些文件?理想的情況下,我需要做的任何修改都會放在屬性表中,以便我可以將其與其他項目共享,但如果這不可行,那麼我希望至少能夠在項目文件中完成。預先感謝您提供的任何幫助!
我知道這是多大年紀,但是。 。 。 。它可能與編譯多個midl文件時dlldata複雜的事實有關? mb個?我試圖找出適當的方法atm ..。 。 – 2011-08-07 16:29:20