我有一個控制檯應用程序(NGameHost
)運行在一個特定的目錄(C:\Program Files\NetworkGame3\api\
)。它使用該目錄中可用的文件,並且在自行運行時控制檯應用程序運行良好。它還公開了使用該目錄中的DLL(以及其他文件,如配置文件)的各種方法。我現在有另一個控制檯應用程序(位於別處)試圖調用這些方法並返回結果。我已設置Copy Local: False
,以便它在該目錄內執行而不是創建本地版本。但是,我收到錯誤「無法加載文件或程序集......或其依賴項之一,系統找不到指定的文件。」調用DLL文件位於另一個目錄
如何從位於其他目錄的控制檯應用程序調用方法?
你需要使用的完整路徑包含DLL文件的目錄。該程序無法單獨找到它們。默認搜索順序不包括硬盤上的隨機目錄。 – 2011-12-18 14:36:48
當我包含引用時,它在屬性部分中具有正確的完整路徑。我想它會啓動該程序集,因爲它知道路徑,並且我已經告訴它不要使用本地副本。 – XSL 2011-12-18 14:56:02
Hasan的答案就是關於'Copy Local'的問題,它隻影響MSBuild在編譯過程中是否將程序集複製到本地目錄。這與您的應用程序在運行時查找程序集無關。 – 2011-12-18 14:57:43