Make(delphi) ver(4.04 build 184) Add(MainForm,4844206,504,252) { Left=20 Top=105 Width=625 Height=155 Caption="DDE_Client SystemForex" BorderStyle=1 Icon=[ZIP7E05000078DAED944B48945118869F5FFFF19E8E974C2D6BD4D2199DECA2699AE365749C1C2FA3FFCC3F4610142D9C7091189416A299902E328908BB1281612D2C10B1B2213248DB584417E8025A51D22A984D3B3BCE60B5A8F681CFE1397CEFF76ECEEA80248E568BB843706B201ED00BC50A1DFEFDBF585858E0F9F0055E1DC863D424335612C4B839943BE5E14C58B578AAA2F1D86278684F60B23E91474A12538D3AA61B5398DE95CA93DD69CCECCD1466F1749F9167FBB379E9CEE1853B97D7CDF9BC6D29129A78D75ACCFB43A5CC1EA960AECDC25C7B251F8E59F9D461E373670D5FBA6A99EFAA63FEB89DAF3D0D4205EF83EBC83DF968FA0AD1F416A01173707F11E1972D849D2B23E24A25914336A286ABD1DEB6A31DA92366CC419CA791B8FB2E7ADFDC20E0F01EB834257C0C839370D60367EE09EFC2C0389C1E8353A3D0774B38023D37A17B083AAF41C755387A11DACF43DB20B40EC0C17E681136F70A4F42D309700B9BBA9998F988D7EB659965FE075C7F22293E36362A3C244896655F4E969690ADD5B5762559D2EBF53E658B2AF8ADB7A84ED59922F9DBA57EC3CF5E635655A73363BD4EB7266165F48AB060F3629F21A5A5AD5B1D18A78D08358B5A0DC8484F4F5D9BB82A26D255AC2E619224A3CB5554525E5955D3E0501CCAF6C55CA89656586D7687A228BEDEB5C35466D95957EF7014180D46DFEBF3A49CAD9B37651A8C467F76E56FCBDD92BD31CB6010B3F8FAF88EDFBF2209037FD9259C157E0B861FEE74A8EE] } Add(Button,16383096,133,308) { Left=355 Top=95 Width=80 Font=[MS Sans Serif,8,1,0,1] Enabled=1 TabOrder=-1 Caption="Refresh" Point(doEnabled) link(onClick,12570304:doWork2,[]) } Add(ArrayEnum,12616160,546,245) { link(onItem,16524716:doAdd,[]) link(Array,2651651:Array,[(552,235)(363,235)]) } Add(StringTable,16524716,602,245) { Left=5 Top=5 Width=605 Height=85 WinStyle=2 Name="tab" Columns=#9:Symbol=60|6:Bid=60|6:Ask=60|7:High=60|6:Low=60|8:Time=100|8:Full=180| Grid=0 Flat=1 Point(Matrix) } Add(MatrixRW,15611441,616,315) { Value=Integer(0) X=1 Y=1 link(Matrix,16524716:Matrix,[]) link(Value,14048134:Item,[(629,303)(408,303)(408,365)(349,365)]) link(X,9611618:Result,[(636,293)(588,293)(588,365)(531,365)]) link(Y,14048134:Index,[(643,298)(402,298)(402,360)(356,360)]) } Add(ArrayEnum,14048134,343,322) { link(onItem,9611618:doOperation,[]) link(Array,13089203:GetArray,[]) } Add(MultiElementEx,13089203,343,252) { @Hint=#11:DDE-Clients| Mode=1 link(onError,13546143:doEvent1,[]) link(onEndGetItems,14048134:doEnum,[(385,265)(385,370)(332,370)(332,328)]) link(onConnect,15469637:doWork1,[(396,272)]) link(Items,2651651:Text,[]) AddHint(-96,-43,72,13,@Hint) } BEGIN_SDK Add(EditMultiEx,14302088,21,21) { WorkCount=#5:##add|8:##select|7:##clear| EventCount=#7:onError|13:onEndGetItems|9:onConnect| VarCount=#8:GetArray|7:##count|7:##index| DataCount=#5:Items| Width=293 Height=228 HOffset=77 Point(##add) Point(##select) Point(##clear) Point(##count) Point(##index) link(##add,1681710:doEvent1,[(38,27)(38,153)]) link(##select,12100826:doData,[]) link(GetArray,14392333:Array,[(104,192)(251,192)]) } Add(DDEClient,12344087,147,112) { ServiceName="MT4" AutoUpdate=1 Point(onError) Point(doAutoUpdate) Point(doTopicName) Point(doItems) link(onOpenLink,45907:doData,[(189,118)(189,41)]) link(onGetItem,14392333:doAdd,[]) link(onError,14302088:onError,[(207,146)(207,27)]) } Add(Hub,1681710,56,147) { OutCount=3 link(onEvent1,12344087:doTopicName,[]) link(onEvent2,7356874:doData,[]) link(onEvent3,12344087:doOpenLink,[(84,167)(84,118)]) } Add(DoData,7356874,98,154) { link(onEventData,12344087:doItems,[]) link(Data,14302088:Items,[]) } Add(DoData,12100826,49,28) { Data=Integer(1) link(onEventData,14171289:doEvent1,[]) } Add(Hub,14171289,98,28) { link(onEvent1,14392333:doClear,[(221,34)(221,139)]) link(onEvent2,12344087:doAutoUpdate,[(129,41)(129,146)]) } Add(StrList,14392333,231,126) { link(onChange,13768696:doCompare,[(273,132)(273,114)(214,114)(214,209)]) } Add(If_else,13768696,238,203) { Op2=Integer(4) link(onTrue,14302088:onEndGetItems,[(289,209)(289,34)]) link(Op1,14392333:Count,[]) } Add(DoData,45907,231,35) { Data=String(Connected to MT4) link(onEventData,14302088:onConnect,[]) } END_SDK Add(StrList,2651651,343,175) { Strings=#6:USDCHF|6:GBPUSD|6:USDJPY|6:EURUSD| AddHint(46,-5,59,52,Strings) } Add(StrList,1723259,203,175) { FileName="BID\r\nASK\r\nHIGH\r\nLOW\r\nTIME\r\nQUOTE" Strings=#3:BID|3:ASK|4:HIGH|3:LOW|4:TIME|5:QUOTE| Point(IdxToSelect) AddHint(-69,-31,38,78,Strings) } Add(ArrayEnum,4310055,217,252) { link(onItem,13089203:##add,[]) link(onEndEnum,12570304:doWork1,[(263,265)]) link(Array,1723259:Array,[]) } Add(Button,8475379,133,238) { Left=195 Top=95 Width=80 Font=[MS Sans Serif,8,1,0,1] TabOrder=-1 Caption="Connect" link(onClick,729019:doEvent1,[]) } Add(For,4845108,273,308) { IncludeEnd=1 link(onEvent,13089203:##select,[(318,314)(318,265)]) link(End,13089203:##count,[(286,293)(356,293)]) } Add(HubEx,12570304,259,308) { link(onEvent,4845108:doFor,[]) } Add(Button,4128219,133,378) { Left=275 Top=95 Width=80 Font=[MS Sans Serif,8,1,0,1] TabOrder=-1 Caption="Disconnect" link(onClick,2266214:doEvent1,[]) } Add(Hub,2266214,175,378) { OutCount=3 link(onEvent1,8534840:doWork3,[(325,384)]) link(onEvent2,45907:doData,[]) link(onEvent3,883354:doWork1,[(201,398)(201,415)(73,415)(73,314)]) } Add(Hub,729019,175,238) { OutCount=4 link(onEvent1,16524716:doClear,[(590,244)(590,258)]) link(onEvent2,12616160:doEnum,[]) link(onEvent3,4310055:doEnum,[]) link(onEvent4,883354:doWork2,[(200,265)(200,345)(80,345)(80,321)]) } Add(Math,9611618,525,322) { Op2=1 ResultType=0 link(onResult,15611441:doWrite,[]) link(Op1,13089203:##index,[(531,293)(363,293)]) } Add(HubEx,4599439,483,252) { link(onEvent,4844206:doCaption,[]) } Add(DoData,45907,217,385) { Data=String(Disconnected from MT4) link(onEventData,15469637:doWork2,[]) } Add(ChanelToIndex,883354,91,308) { link(onIndex,16383096:doEnabled,[]) } Add(HubEx,8534840,321,266) { link(onEvent,13089203:##clear,[]) } Add(Timer,7419560,434,266) { Interval=25 Enable=1 AutoStop=1 link(onTimer,8534840:doWork1,[(477,272)(477,164)(325,164)]) } Add(Hub,13546143,399,252) { OutCount=3 link(onEvent1,4599439:doWork2,[]) link(onEvent2,4310055:doStop,[(425,265)(425,377)(208,377)(208,265)]) link(onEvent3,7419560:doTimer,[]) } Add(HubEx,15469637,392,385) { link(onEvent,4599439:doWork3,[(487,391)]) }