调用 Siemens WinAC ODK Open() 时出现错误代码 2
Error code 2 when calling Siemens WinAC ODK Open()
Windows/system 更新后,我的执行器控制应用程序(Win 7 上的 .NET 4.7.1 运行)不再工作。
我在 SMX 模式下使用 Siemens WinAC ODK 4.2 来控制连接到 Festo 执行器的 PLC。
我现在在 S7smxx.dll 中调用 S7SMX_Open()(通过互操作)时收到错误代码 2。
该错误代码在我的程序中定义为 "S7SMX_ERR_NO_LOCATOR"。
方法声明:
// Open SMX connection
[DllImport(@"S7smxx.dll", EntryPoint = "?S7SMX_Open@@YAHKPBDPAPAX@Z", CharSet = CharSet.Auto, CallingConvention = CallingConvention.Cdecl)]
public static extern errorCodes S7SMX_Open(flags dwFlags, [MarshalAs(UnmanagedType.LPStr)] String pDeviceName, out IntPtr phHandle);
程序中的主线程被标记为使用单线程单元(STAThread)。
我看过西门子论坛,运气不佳。
错误是什么意思,我该如何解决?
错误现已修复。
这是由 Windows 个与 Meltdown/Spectre 相关的更新补丁引起的。这些补丁与 RTX 2009 不兼容,导致它停止工作。
卸载补丁后,系统恢复正常
https://confluence.merging.com/pages/viewpage.action?pageId=25035234
Windows/system 更新后,我的执行器控制应用程序(Win 7 上的 .NET 4.7.1 运行)不再工作。 我在 SMX 模式下使用 Siemens WinAC ODK 4.2 来控制连接到 Festo 执行器的 PLC。
我现在在 S7smxx.dll 中调用 S7SMX_Open()(通过互操作)时收到错误代码 2。 该错误代码在我的程序中定义为 "S7SMX_ERR_NO_LOCATOR"。
方法声明:
// Open SMX connection
[DllImport(@"S7smxx.dll", EntryPoint = "?S7SMX_Open@@YAHKPBDPAPAX@Z", CharSet = CharSet.Auto, CallingConvention = CallingConvention.Cdecl)]
public static extern errorCodes S7SMX_Open(flags dwFlags, [MarshalAs(UnmanagedType.LPStr)] String pDeviceName, out IntPtr phHandle);
程序中的主线程被标记为使用单线程单元(STAThread)。
我看过西门子论坛,运气不佳。
错误是什么意思,我该如何解决?
错误现已修复。
这是由 Windows 个与 Meltdown/Spectre 相关的更新补丁引起的。这些补丁与 RTX 2009 不兼容,导致它停止工作。
卸载补丁后,系统恢复正常
https://confluence.merging.com/pages/viewpage.action?pageId=25035234