Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何验证DLL是否已正确加载?_.net_Dll_Verification - Fatal编程技术网

.net 如何验证DLL是否已正确加载?

.net 如何验证DLL是否已正确加载?,.net,dll,verification,.net,Dll,Verification,在工作中,我们几乎在任何地方都使用特定的内部DLL。它不断更新,我们经常在32位和64位应用程序中使用它。这是一个混合模式的C++ DLL,所以我知道,我对C++的DLL配置和参数的了解不多,因此我正在传递我所听到的,我们的应用程序在C范围从2到4。由于这个DLL无处不在,有时需要从需要旧版本的项目中获取旧版本时,会获取旧版本 我在最新项目中的一个重要位置使用了这个DLL。由于使用了错误版本的DLL,所以最好尽早失败,而不是在实际需要DLL的关键时刻失败。有哪些技术可用于验证DLL在代码早期是否

在工作中,我们几乎在任何地方都使用特定的内部DLL。它不断更新,我们经常在32位和64位应用程序中使用它。这是一个混合模式的C++ DLL,所以我知道,我对C++的DLL配置和参数的了解不多,因此我正在传递我所听到的,我们的应用程序在C范围从2到4。由于这个DLL无处不在,有时需要从需要旧版本的项目中获取旧版本时,会获取旧版本

我在最新项目中的一个重要位置使用了这个DLL。由于使用了错误版本的DLL,所以最好尽早失败,而不是在实际需要DLL的关键时刻失败。有哪些技术可用于验证DLL在代码早期是否有效


我想我可以尝试使用DLL之外的对象,但我觉得这是一个半草率的解决方案,只是创建一个对象来看看是否可以,更不用说,如果DLL不包含可以实例化的对象,并且所有其他方法都可能对操作系统、数据库或内部状态造成不必要的影响,那么这种技术将无法工作。我的第二个想法是,因为这个DLL是内部的,所以它包含一个考虑到这一点的方法。仅用于验证DLL的“不做任何事情”方法将起作用。但是,我知道这对非内部DLL不起作用,这感觉像是一个非常不专业的解决方案。

也许可以调用System.Reflection.Assembly.GetAssembly来确保您使用的是正确的版本还是您认为正确的版本

这里真正马虎的部分是跟踪DLL和管理其部署的方式。首先解决这个问题,这个问题就会自行解决;而不是GetAssembly。这是一个有趣的链接——谢谢你的提醒。我在VS2008和VS2010之间来回奔波。