2013-10-11 18 views
0

У меня есть простая форма окна, которая имеет пользовательский элемент управления COM. Этот пользовательский элемент управления COM имеет метод COM «GetNode». Я хочу проверить этот вызов функции с помощью autohotkey.Способы вызова Autohotkey для управления

Run "C:\AHC_Exploring\Project1.exe" 
WinWaitActive, Form1, , 2 
if ErrorLevel 
{ MsgBox, WinWait timed out. 
    return 
} 

ObjUerControl := ; // Need to know correct get COM object method 

lResult = Object.GetNodeId(2) 

MsgBox %lResult% 

Return 
+2

Я довольно уверен, что методы, которые этот объект имеет (например, «GetNodeId»), недоступны для сценария autohotkey, поэтому этот подход не будет работать. – 576i

+1

Правда, я это понял. Позже я переключился на VBScript и в приложении, я разоблачил объекты, которые необходимо автоматизировать. Теперь его легко. Спасибо за ваш ответ. – Naresh

+0

Также должен быть один способ, который мы, возможно, не изучали. Просто из-за отсутствия времени я не изучаю. GetNodeId - это функция COM, а ObjUserControl - пользовательский контроль COM. AutoHotKey позволяет создавать объекты CreateObject, а в этом созданном объекте он позволяет вызывать функцию GetNodeId. В случае, вместо того, чтобы создавать, мы должны знать дескриптор Get существующего COM-объекта. – Naresh

ответ

0

Вы можете использовать ComObjActive, чтобы получить дескриптор COM-объекта, который уже запущен.

Смежные вопросы