在 SIMATIC WinCC 中调试 .NET UserControl 运行

Debug a .NET UserControl running in SIMATIC WinCC

我目前正在为 WinCC 开发 .NET UserControl。为此,我编写了一个 WinForms UserControl 并在一个小型 WinForms 应用程序中对其进行了测试。一切都很好。

然后我将我的控件插入到我的 WinCC 图片中 运行。不知何故,我的控件在 WinCC 中表现不同。所以我尝试将我的 Visual Stuido 2012 附加到 WinCC 运行时进程 (PdlRT.exe) 并在按钮单击事件处理程序中设置一个断点。附加后,断点被禁用,工具提示 The breakpoint will not currently be hit. No symbols have been loaded for this document.

所以我将我的 DLL 和 PDB 文件移动到各个文件夹,以防 WinCC 复制我的 dll 并忽略 PDB 文件。我试了WinCC运行时的根文件夹,还有所有画面的根文件夹。 不同的 .NET Framework 版本也没有帮助。

如果我想调试被其他进程托管的控件,是否需要设置任何属性或设置?还是WinCC有一些需要注意的特点?

通过Siemnes的WinCC热线咨询,终于弄明白了:

  • 确保您的 DLL 编译为 x86
  • 在DLL项目设置中,勾选"Enable native code debugging"选项
  • 附加到 WinCC 时,将代码类型设置为本机和托管(v4.5、v4.0)

我希望这会在某个时候对某人有所帮助 ;)