转:
软件环境:win xp x64 pro +VMware workstation 7.0 + Wincc 5.1 中文版<BR>硬件环境:Hp z400 </P><P>由于我们的wincc 5.1 在win 2k 下才正常运行,故借用虚拟机虚拟了个2000 的环境安装 wincc </P><P>但在使用的时候出现错误对话框,内容为unhandled exception was raised ,look file "c:\program\siemens\wincc\diagnose\PDLRTSEH.LOG" for details. 点击确定后wincc画面就退出了,必须重新激活wincc 才可以,但用不久后又弹出,重复又重复。</P><P>打开日志文件都是一些机器码,下面是其中的一次错误记录。请大家帮忙分析一下问题。谢谢</P><P><BR>//====================================================================<BR>// WinCC reported exception with code: C0000005 ACCESS_VIOLATION<BR>// Date: 18.3.2011 - Time: 8.23.4<BR>// Caused at logical address 0041E578 01:0001D578<BR>//====================================================================<BR>// FAULTING MODULE: C:\Siemens\WinCC\bin\pdlrt.exe<BR>//====================================================================<BR>// Registers:<BR>// ----------<BR>// EAX:00000000<BR>// EBX:00000000<BR>// ECX:77553A78<BR>// EDX:00000000<BR>// ESI:038B2B78<BR>// EDI:00422E70<BR>// CS:EIP:001B:0041E578<BR>// SS:ESP:0023:0213FEE4 EBP:0213FF20<BR>// DS:0023 ES:0023 FS:0038 GS:0000<BR>// Flags:00010246<BR>//<BR>// Raw stack dump:<BR>// -----------<BR> 0213FEE4 00422E70 038B2B78 00000000 00422E7C 03BF5690 00000000 77537C89 00000000 <BR> 0213FF04 00000000 038B2B78 00000000 00000000 00000000 77553A60 00000000 77F89103 <BR> 0213FF24 77538F9D 00422E70 00000003 00000000 00000000 038B2B78 00000000 00000000 <BR> 0213FF44 00000002 77553A78 77F89103 77553780 77553A78 77553A78 7753931D 00000000 <BR> 0213FF64 00000020 000202CA 0213FFEC 00000000 0000027C 00000280 00000000 00000000 <BR> 0213FF84 00000000 8042F981 00000000 00000000 8042FA31 851F2AE0 851E0DA0 FFFFFFFF <BR> 0213FFA4 80430D04 851E0E84 00000000 00000000 77F84BD7 77E6987C 00000000 00000020 <BR> 0213FFC4 000202CA 00000000 7FFD6000 C0000005 0213FFC0 0213FB30 FFFFFFFF 77E7F0B4 <BR> 0213FFE4 77E6D360 00000000 00000000 00000000 7753927F 00000000 00000000 000000C8 </P><P>// -----------<BR>//<BR>// Call stack:<BR>// -----------<BR>// Address | Frame |<BR>// ---------+----------+----------------------------------------------<BR>// 0041E578 | 0213FF20 | 0001:0001D578 C:\Siemens\WinCC\bin\pdlrt.exe<BR>// 77538F9D | 77F89103 | waveOutSetVolume+C6<BR>// 8B000000 | 180D8B64 | 0000:00000000 <BR>//====================================================================
问题补充: 实际应用的wincc 5.1程序和项目文件, 是在老式支持win2k的PC上却正常运行 ,但移植到虚拟机上就有pdlrt.exe 问题出现了。
方法:
1.首先确认是不是你虚拟机系统或者软件故障,新建一个项目,运行是否正常。 2.pdlrt.exe是Graphics Runtime的相关程序,你可以先在项目中取消激活Graphics Runtime,看错误是否依旧。 3.如果是一运行Graphics Runtime就报错,或者是切换某个一画面的时候报错,检查画面内组态的对象,是否组态了特殊对象。比如控件 "Microsoft Forms 2.0 ComboBox",因为使用这个控件会导致 "pdlrt.exe" 内存需求的不断增长。 4.可能跟虚拟机有关系,加大虚拟机内存,或者升级VMware至7.1试试,可能对内存管理更好。
《如何在 OS 上组态一个组合框 (combo box),并且能够自动根据不同语言自动填充相应的文本?》中指出控件可能导致内存增长。 http://support.automation.siemens.com/CN/view/zh/28921535 《在哪里可以找到WinCC诊断文件License.log、WinCC_SStart_xx.log 和WinCC_Sys_xx.log 的出错消息的解释?》中提供更多诊断途径。 http://support.automation.siemens.com/CN/view/zh/11965771
补充: 如果项目没问题,那就是虚拟机环境没做好。 1.尝试重装虚拟机内的Windows 2000 和WinCC V5.1。 2.调整虚拟机设置,比如内存、显存等。 3.换一个虚拟机软件或者将 VMware workstation 升级至最新版V7.1。