官方淘宝店 易迪拓培训 旧站入口
首页 > 无线通信 > 通信技术学习讨论 > OPNET-.NET 2005仿真运行不了,帮帮忙

OPNET-.NET 2005仿真运行不了,帮帮忙

12-12
OPNET 11.5版本,C的编译环境是.NET 2005,
运行时总是提示MSVCR80.DLL not found。
谁在。NET 2005之上运行过OPNET?
帮个忙,谢过了!

这个好像是OPNET支持的问题,据说要到9月份他们才支持.Net 2005,以前在OPNET主页上看到讲如何设置环境变量,但没记下来,现在找不着了~~~~~~~~

Here is the response of OPNET for this question.
Question:  I get windows system message "Application failed MSVCR80.dll not found" when attempting to run simulation built with .NET 2005 compiler  
Answer:  With .NET 2005 compiler and Windows XPSP2 Microsoft changed the way applications discover required standard runtime libraries (MSVCR80.DLL). In a new schema, applications must "manifest" which particular version of runtime libraries they expect. OPNET simulation executable itself (and any other executables shipped by OPNET) does not use new runtime libraries and thus will function without any problems. However, simulation models compiled and linked into DLLs with .NET 2005 may not be loaded into the simulation without manifesting which runtime library version they need.
To workaround this issue, you may build and run static OPNET simulations. If you plan to distribute such simulations to third parties, please make sure that you distribute both "your_executable_name.sim" executable generated by op_mksim, as well as "your_executable_name.sim.manifest" file, which is implicitly generated by .NET 2005 linker. You may also need to re-distribute Microsoft Runtime Libraries. Please check Microsoft documentation for licensing and technical details.
Another workaround, which will allow you to use dynamically linked simulations, is to provide ".manifest" file which will describe to windows where to look for runtime components. Please follow the procedure below:
1. Open OPNET Console, which should also be configured to use .NET 2005 tools. Please refer to OPNET FAQ # 1685 for .NET 2005 command line tools configuration details.
2. Build a static simulation executable. Any network model will actually work. For example, you can build simulation for "ATM-cbr_abr" network model with "op_mksim -net_name ATM-cbr_abr" command.
3. Upon successful completion, "op_mksim" will report the location and the name of produced simulation executable (such as "C:\PROGRA~1\OPNET\11.5.A\models\std\example_networks\ATM-cbr_abr.dev32.i0.sim"). .NET 2005 linker should also create a manifest file named {executable_name}.manifest in the same location (such as "C:\PROGRA~1\OPNET\11.5.A\models\std\example_networks\ATM-cbr_abr.dev32.i0.sim.manifest")
4. Copy that .manifest file to $OPNET\11.5.A\sys\pc_intel_win32\bin directory and rename it to "op_runsim_dev.exe.manifest". You may also create another copy in the same location called "op_runsim_opt.exe.manifest" if you planning to use the optimized simulation kernel.
Typical content of .manifest file is:
=====
<?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.CRT' version='8.0.50607.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
</dependentAssembly>
</dependency>
</assembly>
=====
[Note: for 64 bit executables, use:
version='8.0.50608.0' processorArchitecture='amd64'
You may try saving that text as "op_runsim_dev.exe.manifest" instead of producing manifest using the procedure outlined above, but results may very if the actual version of runtime library installed on your system is different.
NOTE: if you are an ODK user and building OPNET ODK DLLs with .NET 2005, you may need to produce and distribute with your product .manifest files for the OPNET GUI executable that you customize (e.g "modeler.exe.manifest" or "odktools.exe.manifest")  

Top