2013-01-03 52 views
0

我在c#2010中編寫了一個使用第三方dll的dll。當我添加對這些dll的引用時,它將它們全部複製到本地目錄中。DLL的相對參考路徑,以防止複製dll

我寫了一個使用我的dll的小應用程序。當我添加引用到我的dll時,它將所有的dll複製到本地目錄中。

如何讓我的dll引用第三方dll,然後我的應用程序引用我的dll,而不是一遍又一遍地複製一切?我嘗試使用一些相對引用,但無法使其工作。

這變得更加棘手,因爲我需要能夠將我的應用程序(通過我的dll)部署到安裝了第三方dll的另一臺計算機上。我希望有一種方法可以簡單地告訴vs2010我不想複製dll,而是根據主機已經複製的第三方dll的位置來引用它們。

我似乎無法做到這一點。

***澄清

目前,當我部署的應用,都讓我引用的DLL文件是在我的應用程序文件夾。所以,現在的dll文件在我的應用程序文件夾和機器上的第三方文件夾。有沒有辦法讓應用程序找到已經在電腦上的dll文件並引用它們?

回答

0

部署時,Windows安裝程序將檢查現有的DLL文件,並且不會複製您的dll文件(或第三方的文件),除非它們較新。

這是一件好事。

+0

有沒有辦法阻止它複製DLL?我的意思是,目前,如果我部署我的項目,它在我的應用程序文件夾中有dll,第三方dll已經在機器上它們自己的文件夾中。這意味着有兩個dll副本。我想讓它在機器上只有一組dll文件。 –