我正在編程(這是由其他人編寫的),此程序是使用Visual Studio 2010用C#編寫的。幾乎所有內容都很好(除了一些邏輯問題),直到我嘗試朗姆酒我的程序處於Release模式而不是Debug模式。該程序下載測試模塊(PingTest.dll)並在計算機空閒時運行。調試版將所有文件存儲在正在運行的文件夾中,同時發佈版本「安裝」到c:\ Users \ Macke \ AppData \ Local \ NetMon \中,並從那裏重新運行(所有運行所需的文件也存儲在那裏)。所以當我運行NetMon.exe它崩潰。我添加了一些try/catch並發現錯誤:無法加載文件或程序集或其依賴關係之一。系統找不到指定的文件
無法加載文件或程序集'CountDow_Idle,版本= 1.0.0.2,Culture = neutral,PublicKeyToken = null'或其中一個依賴關係。該系統找不到指定的文件。
導致它的部分代碼: AppDomain aDom = AppDomain.CreateDomain(「TestingDomain」); Assembly testAsm = null;
using (FileStream fs = File.Open(TMP_MOD_NAME, FileMode.Open))
{
using (MemoryStream ms = new MemoryStream())
{
byte[] buffer = new byte[1024];
int read = 0;
while ((read = fs.Read(buffer, 0, 1024)) > 0)
ms.Write(buffer, 0, read);
testAsm = aDom.Load(ms.ToArray());
}
}
INetMonTest iTest = null;
foreach (Type type in testAsm.GetExportedTypes())
{
if (type.BaseType.FullName == "CountDown_Idle.INetMonTest")
{
try
{
iTest = (INetMonTest)aDom.CreateInstanceAndUnwrap(AssemblyName.GetAssemblyName(TMP_MOD_NAME).FullName, type.FullName);
}
catch (Exception ex)
{
MessageBox.Show("AppDomain creation failed:\n\n" + ex.Message);
}
break;
}
}
我看了媒體鏈接爲(在AssemblyInfo.cs文件)
所以莫比任何人都可以幫我正確的版本。 Thanx提前