Я пытаюсь вызвать 32-битную DLL из 64-битного Matlab. Я решил использовать Labview, 32-разрядный и это мастер импорта DLL и вызова Labview через ActiveX. Я вынужден пойти по этому пути, используя 32-битную DLL, поставляемую поставщиком инструментов.
Если у меня установлена 64-битная версия Labview, я могу использовать строку Matlab e=actxserver('LabVIEW.Application');
, она отлично загружается
Если у меня установлена (только) 32-разрядная версия Labview, строка e=actxserver('LabVIEW.Application');
завершается с сообщением «Ошибка создания сервера: система не может найти указанный файл».
Однако, если я запустите 32-битный исполняемый файл Labview, чтобы он работал, строка Matlab e=actxserver('LabVIEW.Application');
работает нормально, и я могу вызвать VI, установить параметры, запустить VI из Matlab и так далее.
Итак, Matlab не может запустить Labview, но может «подключиться» к работающему в данный момент экземпляру Labview. Может ли кто-то понять и объяснить, что происходит?
С уважением, Ларс Гранлеф