2012-04-30 81 views
6

我有一個C#項目(我們稱之爲驅動程序),它使用非託管DLL與某些硬件進行交互。我有另一個引用Driver的項目。當我構建項目時,非託管DLL將被複制到輸出目錄。但是,當我將該項目作爲ClickOnce應用程序發佈時,該DLL不會包含在應用程序的文件中。從引用的項目發佈非託管DLL

Application Files項目屬性下的Publish,我可以看到Driver的託管DLL,但未託管的DLL沒有列出。

我確定這有一個簡單的解決方法,但搜索通常會導致有關在項目中包含非託管DLL的問題。

由於提前,

比約恩

+0

重複:http://stackoverflow.com/questions/6173501/how-can-i-deploy-an-unmanaged-dll-with-a-wpf-click-once-application –

+0

@MortenFrederiksen將其添加爲現有項目肯定是一種選擇。然而,我有幾個依賴於Driver的項目,並且向所有這些項目添加相同的DLL似乎是一種浪費,因爲它們不直接依賴於DLL。 –

+0

您可以故意調用DLL Hell,但您必須首先放棄ClickOnce部署。 –

回答

3

研究這個多一些後,似乎解決方案是將DLL添加爲一個現有的項目在所有使用它的項目。然而,如果你有多個項目取決於它,它似乎非常笨重。