2015-02-24 81 views
0

我有一個應用程序,我參考了an external library。我需要將它發送到沒有Visual Studio並執行它的計算機,所以我想我會編譯整個事件併發送可執行文件。問題是,雖然在我的計算機上解決方案運行得很好(即使我只運行exec文件),但在他的計算機上它說外部庫在他嘗試執行時沒有鏈接 - 它立即崩潰。執行參考庫

如何發送一個即使沒有安裝庫也可以工作的exec文件?它可以與DLL有關嗎?

回答

2

是的,你需要提供引用的dll,否則它將無法工作。 當您在解決方案資源管理器中找到引用時,您可以使用Visual Studio功能,單擊非標準引用並在其上選擇「複製本地」屬性。然後,在構建和發佈項目時,您的bin/debug文件夾中會有相應的引用dll。

每當您有外部依賴關係不是.NET框架的標準部分時,您必須將其包含在其他文件中。

+0

我發現複製本地屬性,我該怎麼處理它? (它目前設置爲「true」),並且一旦我有了DLL文件,我是否會將它們與可執行文件一起發送,或者它是否可以自行運行? – 2015-02-24 21:23:37

+0

@ A.Abramov,當您將Copy Local設置爲True時,這些引用將被複制到您的bin或調試文件夾中.exe文件。但是,您也必須將這些文件發送給您的客戶。複製本地對於「在同一屋檐下」組合所有必需的文件非常有用。如果你不這樣做,你必須自己複製相應的dll。沒有它,軟件可以在本地工作,因爲它可以在本地PC中找到這些引用,但是如果客戶想運行它們,也需要這些文件。 – walther 2015-02-24 21:28:22

+0

偉大的答案,我明白一切(: 只是我最後一件事情之前,我給你的複選標記你應得的 - 有沒有辦法做到這一點編程? – 2015-02-24 21:30:22