【发布时间】:2011-04-27 15:45:13
【问题描述】:
我正在编写一个使用非托管库的程序。 处理可用 foo.dll 版本不兼容的情况的最佳做法是什么?
示例:用户启动程序并拥有比程序预期的旧版本的 DLL。你会尝试使用它吗,因为在成熟的库中破坏 API 更改应该是不常见的?立即出错?在程序中维护一个资源,其中包含每个使用的非托管 DLL 的下载位置? 还是认为最好将每个 DLL 包含在项目自己的文件夹中并坚持使用该文件?
目前,我使用后者,并使用新的项目版本更新 DLL,但我希望我的软件能够尽可能地容错,并且我不知道使用非托管 DLL 的任何最佳实践(除了“除非必须,否则不要使用它们”)。
【问题讨论】:
标签: .net exception-handling unmanaged