Code: Select all
AhkSelf(){
if a_isdll
gpa:=func("MemoryGetProcAddress"),lib:=A_MemoryModule
else
{
#DllImport, gpa,GetProcAddress,ptr,0,astr,0
gpa:=func("gpa"),lib:=GetModuleHandle()
}
return {func:DynaCall(gpa.call(lib,"ahkFunction"),"s==sssssssssssui","","","","","","","","","","","",A_ThreadID)
,post:DynaCall(gpa.call(lib,"ahkPostFunction"),"i==sssssssssssui","","","","","","","","","","","",A_ThreadID)
,add:DynaCall(gpa.call(lib,"addScript"),"ut==siui","",0,A_ThreadID)
,get:DynaCall(gpa.call(lib,"ahkgetvar"),"s==suiui","",0,A_ThreadID)
,set:DynaCall(gpa.call(lib,"ahkassign"),"i==ssui","","",A_ThreadID)
,sub:DynaCall(gpa.call(lib,"ahkLabel"),"ui==suiui","",0,A_ThreadID)
,exec:DynaCall(gpa.call(lib,"ahkExec"),"ut==sui","",A_ThreadID)
,pause:DynaCall(gpa.call(lib,"ahkPause"),"ui==sui","",A_ThreadID)
,ready:DynaCall(gpa.call(lib,"ahkReady"),"ui==ui",A_ThreadID)}
}