簡體   English   中英

將非托管DLL部署到輸出目錄

[英]Deploying unmanaged DLLs to output directory

我正在嘗試組織我的VS 2010解決方案。 阻礙我的一個領域是使用非托管DLL。 我無法將它們添加為引用,因為DLL是不受管理的。 之前的方法是在前/后構建事件期間將DLL從“lib”文件夾中復制到輸出文件夾。 這樣做的缺點是每次構建都會發生不必要的復制,而且清理操作也從未從輸出文件夾中刪除DLL。

我理想的解決方案是將DLL整合到VS lib文件夾中,並使用“Copy If Newer”功能。 但是,VS在輸出文件夾中創建一個lib文件夾並將DLL放在那里。 請注意,我不希望將DLL放在項目樹的頂層。 有很多DLL,這似乎污染了項目。

我將回到發布構建步驟,但使用xcopy /d (僅在更新時復制),並使用如下步驟如何在Visual Studio 2008中創建自定義清理(后清理)事件? 實現自定義清理。

您可以通過在每種情況下獲取列表並在其上執行來避免重復的文件列表。

預構建事件只是批處理腳本

並且您可以使用MSBUILD批處理來創建干凈步驟的列表。

如果您願意,可以在msbuild腳本中編寫一個beforecompile步驟,該步驟將文件從源復制到目標而不是VS中的預構建步驟。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM