2013-10-11 2 views
0

COM 사용자 정의 컨트롤이있는 간단한 Windows 폼이 있습니다. 이 COM 사용자 정의 컨트롤에는 메서드 "GetNode"COM 메서드가 있습니다. 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")가 오토 핫키 스크립트의 범위 안에 있지 않기 때문에이 접근법이 작동하지 않을 것입니다. – 576i

+1

사실, 이해했습니다. 나중에 VBScript로 전환하고 응용 프로그램에서 자동화해야하는 객체를 노출했습니다. 자, 그 쉬운. 당신의 답변에 감사드립니다. – Naresh

+0

또한 우리가 탐구하지 못한 한 가지 방법이 있어야합니다. 시간이 비었을 때 나는 탐험을하고 있지 않습니다. GetNodeId는 COM 함수이고 ObjUserControl은 COM 사용자 컨트롤입니다. AutoHotKey는 CreateObject를 허용하며, Created 객체에서는 GetNodeId 함수를 호출 할 수 있습니다. 이 경우 생성하는 대신 기존 COM 객체 가져 오기 핸들을 알아야합니다. – Naresh

답변

0

ComObjActive를 사용하면 이미 실행중인 COM 개체에 대한 핸들을 가져올 수 있습니다.