【发布时间】:2017-03-04 07:26:49
【问题描述】:
我正在后台线程中调用其中一个 DLL 函数。
问题是当 DLL 丢失时,我的应用程序直接崩溃。我也尝试了 try-catch,但应用程序仍然崩溃?
当我在主 UI 线程上调用 DLL 函数时,我的应用程序会处理异常。
如何处理后台线程内的异常?
mythread = new Thread(CM);
mythread.IsBackground = true;
mythread.Start();
private void CM()
{
// Perform a protection check with default options
try
{
ret_code = myclass.CheckProtection(myclass.CheckProtectionOptions.Default);
}
catch(Exception cm)
{
throw cm;
}
}
【问题讨论】:
-
你能分享你的尝试吗
-
你加载的DLL是什么
-
我正在将我的 DLL 复制到 exe 文件夹位置
-
你真的捕捉到异常还是失败了?检查断点。
-
投掷后糟糕,我想我没能接住。但是是否可以从 bck 线程中捕获异常?
标签: c# multithreading dll