我刚刚在新服务器上部署了我的应用程序。
当我开始它时,我得到了这个例外。
System.IO.FileNotFoundException: Could not load file or assembly 'PDFNet.dll'
or one of its dependencies. The specified module could not be found.
我经过几个小时的调试和重新添加参考资料后,我发现了dependency walker.
原来,新服务器缺少Microsoft Visual C ++ 2010 Redistributable Package
现在我的问题是:
有没有办法从运行中的异常或其他地方获取该信息,以便我可以显示一个有用的消息框并正确记录错误?
正如对答案的评论所述,默认情况下此信息不可用。
但是,问题是部署问题。
我刚刚在新服务器上部署了我的应用程序。
由于您要部署到服务器,因此您知道它是64位还是32位,并且您可以一次安装依赖项(或使其成为部署依赖项的一部分)。
或者,您可以将两个C ++运行时DLL放入使用PDFNet的进程的工作目录中,如果这是明显且稳定的位置。
所以我不建议打扰运行时检查,这是非常重要的,而只是确保在创建新服务器时这种依赖关系是明确的。一旦那里,并假设没有人删除DLL,那么它将始终正常工作。
我经过几个小时的调试和重新添加引用
抱歉对此感到沮丧。对于未来的读者,此处提供此信息。 https://www.pdftron.com/documentation/windows/guides/deployment#net