Код ошибки 2 при вызове Siemens WinAC ODK Open () - PullRequest
0 голосов
/ 26 февраля 2019

После обновления Windows / системы мое приложение (.NET 4.7.1 на Win 7) для управления приводом больше не работает.Я использую Siemens WinAC ODK 4.2 в режиме SMX для управления ПЛК, подключенным к приводам Festo.

Теперь я получаю код ошибки 2 при вызове S7SMX_Open () (через взаимодействие) в S7smxx.dll.Этот код ошибки определен как "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).

Я посмотрел форумы Siemens без особой удачи.

Что означает ошибка и как ее исправить?

1 Ответ

0 голосов
/ 05 марта 2019

Ошибка теперь исправлена.

Она была вызвана несколькими обновлениями Windows Update, связанными с Meltdown / Spectre.Эти исправления несовместимы с RTX 2009, из-за чего они перестают работать.

После удаления исправлений система снова работает.

https://confluence.merging.com/pages/viewpage.action?pageId=25035234

...