Столкнулся с такой проблемой когда надо послать определённую кнопку в программу (будем честны в игру) в итоге обязательно надо активировать данное окно.
то есть если я играй в 2 окна и на втором персе HP мало то банку "F1" это окно не нажмёт пока не с активируется а это мешает другому окну и постоянно приходится тыкать по окнам
Можно ли доработать мой код:

Код:
Add(MainForm,2953706,245,154)
{
 Width=269
 Height=148
 Caption="Наше Окно"
 link(onCreate,14336614:In,[])
}
Add(KeyEvent,15885383,749,553)
{
 link(Handle,4487242:Var2,[])
 link(Code,12094807:Text,[(762,513)(804,513)])
}
Add(Edit,4608406,833,224)
{
 Left=120
 Top=15
 Width=55
 Enabled=1
 Text=""
 Point(doVisible)
}
Add(LineBreakEx,9472770,686,161)
{
 Caption="OkHDL"
 Type=3
 link(_Data,11447296:Var3,[(692,152)])
}
Add(WinEnum,2417942,532,105)
{
 Point(GetActiveWindow)
 Point(ClassName)
 Point(onEnumChildWindows)
 Point(ParentHandle)
 Point(doEnumChildWindows)
 link(onFindWindow,2714055:doEvent1,[])
 link(Caption,9021489:String,[(538,93)(515,93)(515,237)(538,237)])
}
Add(ComboBox,9021489,525,189)
{
 Left=15
 Top=15
 Width=105
 Height=21
 Text="Выбор окна"
 Point(doVisible)
 link(onClick,2417942:doFind,[(581,202)(581,246)(504,246)(504,118)])
}
Add(WinInfo,16337723,602,182)
{
 Point(ProcessID)
 link(onWinInfo,9070798:doData,[(676,188)(676,251)])
 link(Handle,11447296:Var2,[(608,173)(538,173)])
}
Add(GetDataEx,11447296,532,147)
{
 link(Data,2417942:Handle,[])
}
Add(Hub,2714055,574,105)
{
 OutCount=3
 link(onEvent1,9021489:doAdd,[(600,111)(600,153)(520,153)(520,195)])
 link(onEvent2,16337723:doWinInfo,[(595,118)(595,188)])
}
Add(Convertor,10580909,770,224)
{
 Mode=6
 link(onResult,4608406:doText,[])
}
Add(DoData,9070798,693,245)
{
 link(onEventData,10580909:doConvert,[(747,251)(747,230)])
 link(Data,16337723:ProcessID,[(699,229)(622,229)])
}
Add(InfoTip,3812069,441,84)
{
 Info=#15:Нахождение окна|
 Width=533
 Height=207
}
Add(Hub,6082869,700,546)
{
 OutCount=3
 PColor(onEvent1,5592320)
 link(onEvent1,1111080:doActive,[(726,552)(726,513)(493,513)(493,454)])
 link(onEvent2,15885383:doPress,[])
}
Add(WinTools,1111080,693,434)
{
 Point(doCaption)
 link(Handle,10622698:Var2,[])
}
Add(LineBreakEx,14739218,623,364)
{
 Caption="OkHDL"
 Type=2
}
Add(GetDataEx,10622698,693,385)
{
 Angle=3
 link(Data,14739218:getVar,[(629,390)])
}
Add(DoData,8144611,651,546)
{
 link(onEventData,6082869:doEvent1,[])
 link(Data,4487242:Var1,[(657,488)])
}
Add(GetDataEx,4487242,749,483)
{
 link(Data,10622698:Var3,[(755,390)])
}
Add(Hub,14179298,469,105)
{
 InCount=2
 link(onEvent1,9021489:doClear,[(504,111)(504,202)])
 link(onEvent2,2417942:doEnum,[(507,118)(507,111)])
}
Add(LineBreak,3317812,399,105)
{
 Caption="Start"
 link(Out,14179298:doEvent2,[(456,111)(456,118)])
 Primary=[14336614,-77,63]
}
Add(Button,4121468,581,546)
{
 Left=20
 Top=65
 Width=100
 Caption="Послать в окно"
 link(onClick,8144611:doData,[])
}
Add(Edit,12094807,798,441)
{
 Left=140
 Top=65
 Text="32"
}
Add(Label,9092746,238,98)
{
 Left=135
 Top=45
 Width=57
 Height=17
 Caption="32-Пробел"
}
Add(InfoTip,9918141,476,427)
{
 Info=#16:Убрать эту связь|
 Width=113
 Height=102
}

Пробовал оправлять команду (кнопку) через сообщение но так и не разобрался принцип как оно работает

Отредактировано Phenix (2025-07-25 13:23:28)