几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   DirectDWG (http://www.dimcax.com/hust/forumdisplay.php?f=89)
-   -   【转帖】runtime Dll Not Found In Nunit-tes (http://www.dimcax.com/hust/showthread.php?t=18473)

yang686526 2009-05-07 03:16 PM

【转帖】runtime Dll Not Found In Nunit-tes
 
runtime dll not found in nunit-test
runtime dll not found in nunit-test
hi all!
i am using the dll version of dwgdirect for vs2005 (vc++ 8.0).
i built a mixed mode user control that uses dwgdirect to interpret layerstyles from dwg files. this mixed mode dll is tested with nunit. when i try to load the test dll, the error "file abc.test.dll or one of it's dependencies can not be found".
some investigations show, that the dd_*.dll files depend on a specific version of some c++ runtime files (msvcr80d.dll, ..) that are not on my machine.
question: is there a specific binding to a certain version of the c++ runtime?
dwgdirect dlls are not bound to a specific version of crt, but you have to reference some vc8 crt in your application manifest.
vladimir
thank you for your fast answer!
quote:
originally posted by wvk
dwgdirect dlls are not bound to a specific version of crt, but you have to reference some vc8 crt in your application manifest.
so the problem might be, that i have no bindings declared (no references)?
as i am compiling a mixed mode dll, i'm not sure, if there is a default manifest file embedded in my component. also i do not know, which bindings are used by nunit.
does anybody have experiences in this direction?
you may always add an external manifest to any application.
it is a file named "yourapplicationname.exe.manifest" in the application directory.
vc8.sp1 crt reference looks like
code:
<?xml version='1.0' encoding='utf-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestversion='1.0'>
<dependency>
<dependentassembly>
<assemblyidentity type='win32' name='microsoft.vc80.debugcrt' version='8.0.50727.762' processorarchitecture='x86' publickeytoken='1fc8b3b9a1e18e3b' />
</dependentassembly>
</dependency>
<dependency>
<dependentassembly>
<assemblyidentity type='win32' name='microsoft.vc80.debugmfc' version='8.0.50727.762' processorarchitecture='x86' publickeytoken='1fc8b3b9a1e18e3b' />
</dependentassembly>
</dependency>
</assembly>for another version numbers are different.
you may compile some c++ application with vc2005 and search for the intermediate manifest in the intermediate directory.
vladimir


所有的时间均为北京时间。 现在的时间是 11:29 PM.