【发布时间】:2013-05-28 20:10:15
【问题描述】:
我有一个 WPF 应用程序,它正在调用本机 DLL(用 c++ 编写)中的函数。 .DLL 中的这个函数有时会执行一个进程退出,这会杀死 WPF 应用程序。
例子:
WPF App:
.....
[DllImport("native.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
private static extern void NativeMethod();
.....
void CallFunction()
{
//Call the native function
NativeMethod();
}
....
在 NativeMethod 内部有一个出口,我无法更改 .dll 的源代码。 任何人都知道从 .NET 代码中捕获 DLL 中此出口的方法吗?
提前致谢,
【问题讨论】:
-
除了一件事,您无能为力。扔掉 DLL。
-
嗨汉斯,有一些解决方案,即使它们并不完美......我可以创建一个简单的控制台应用程序,它具有 .dll 的代理,因此会杀死控制台应用程序进程而不是主进程过程...所以有一些解决方案..