Спасибо за схемку. Но по большему счету интересует стандартное решение которое потом все могли бы использовать в своих проектах.
Поэтому в начале темы писали как авторизоватся в том случае если выскакивает окошко ввода логина и парлья.
а отправка через параметры form action... в данном контексте не представляет интереса, Так как для этого уже есть компоненты POST и URL
------------ Дoбавленo:
Так вот после того как в окошко вводится логин и пароль GET заголовок содержит в конце параметр
Authorization: Basic c2dUcjZ3Nl8xMzcyOlJLY1RDMmEwYWW=
Навереное это есть пара логин и пароль в кодировке Base64!
Готово, это конечно не высший пилотаж, но собрал из разных кусочков примеров.
Думаю кому нужен был такой инструмент доведуть до ума и не забудут поделится схемой.
Например что бы настройки хранились в ini и т.п.
использован компонент RegExp, на форуме он есть найдете поиском, первая ссылка
#sha Add(Edit,11416744,371,49) { Left=5 Top=5 Width=405 Ctl3D=1 Text="http://w6.spacegate.com.ua/stats/" } Add(MultiElementEx,11397624,441,224) { link(onRead,9225825:doAdd,[]) link(onConnect,9225825:doClear,[]) link(onDisconnect,14889352:doEvent1,[(495,244)(495,289)]) link(Url,11416744:Text,[(447,152)(377,152)]) link(Accept,15578446:Text,[(454,139)(419,139)]) link(Accept-Language,11497402:Text,[]) link(User-Agent,6925470:Text,[(468,137)(503,137)]) link(Connection,5606946:Text,[(475,152)(545,152)]) link(Str1,13110377:Value,[(482,208)(510,208)]) } BEGIN_SDK Add(EditMultiEx,14273051,21,21) { WorkCount=#25:doGen=Генерировать запрос|23:doSend=Отправить запрос|13:doEvent1=Тест| EventCount=#28:onRead=Приём данных из порта|71:onConnect=Событие происходит при успешном соединении клиента с сервером|67:onDisconnect=Событие происходит при отсоединении клиента от сервера| VarCount=#25:Host IP=содержит IP хоста|24:SendData=Содержит запрос|65:Active=Содержит 1 если соединение активно, и 0 в противном случае| DataCount=#48:Url=Вместе с http:// пример http://www.google.lv|25:Accept=Например text/html|27:Accept-Language=например ru|70:User-Agent=Например Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)|40:Connection=Например Close или Keep-Alive|10:Str1=Логин| Width=860 Height=445 link(doGen,1184221:doEvent1,[(24,27)(24,195)]) link(doSend,7173150:doEvent1,[(24,34)(24,377)]) link(Host IP,15483361:Var1,[(27,317)]) link(SendData,2671981:Var1,[(34,324)]) link(Active,13954329:Active,[(41,434)(580,434)]) } Add(FormatStr,15866197,238,196) { DataCount=1 Mask="GET %1 HTTP/1.1" link(onFString,5303860:doEvent1,[]) link(Str1,1733901:Result,[]) } Add(Hub,1184221,70,189) { OutCount=9 link(onEvent1,13798836:doEvent1,[(95,195)(95,132)]) link(onEvent2,15866197:doString,[]) link(onEvent3,6341026:doString,[]) link(onEvent4,12988138:doString,[]) link(onEvent5,3929282:doString,[]) link(onEvent6,4876176:doString,[]) link(onEvent7,2048515:doString,[]) link(onEvent8,16213840:doString,[]) link(onEvent9,9355736:doData,[(217,251)(217,286)]) } Add(Host,3325502,721,133) { link(onIPByHost,1593286:doValue,[]) link(HostName,6062359:Var3,[(734,107)]) } Add(FormatStr,4876176,378,224) { DataCount=1 Mask="Host: %1" link(onFString,5303860:doEvent5,[]) link(Str1,6062359:Var2,[(384,158)(202,158)]) } Add(Hub,5303860,497,196) { InCount=8 OutCount=1 link(onEvent1,9225825:doAdd,[]) } Add(Memory,1593286,819,140) { } Add(Hub,8659068,434,133) { link(onEvent1,13410994:In,[(476,139)(476,83)]) link(onEvent2,3325502:doIPByHost,[]) } Add(LineBreak,716388,721,175) { Caption="Clear" link(Out,1593286:doClear,[(800,181)(800,153)]) Primary=[13410994,-217,-98] } Add(StrList,9225825,581,196) { } Add(LineBreak,11970288,483,273) { Caption="doClear" link(Out,9225825:doClear,[(557,279)(557,209)]) Primary=[3476637,-301,-105] } Add(Hub,13798836,119,126) { OutCount=3 link(onEvent1,15654823:doSplit,[(158,132)(158,117)(44,117)(44,62)]) link(onEvent2,8659068:doEvent1,[]) link(onEvent3,3476637:In,[(136,146)(136,174)]) } Add(StrPart,15654823,56,56) { Char="/" Point(Right) link(onSplit,6203359:doSplit,[]) link(Str,14273051:Url,[(62,49)(27,49)]) } Add(StrPart,6203359,98,56) { Char="/" Point(Right) link(onSplit,3657353:doSplit,[]) } Add(StrPart,3657353,196,56) { Char="/" Point(Left) link(onSplit,1733901:doStrCat,[]) } Add(StrCat,1733901,238,56) { Str1="/" } Add(GetDataEx,6062359,189,98) { link(Data,3657353:Left,[]) } Add(FormatStr,6341026,273,203) { DataCount=1 Mask="Accept: %1" link(onFString,5303860:doEvent2,[]) link(Str1,14273051:Accept,[(279,43)(34,43)]) } Add(FormatStr,12988138,308,210) { DataCount=1 Mask="Accept-Language: %1" link(onFString,5303860:doEvent3,[]) link(Str1,14273051:Accept-Language,[(314,37)(41,37)]) } Add(FormatStr,3929282,343,217) { DataCount=1 Mask="User-Agent: %1" link(onFString,5303860:doEvent4,[]) link(Str1,14273051:User-Agent,[(349,31)(48,31)]) } Add(FormatStr,2048515,413,231) { DataCount=1 Mask="Connection: %1" link(onFString,5303860:doEvent6,[]) link(Str1,14273051:Connection,[(419,26)(55,26)]) } Add(TCP_Client,13954329,574,371) { Port=80 Point(onError) Point(onProgress) link(onRead,14273051:onRead,[(649,377)(649,27)]) link(onConnect,4490901:doEvent1,[]) link(onDisconnect,14273051:onDisconnect,[(649,391)(649,41)]) link(IP,15483361:Var2,[(580,346)(552,346)]) link(Data,2671981:Var2,[]) } Add(LineBreak,6370832,819,182) { Caption="ip" Type=1 link(Data,1593286:Value,[]) Primary=[13677633,-273,105] } Add(Hub,7173150,462,371) { link(onEvent1,13954329:doOpen,[]) } Add(GetDataEx,15483361,539,308) { link(Data,13677633:Var,[]) } Add(GetDataEx,2671981,574,315) { link(Data,9225825:Text,[]) } Add(Hub,4490901,672,378) { link(onEvent1,14273051:onConnect,[(700,384)(700,34)]) link(onEvent2,13954329:doSend,[(698,391)(698,424)(534,424)(534,391)]) } Add(DoData,9355736,350,280) { Data=String(\r\n) link(onEventData,5303860:doEvent8,[(478,286)(478,251)]) } Add(FormatStr,16213840,448,238) { DataCount=1 Mask="Authorization: Basic %1" link(onFString,5303860:doEvent7,[]) link(Str1,14273051:Str1,[(454,26)(62,26)]) } END_SDK Add(Edit,11497402,455,35) { Left=5 Top=30 Width=405 Ctl3D=1 Text="ru" } Add(Edit,5606946,539,49) { Left=5 Top=55 Width=405 Ctl3D=1 Text="Close" } Add(Edit,6925470,497,42) { Left=5 Top=80 Width=405 Ctl3D=1 Text="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" } Add(Edit,15578446,413,42) { Left=5 Top=105 Width=405 Ctl3D=1 Text="text/html" } Add(Hub,15329769,301,196) { OutCount=4 link(onEvent1,1835094:doString,[(325,202)(325,167)]) link(onEvent2,11397624:doGen,[(388,209)(388,230)]) } Add(Edit,15772876,258,90) { Left=85 Top=130 Width=325 Ctl3D=1 Text="sgTr6w6_1372" } Add(Edit,4233416,320,93) { Left=85 Top=154 Width=325 Ctl3D=1 Text="RKcTC2a0a0" } Add(FormatStr,1835094,336,161) { Mask="%1:%2" link(onFString,2638169:doCharset,[]) link(Str1,15772876:Text,[(342,141)(264,141)]) link(Str2,4233416:Text,[(349,135)(326,135)]) } Add(Charset,2638169,392,161) { Type=5 link(onCharset,13110377:doValue,[]) } Add(Memory,13110377,504,161) { } Add(RegExp,10100247,540,283) { Expression="rest: (\d+\.\d+)" link(InputStr,9225825:Text,[]) } Add(Hub,14889352,504,283) { link(onEvent1,10100247:doExec,[]) link(onEvent2,6033531:doRead,[(527,296)(527,366)]) } Add(ArrayRW,6033531,554,360) { link(onRead,8685524:doValue,[]) link(Array,10100247:Match,[]) link(Index,13379325:Value,[(567,345)(588,345)]) } Add(Memory,13379325,582,297) { Default=Integer(1) } Add(DoData,135873,612,500) { Data=String(слежение за балансом) link(onEventData,15756605:doWork3,[(658,506)]) } Add(FormatStr,16617894,605,451) { DataCount=1 Mask="%1 $ " link(onFString,15756605:doWork2,[]) link(Str1,8685524:Value,[]) } Add(TrayIcon,16410587,696,430) { ShowWORemoveIcon=0 Point(doHint) link(onClick,14409035:doEvent,[]) } Add(Memory,8685524,605,360) { link(onData,16617894:doString,[(649,366)(649,412)(593,412)(593,457)]) } Add(LineBreak,6903716,533,500) { Caption="OnCreate" link(Out,135873:doData,[]) Primary=[15476284,-316,-136] } Add(Hub,4622343,168,357) { link(onEvent1,2224962:doWork1,[(417,363)]) link(onEvent2,15476284:In,[]) } Add(HubEx,15756605,654,444) { link(onEvent,16410587:doHint,[]) } Add(Hub,212196,266,224) { link(onEvent1,15329769:doEvent1,[(290,230)(290,202)]) link(onEvent2,11397624:doSend,[]) } Add(StrList,9225825,547,224) { } Add(IndexToChanel,14409035,758,430) { link(onEvent2,12711483:doPopupHere,[]) } Add(PopupMenuEx,12711483,807,437) { IconByIndex=0 Menu=#9:<0>Баланс|9:Настройки|8:<1>Выход| adWidth=20 Font=[MS Sans Serif,8,1,0,1] BackColor=-16777212 SelColorLight=15918822 SelColorDark=15918822 LineColorLight=-16777212 LineColorDark=-16777212 Bitmaps=['Сброс'=[ZIP3604000078DA73F235636100033320D600620128666450804840E591C17F86FFFF47129E5199F4BF26D0F87F67AA375E759F372CFEFFB1361D456C695FF5FFA5B92EFFCF2FEFFABFBF3D05C38C776B17FC7F5F93F6FF4388D9FF0F1136FF3FC43AA2DA5D950CD67769ED64B0192077BC9FD50556F721DEE5FFE7E2E8FF5F3ACAFE7F5D3A0DCC4777D3A9833BFEB78499FFDF511BFC7F4AA2EDFF75333BFE7FC8F0FBFFB92EF3FFF795B3E1186406BADD307CE9CCD1FF5B174FF97F78FB1A30FFFDBA85FF3FE685A3E8FFBAA0FFFFC764CFFF1F8AA2880A53907F417A90CD80B9036436382C4061828451F44FAC83FB01A41E1606286E02F2416AD0F5C2CD008617D8DF40377F6C2F02AB03F9E1636600C42F203E501CA71F80E188CB6C6230B6F43214300076BAEE6A],'Выход'=[ZIP3604000078DAA593B10E0151104557A21359CF176CA2118544A3581DA528B45AFF20F115EAAD542AAD52AD544A282444424224BE60EC1D6633C62A30C94D36EFCDB97BDFBCDD66A79EF5B8EAB1CAB10A4F65BCE0B1F1DCD7451E111445D1D712F6974A3CE26A34B694CB8DC9F7671F34A57C7EC2425FB5BA4E3C50BEBFA052E94095CABB82609BA858DC90734BF6D03CF66AB51DB55A7B56181E587A4D3C9C5B710ECBA31F7D52C2E935C96079E4B4BDE2A14B32601E9A47CE76FBC8B28C66E51C98A9E691BDDB3DB1D272C81C85776EFEC263BDD74B67EDFBE16579E4165E17CE65E7F189EFF7CFECA17BE50E2D8FEF45F3E086C36BE2A1CF6295F67E70A3D18D06830B3F6B1F087395BB411E7B7F60C1489FBE4BFB3DCA1CB9FEF8FF84BD03ED4AECCD]] Point(doHighlight) Point(doCheckIdx) link(MenuItemIdx,1058291:doEvent,[]) } Add(IndexToChanel,1058291,856,437) { Count=3 link(onEvent1,212196:doEvent1,[(918,443)(918,337)(254,337)(254,230)]) link(onEvent2,16410587:doShow,[(905,450)(905,410)(684,410)(684,436)]) link(onEvent3,15752011:In,[(904,457)(904,485)]) } Add(LineBreak,294216,42,364) { Caption="Close" Color=16776960 link(Out,2953706:doClose,[]) Primary=[15752011,877,115] } Add(MainForm,2953706,119,343) { Width=421 Height=251 Visible=1 Caption="" BorderStyle=1 Icon=[ZIP7E05000078DAED916950CD5118879F6BDF652D64DF5A843694A58BD242E48A4859D24AA5A25B6E48D1A5DC124DB66469B2A45521BA61328C895B184663B266294C622A3496FCDD323EF0CD37E377E69C39CFEFBCEF39EF9C1744C2D0D04058DBE1DD1A7A033AC2142C06D1E4FF9058C42F35EF5FE4EFE750A023F7D3E3889098F04A79102FF3FE3CCE49A0A6B282245F7B54C9115C4D9422B5D527D6DB8192DC23C81798112EC49FD9E2898B5E27AA84BC7B859984CD36242D741127439C284B5350717A0FAA7319C4BBDBE069AA49A93287B865D3914926D0F0A18EC8C5D3B89E954C82A72DEFAA9E71F7620E971382A97F5FC393BB251C0875A3BCF802A78477D65A8DE46AF6110ECBA5388E684F5A941F5F3F7DE0537D2DABC543283D9D4A56FC06F2A37D799AB79B8A3BC57CFDDC40A2971DB9FBA269F858CFEBC2439C15CEA39D2753A6BA82C2DD8EE33257426CF4A87C588687993631AE62DC4CB47033D5E279D92DAA2FA5A03A1889C247429E5047A8BD3137CE655294B69FAA826454B92928E302895A6245DDBB6A92641EB81A7465ABB305D5CF1F911A154488B52EDFBE7CE169CE4EC21C4C512AFCF958FB9EDD426DF9C9B1DC39BA8DDB297292FCE6527A218FF28C78961BF6403ACB0867FD2E486D46F1ECCC5E6E2AB3B9B247466D4D35058A006A8A52A93C7F804742BFDEBE7A2978FEA40609FD2CCA63C74A09EB9DC4F8986B73EDD82E62965AF2E07631756FDF08BD34E0417A2C01963ADC3BB19D181731D7F6CA0877302278CE781A1B1BF9AF7F5FF2DFB474A46F67E31E73478D50938D4EA7055E1AE12E1D7A4BD5BCD03CA4B5E59415DDED7A0D6B8E375CE338B3A5C366F1F4B1137E5EB17E86999E53D8A6011ECDBCA1AF48D4B5A3D5349FD94DACEB37A4E76ACDC016EBE6AB71FCF065EE116ED0C6C842CD838323C78956B60858EBEAAF6699B3A455FBA9FD4D5BF6694A1FA31FB40ADBC9A337B66D62837E9E935A69B5F3B6B61FA8E639DDBA2C99B565DE506D93896A5EBC282A74D072F91FF5B7FFF71DD50C4AF9] TaskBar=1 link(onCreate,4622343:doEvent1,[]) } Add(Label,14054578,98,28) { Left=10 Top=132 Width=43 Height=20 Font=[MS Sans Serif,10,0,0,1] Caption="Логин" } Add(Label,7345150,51,28) { Left=10 Top=153 Width=53 Height=20 Font=[MS Sans Serif,10,0,0,1] Caption="Пароль" } Add(Button,1805070,350,420) { Left=160 Top=185 Width=80 Height=30 Caption="Да" link(onClick,2224962:doWork2,[]) } Add(HubEx,2224962,413,413) { Angle=1 link(onEvent,16410587:doHide,[(417,443)]) }
Там пароль не верный так что вводите свой пароль
|