外部 DLL 上未处理的异常使我的应用程序崩溃 - c#

问题描述 投票:0回答:0

我正在开发一个使用外部 DLL 来编写驱动程序的应用程序(DLL 是由驱动程序的生产者开发的,我没有源代码)。 我们在其中一个导致我的应用程序崩溃的 dll 上发现了未处理的异常。 我不能使用简单的 try catch,dll 正在以这种方式工作:

  1. 开始读取返回输出代码的操作(如果开始读取过程,则返回代码=成功)

    ProgrammingAPI.ApplicationConstants.ReturnCode ret = ReadFromDevice();

  2. 检查是否开始读取并等待操作完成

       if(ret == ApplicationConstants.ReturnCode.Success)                             
       {                                                                            
          while (ProgrammingAPI.ProgrammingAPI.IsWorking())
          {
               Thread.Sleep(500);
          }                                                                             
       }
    

我们发现在某些情况下,当我们等待 ProgrammingAPI.ProgrammingAPI.IsWorking() 变为 false 时,DLL 会抛出未处理的异常并导致应用程序崩溃。

有人能帮我避免那种崩溃吗?

谢谢

c# exception dll unhandled
© www.soinside.com 2019 - 2024. All rights reserved.