У меня есть система с интерфейсом Windows COM, так что внешние приложения могут подключаться к нему, и она имеет следующие детали
Интерфейс: InterfaceName
Флаги: (1234) Двойная автоматическая доставка
GUID: {ABCDEFG-ABCD-1234-ABCD-ABCDE1234}
Я хотел бы подключиться к этому интерфейсу через приложение Java Spring, оно отправит запрос этому интерфейсу и обработает ответ.
Я пытался использовать следующий код
ActiveXComponent mf = new ActiveXComponent("ApplicationName.InterfaceName");
try {
Dispatch f2 = mf.QueryInterface(" {ABCDEFG-ABCD-1234-ABCD-ABCDE1234} ");
Dispatch.put(f2, 201, new Variant("Request String"));
} catch (Exception e) {
e.printStackTrace();
}
Исполняемый файл открывается, но он не делает то, что я хочу. Я хочу сделать следующее.
Как мне убедиться, что мой интерфейс зарегистрирован, я вижу его
под
Computer\HKEY_CLASSES_ROOT\ApplicationName.InterfaceName
Использование ActiveXComponent
открывает экземпляр приложения, который не требуется. Приложение уже запущено.
вызов интерфейса с диспид.
Получить ответ от вызова / ввода / вызова (который подходит лучше всего)
для моего спроса? ) и обработайте ответ.
Я впервые работаю с JAVA-COM_Interface и не имею большого опыта в этом. Кроме того, я мог найти очень мало примеров для этого в Интернете, и я попытался преобразовать пример, который я нашел для своего проекта, также я не уверен, что подход, который я использую для вызова интерфейса, правильный или нет, я был бы рад, если вы можете помочь!