【发布时间】:2015-02-05 12:47:10
【问题描述】:
我创建了 C++ Dll
Initialize()
{
if(!_fs.isOpened())
{
throw ERROR_FILE_NOT_FOUND;
_logfile << "Error ! Opening BDS.xml" << "\t" <<_arrivalTime<<endl;
_logfile.close();
}
}
并在 C# 中调用此函数
private void button1_Click(object sender, EventArgs e)
{
try
{
Initialize();
}
catch (RuntimeWrappedException ex)
{
MessageBox.Show(ex.Message);
}
}
但我收到此错误 SEHException is Unhandled External Component has throw an exception 我尝试了 C# all exception 方法但我没有得到正确的答案。有人可以帮助我吗?或者告诉我如何从 C++ Dll 抛出异常并在 C# 中捕获相同的异常并等待 C# 的响应。像重试、中止、忽略错误一样,如果按下重试,它将再次开始在 Dll 中打开文件。我该怎么做。请帮我解决这个问题。
【问题讨论】: