Вверх ↑
Этот топик читают: Гость
Ответов: 288
Рейтинг: 4
#1: 2009-10-10 22:44:55 ЛС | профиль | цитата
Возможно-ли в созданной на HiAsm форме или в окне открыть и управлять другой программой.
К примеру Total Commander-ом.
карма: 2

0
Ответов: 175
Рейтинг: 10
#2: 2009-10-11 10:07:30 ЛС | профиль | цитата
А конкретней : ты в СВОЮ форму хочешь вставить тотал?
для начала нужно знать класс окна тотала и заголовок тотала
для этого можно использовать сканер окон (типа InqSoft Window Scanner) - могу выложить в файлообмен
потом ищешь handle окна компонентом ПоискОкна(FindWindow)
после того как найден handle с окном можно делать практически все что угодно

У меня получилось с винампом - я перехватил его видеоокно и вставил в свою форму.


карма: 1

0
Ответов: 288
Рейтинг: 4
#3: 2009-10-12 11:49:29 ЛС | профиль | цитата
a0005d26f, спасибо тебе огромное за ответ. К сожалению небыло возможности влесть на форум раньше (были проблеммы с выходом в НЭТ). a0005d26f, выложи пожалуйста всё что для этого нужно и покажи на схемке как ты всё это проделал.
Заранее очень тебе благодарен.
карма: 2

0
Ответов: 175
Рейтинг: 10
#4: 2009-10-12 12:11:15 ЛС | профиль | цитата
сам новичок, но чем смогу-помогу

а вообще затея не благодарная...



ОТПРАВИЛ - лежит в Файлообмене - вверху светлосерая ссылка

а вот код простой программы для понимания как управлять окнами


Add(MainForm,2953706,28,70)
{
Width=1085
Height=864
}
Add(Button,3151941,175,315)
{
Left=25
Top=150
Width=125
Caption="Развернуть"
link(onClick,16067421:doData,[])
}
Add(Button,14876478,175,357)
{
Left=25
Top=175
Width=125
Caption="Свернуть"
link(onClick,10961158:doData,[])
}
Add(Button,7160369,308,329)
{
Left=25
Top=295
Width=125
Caption="назначить Popup"
link(onClick,16264469:doPopup,[])
}
Add(Button,368980,77,273)
{
Left=25
Top=330
Width=125
Caption=" Доступно для мыши"
link(onClick,15304368:doData,[])
}
Add(Button,810742,77,224)
{
Left=25
Top=355
Width=125
Caption="Недоступно для мыши"
link(onClick,971698:doData,[])
}
Add(Button,9456870,889,679)
{
Left=65
Top=390
Width=45
Height=30
Caption="Вверх"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,11513718:doTimer,[])
link(onMouseUp,11513718:doStop,[])
}
Add(Button,16261992,889,805)
{
Left=65
Top=460
Width=45
Height=30
Caption="Вниз"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,16271041:doTimer,[])
link(onMouseUp,16271041:doStop,[])
}
Add(Button,15833109,945,742)
{
Left=20
Top=425
Width=45
Height=30
Caption="Лево"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,15236010:doTimer,[])
link(onMouseUp,15236010:doStop,[])
}
Add(Button,13550637,847,742)
{
Left=110
Top=425
Width=45
Height=30
Caption="Право"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,240582:doTimer,[])
link(onMouseUp,240582:doStop,[])
}
Add(Button,5444002,469,518)
{
Left=65
Top=510
Width=45
Height=30
Caption="Выс+"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,8134177:doTimer,[])
link(onMouseUp,8134177:doStop,[])
}
Add(Button,12418279,469,644)
{
Left=65
Top=580
Width=45
Height=30
Caption="Выс-"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,7651234:doTimer,[])
link(onMouseUp,7651234:doStop,[])
}
Add(Button,3354805,413,581)
{
Left=20
Top=545
Width=45
Height=30
Caption="Шир-"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,8076392:doTimer,[])
link(onMouseUp,8076392:doStop,[])
}
Add(Button,3116288,525,581)
{
Left=110
Top=545
Width=45
Height=30
Caption="Шир+"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,5589959:doTimer,[])
link(onMouseUp,5589959:doStop,[])
}
Add(Edit,11774155,420,14)
{
Left=25
Top=10
Width=375
Height=25
Text="Введи сюда имя класса окна Total и нажми "Найти окно""
}
Add(Button,15646363,238,483)
{
Left=25
Top=210
Width=125
Caption="На весь экран"
link(onClick,16264469:doMaximize,[(384,489)(384,370)])
}
Add(Button,9301419,308,385)
{
Left=25
Top=235
Width=125
Caption="Нормальный размер"
link(onClick,16264469:doNormal,[(378,391)(378,363)])
}
Add(BitBtn,6014249,322,119)
{
Left=25
Top=75
Width=125
Height=60
Color=15793151
Font=[MS Sans Serif,14,1,255,1]
Caption="Найти окно"
link(onClick,15003299:doFind,[])
}
Add(FindWindow,15003299,413,119)
{
SkipParam=1
link(onFind,2014827:doEvent1,[])
link(ClassName,11774155:Text,[])
}
Add(Beep,7371227,693,126)
{
}
Add(WinTools,16264469,413,322)
{
Point(doEnable)
Point(doNormal)
Point(doMaximize)
Point(doMinimize)
Point(doAlphaBlendValue)
link(Handle,4792998:Var2,[])
}
Add(SizeWindow,4400365,707,497)
{
link(Handle,12526784:Var2,[])
}
Add(GetDataEx,4792998,413,231)
{
link(Data,15003299:Handle,[])
}
Add(PosWindow,3074010,1120,609)
{
link(Handle,12526784:Var3,[(1126,236)])
}
Add(GetDataEx,12526784,707,231)
{
Angle=3
link(Data,4792998:Var3,[])
}
Add(DoData,971698,133,224)
{
Data=Integer(0)
link(onEventData,1015544:doWork2,[])
}
Add(DoData,15304368,133,273)
{
Data=Integer(1)
link(onEventData,1015544:doWork3,[(193,279)])
}
Add(HubEx,1015544,189,224)
{
link(onEvent,16264469:doEnable,[(380,230)(380,356)])
}
Add(InfoTip,16256705,427,196)
{
Info=#149:После нахождения окна главным параметром для управления им является handle - его временный "номер" в системе - он и передается для оперирования окном|
Font=[MS Sans Serif,8,1,0,1]
Width=526
}
Add(InfoTip,8411785,658,7)
{
Info=#111:Если правильно ввел параметры окна, то после нажатия кнопки "найти окно" Найденный Handle будет отличен от нуля|
Font=[MS Sans Serif,8,1,0,1]
Width=155
Height=102
}
Add(DoData,10961158,224,357)
{
Data=Integer(0)
link(onEventData,15556739:doWork3,[(284,363)])
}
Add(DoData,16067421,224,315)
{
Data=Integer(1)
link(onEventData,15556739:doWork2,[])
}
Add(HubEx,15556739,280,315)
{
link(onEvent,16264469:doVisible,[(394,321)(394,328)])
}
Add(Button,14901635,238,525)
{
Left=25
Top=260
Width=125
Caption="Минимизировать"
link(onClick,16264469:doMinimize,[(394,531)(394,377)])
}
Add(Counter,14764761,728,581)
{
Max=1000
Point(doValue)
link(onNext,4400365:doWidth,[(772,587)(772,545)(695,545)(695,503)])
}
Add(Counter,2203437,728,630)
{
Max=1000
Point(doValue)
link(onNext,4400365:doHeight,[(785,636)(785,571)(684,571)(684,510)])
}
Add(Counter,14790914,1155,707)
{
Max=1000
Point(doValue)
link(onNext,3074010:doLeft,[(1203,713)(1203,664)(1108,664)(1108,615)])
}
Add(Counter,8714032,1155,763)
{
Max=1000
Point(doValue)
link(onNext,3074010:doTop,[(1215,769)(1215,692)(1098,692)(1098,622)])
}
Add(DoData,13623092,651,756)
{
link(onEventData,14764761:doValue,[(705,762)(705,608)])
link(Data,4400365:CurrentHeight,[(657,724)(720,724)])
}
Add(DoData,9352874,665,805)
{
link(onEventData,2203437:doValue,[(713,811)(713,657)])
link(Data,4400365:CurrentWidth,[(671,667)(713,667)])
}
Add(DoData,3866381,1064,882)
{
link(onEventData,14790914:doValue,[(1108,888)(1108,734)])
link(Data,3074010:CurrentLeft,[(1070,762)(1126,762)])
}
Add(DoData,13178975,1078,931)
{
link(onEventData,8714032:doValue,[(1115,937)(1115,790)])
link(Data,3074010:CurrentTop,[(1084,786)(1133,786)])
}
Add(LineBreakEx,1217515,595,147)
{
@Color=22015
Caption="SetCounters"
}
Add(Hub,2014827,553,119)
{
OutCount=3
link(onEvent1,8425383:doText,[(590,125)(590,13)])
link(onEvent2,7371227:doBeep,[])
link(onEvent3,1217515:doWork,[(581,139)(581,153)])
}
Add(LineBreakEx,13289518,511,756)
{
@Color=22015
Caption="SetCounters"
Type=1
link(OnEvent,7539474:doEvent1,[])
}
Add(Hub,7539474,602,756)
{
OutCount=4
link(onEvent1,13623092:doData,[])
link(onEvent2,9352874:doData,[(640,769)(640,811)])
link(onEvent3,3866381:doData,[(631,776)(631,888)])
link(onEvent4,13178975:doData,[(625,783)(625,937)])
}
Add(Timer,5589959,567,588)
{
Interval=5
Enable=1
link(onTimer,14764761:doNext,[(667,594)(667,587)])
}
Add(Timer,8076392,455,588)
{
Interval=5
Enable=1
link(onTimer,14764761:doPrev,[])
}
Add(Timer,8134177,518,525)
{
Interval=5
Enable=1
link(onTimer,2203437:doNext,[(639,531)(639,636)])
}
Add(Timer,7651234,511,651)
{
Interval=5
Enable=1
link(onTimer,2203437:doPrev,[(639,657)(639,643)])
}
Add(Label,7012245,544,7)
{
Left=25
Top=45
Width=133
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption="Найденый Handle"
}
Add(Label,8425383,609,7)
{
Left=175
Top=45
Width=97
Height=17
Color=-16777196
Caption="0"
AutoSize=1
}
Add(Timer,11513718,938,686)
{
Interval=5
Enable=1
link(onTimer,8714032:doPrev,[(1062,692)(1062,776)])
}
Add(Timer,240582,889,749)
{
Interval=5
Enable=1
link(onTimer,14790914:doNext,[(1038,755)(1038,713)])
}
Add(Timer,15236010,994,749)
{
Interval=5
Enable=1
link(onTimer,14790914:doPrev,[(1094,755)(1094,720)])
}
Add(Timer,16271041,931,812)
{
Interval=5
Enable=1
link(onTimer,8714032:doNext,[(1062,818)(1062,769)])
}
Add(TrackBar,1996904,406,448)
{
Left=10
Top=655
Width=145
Height=35
Max=255
Position=255
link(onPosition,16264469:doAlphaBlendValue,[(450,454)(450,419)(401,419)(401,384)])
}
Add(Label,11821997,259,217)
{
Left=50
Top=635
Width=76
Height=17
Caption="Прозрачность"
}


1.Запускаешь Тотаl
2.Запускаешь InqSoft Window Scanner и тянешь мишень на шапку окна тотал
3.запускаешь мой код в HiAsme на выполнение
4.Из InqSoft Window Scanner вводишь имя класса Total в поле и рулишь окном...

карма: 1

0
Ответов: 288
Рейтинг: 4
#5: 2009-10-13 00:51:57 ЛС | профиль | цитата
a0005d26f, ещо раз СПАСИБО, буду разбираться.
карма: 2

0
Ответов: 175
Рейтинг: 10
#6: 2009-10-13 15:24:30 ЛС | профиль | цитата
Обращайся, а если действительно помогло,то я не откажусь от плюса в рейтинге
карма: 1

0
Разработчик
Ответов: 4698
Рейтинг: 426
#7: 2009-10-13 15:26:42 ЛС | профиль | цитата
Нет, лучшее спасибо, это когда у тебя на душе легко после этого спасибо и спасибо искреннее
Не превращаем спасибо в рейтинг, рейтинг нужен только для форума
карма: 10
1
Голосовали:Byuik
Ответов: 4641
Рейтинг: 334
#8: 2009-10-13 15:27:16 ЛС | профиль | цитата
a0005d26f писал(а):
.Запускаешь InqSoft Window Scanner

а без стороннего ПО ни как что ли?
имя класса можно найти без проблемм.
------------ Дoбавленo в 15.45:
переделывать не стал, но исправил. далее сами

Add(MainForm,9807630,35,49)
{
Width=1085
Height=864
link(onCreate,9315695:doEnum,[])
}
Add(Button,3151941,147,308)
{
Left=25
Top=150
Width=125
Caption="Развернуть"
link(onClick,16067421:doData,[])
}
Add(Button,14876478,147,350)
{
Left=25
Top=175
Width=125
Caption="Свернуть"
link(onClick,10961158:doData,[])
}
Add(Button,7160369,280,322)
{
Left=25
Top=295
Width=125
Caption="назначить Popup"
link(onClick,16264469:doPopup,[])
}
Add(Button,368980,49,266)
{
Left=25
Top=330
Width=125
Caption=" Доступно для мыши"
link(onClick,15304368:doData,[])
}
Add(Button,810742,49,217)
{
Left=25
Top=355
Width=125
Caption="Недоступно для мыши"
link(onClick,971698:doData,[])
}
Add(Button,9456870,861,672)
{
Left=65
Top=390
Width=45
Height=30
Caption="Вверх"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,11513718:doTimer,[])
link(onMouseUp,11513718:doStop,[])
}
Add(Button,16261992,861,798)
{
Left=65
Top=460
Width=45
Height=30
Caption="Вниз"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,16271041:doTimer,[])
link(onMouseUp,16271041:doStop,[])
}
Add(Button,15833109,917,735)
{
Left=20
Top=425
Width=45
Height=30
Caption="Лево"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,15236010:doTimer,[])
link(onMouseUp,15236010:doStop,[])
}
Add(Button,13550637,819,735)
{
Left=110
Top=425
Width=45
Height=30
Caption="Право"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,240582:doTimer,[])
link(onMouseUp,240582:doStop,[])
}
Add(Button,5444002,441,511)
{
Left=65
Top=510
Width=45
Height=30
Caption="Выс+"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,8134177:doTimer,[])
link(onMouseUp,8134177:doStop,[])
}
Add(Button,12418279,441,637)
{
Left=65
Top=580
Width=45
Height=30
Caption="Выс-"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,7651234:doTimer,[])
link(onMouseUp,7651234:doStop,[])
}
Add(Button,3354805,385,574)
{
Left=20
Top=545
Width=45
Height=30
Caption="Шир-"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,8076392:doTimer,[])
link(onMouseUp,8076392:doStop,[])
}
Add(Button,3116288,497,574)
{
Left=110
Top=545
Width=45
Height=30
Caption="Шир+"
Point(onMouseDown)
Point(onMouseUp)
link(onMouseDown,5589959:doTimer,[])
link(onMouseUp,5589959:doStop,[])
}
Add(Button,15646363,210,476)
{
Left=25
Top=210
Width=125
Caption="На весь экран"
link(onClick,16264469:doMaximize,[(356,482)(356,363)])
}
Add(Button,9301419,280,378)
{
Left=25
Top=235
Width=125
Caption="Нормальный размер"
link(onClick,16264469:doNormal,[(350,384)(350,356)])
}
Add(Beep,7371227,665,119)
{
}
Add(WinTools,16264469,385,315)
{
Point(doEnable)
Point(doNormal)
Point(doMaximize)
Point(doMinimize)
Point(doAlphaBlendValue)
link(Handle,4792998:Var2,[])
}
Add(SizeWindow,4400365,679,490)
{
link(Handle,12526784:Var2,[])
}
Add(GetDataEx,4792998,385,224)
{
link(Data,9315695:Handle,[(391,160)(104,160)])
}
Add(PosWindow,3074010,1092,602)
{
link(Handle,12526784:Var3,[(1098,229)])
}
Add(GetDataEx,12526784,679,224)
{
Angle=3
link(Data,4792998:Var3,[])
}
Add(DoData,971698,105,217)
{
Data=Integer(0)
link(onEventData,1015544:doWork2,[])
}
Add(DoData,15304368,105,266)
{
Data=Integer(1)
link(onEventData,1015544:doWork3,[(165,272)])
}
Add(HubEx,1015544,161,217)
{
link(onEvent,16264469:doEnable,[(352,223)(352,349)])
}
Add(InfoTip,16256705,399,189)
{
Info=#149:После нахождения окна главным параметром для управления им является handle - его временный "номер" в системе - он и передается для оперирования окном|
Font=[MS Sans Serif,8,1,0,1]
Width=526
}
Add(InfoTip,8411785,630,0)
{
Info=#111:Если правильно ввел параметры окна, то после нажатия кнопки "найти окно" Найденный Handle будет отличен от нуля|
Font=[MS Sans Serif,8,1,0,1]
Width=155
Height=102
}
Add(DoData,10961158,196,350)
{
Data=Integer(0)
link(onEventData,15556739:doWork3,[(256,356)])
}
Add(DoData,16067421,196,308)
{
Data=Integer(1)
link(onEventData,15556739:doWork2,[])
}
Add(HubEx,15556739,252,308)
{
link(onEvent,16264469:doVisible,[(366,314)(366,321)])
}
Add(Button,14901635,210,518)
{
Left=25
Top=260
Width=125
Caption="Минимизировать"
link(onClick,16264469:doMinimize,[(366,524)(366,370)])
}
Add(Counter,14764761,700,574)
{
Max=1000
Point(doValue)
link(onNext,4400365:doWidth,[(744,580)(744,538)(667,538)(667,496)])
}
Add(Counter,2203437,700,623)
{
Max=1000
Point(doValue)
link(onNext,4400365:doHeight,[(757,629)(757,564)(656,564)(656,503)])
}
Add(Counter,14790914,1127,700)
{
Max=1000
Point(doValue)
link(onNext,3074010:doLeft,[(1175,706)(1175,657)(1080,657)(1080,608)])
}
Add(Counter,8714032,1127,756)
{
Max=1000
Point(doValue)
link(onNext,3074010:doTop,[(1187,762)(1187,685)(1070,685)(1070,615)])
}
Add(DoData,13623092,623,749)
{
link(onEventData,14764761:doValue,[(677,755)(677,601)])
link(Data,4400365:CurrentHeight,[(629,717)(692,717)])
}
Add(DoData,9352874,637,798)
{
link(onEventData,2203437:doValue,[(685,804)(685,650)])
link(Data,4400365:CurrentWidth,[(643,660)(685,660)])
}
Add(DoData,3866381,1036,875)
{
link(onEventData,14790914:doValue,[(1080,881)(1080,727)])
link(Data,3074010:CurrentLeft,[(1042,755)(1098,755)])
}
Add(DoData,13178975,1050,924)
{
link(onEventData,8714032:doValue,[(1087,930)(1087,783)])
link(Data,3074010:CurrentTop,[(1056,779)(1105,779)])
}
Add(LineBreakEx,1217515,567,140)
{
@Color=22015
Caption="SetCounters"
}
Add(Hub,2014827,525,112)
{
OutCount=3
link(onEvent1,8425383:doText,[(562,118)(562,6)])
link(onEvent2,7371227:doBeep,[])
link(onEvent3,1217515:doWork,[(553,132)(553,146)])
}
Add(LineBreakEx,13289518,483,749)
{
@Color=22015
Caption="SetCounters"
Type=1
link(OnEvent,7539474:doEvent1,[])
}
Add(Hub,7539474,574,749)
{
OutCount=4
link(onEvent1,13623092:doData,[])
link(onEvent2,9352874:doData,[(612,762)(612,804)])
link(onEvent3,3866381:doData,[(603,769)(603,881)])
link(onEvent4,13178975:doData,[(597,776)(597,930)])
}
Add(Timer,5589959,539,581)
{
Interval=5
Enable=1
link(onTimer,14764761:doNext,[(639,587)(639,580)])
}
Add(Timer,8076392,427,581)
{
Interval=5
Enable=1
link(onTimer,14764761:doPrev,[])
}
Add(Timer,8134177,490,518)
{
Interval=5
Enable=1
link(onTimer,2203437:doNext,[(611,524)(611,629)])
}
Add(Timer,7651234,483,644)
{
Interval=5
Enable=1
link(onTimer,2203437:doPrev,[(611,650)(611,636)])
}
Add(Label,8425383,581,0)
{
Left=175
Top=45
Width=97
Height=17
Color=-16777196
Caption="0"
AutoSize=1
}
Add(Timer,11513718,910,679)
{
Interval=5
Enable=1
link(onTimer,8714032:doPrev,[(1034,685)(1034,769)])
}
Add(Timer,240582,861,742)
{
Interval=5
Enable=1
link(onTimer,14790914:doNext,[(1010,748)(1010,706)])
}
Add(Timer,15236010,966,742)
{
Interval=5
Enable=1
link(onTimer,14790914:doPrev,[(1066,748)(1066,713)])
}
Add(Timer,16271041,903,805)
{
Interval=5
Enable=1
link(onTimer,8714032:doNext,[(1034,811)(1034,762)])
}
Add(TrackBar,1996904,378,441)
{
Left=10
Top=655
Width=145
Height=35
Max=255
Position=255
link(onPosition,16264469:doAlphaBlendValue,[(422,447)(422,412)(373,412)(373,377)])
}
Add(Label,11821997,231,210)
{
Left=50
Top=635
Width=76
Height=17
Caption="Прозрачность"
}
Add(WinEnum,9315695,98,63)
{
Point(ClassName)
link(onFindWindow,1808726:doAdd,[])
}
Add(ListBox,1808726,175,63)
{
Left=330
Top=80
Width=295
Height=480
DataType=1
link(onClick,14788148:doEvent1,[])
}
Add(Hub,14788148,224,70)
{
link(onEvent1,9315695:doFind,[(253,76)(253,137)(86,137)(86,76)])
link(onEvent2,2014827:doEvent1,[(446,83)(446,118)])
}


карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 175
Рейтинг: 10
#9: 2009-10-13 15:51:27 ЛС | профиль | цитата
Assasin, знал что будете порицать... поэтому немножко исправил. Ну мозолит глаза этот ноль.


Ravilr, можно, но просто удобней INQSoft

приведу пример - это все равно что писать на делфи когда под рукой Hiasm
карма: 1

0
Ответов: 4641
Рейтинг: 334
#10: 2009-10-13 15:53:07 ЛС | профиль | цитата
a0005d26f писал(а):
приведу пример - это все равно что писать на делфи когда под рукой Hiasm

немного не догнал. не понял высказывание. Но схему тебе привел. Посмотри....
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 175
Рейтинг: 10
#11: 2009-10-13 15:56:07 ЛС | профиль | цитата
я имею ввиду, что если есть готовая полноценная утилита, зачем тратить время на построение поиска handlе, если это время можно потратить на саму задачу . А код почитаю все-таки...
карма: 1

0
Ответов: 4641
Рейтинг: 334
#12: 2009-10-13 16:04:49 ЛС | профиль | цитата
a0005d26f писал(а):
есть готовая полноценная утилита

ну не знай.....решение в пару элементах......и зачем мне полноценная утилита
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 175
Рейтинг: 10
#13: 2009-10-13 16:25:17 ЛС | профиль | цитата
Посмотрел код. Идею понял.
Для общего развития годиться.


Но все же на вкус и цвет...
карма: 1

0
Ответов: 4641
Рейтинг: 334
#14: 2009-10-13 16:35:09 ЛС | профиль | цитата
a0005d26f писал(а):
Но все же на вкус и цвет...

вот когда сделаешь программу для кого нибудь и потом еще в ридми напишешь.....для работы с программой необходимо скачать еще программу..
посмотрим что тебе скажут про вкус и цвет.
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 175
Рейтинг: 10
#15: 2009-10-13 17:10:46 ЛС | профиль | цитата
неее - если я буду рисовать программу для поиска окон то ридми не будет

просто человек попросил показать как управлять. я и показал, как делаю это я

а перебор окон - это немного другая тема форума, хотя и немаловажная
карма: 1

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)