//+------------------------------------------------------------------+
//| ReConnecter.mq4 | Ñêðèïò äëÿ ïåðèîäè÷åñêîãî ïåðåïîäêëþ÷åíèÿ ê ïåðâîìó ñ÷åòó èç "Èçáðàííîãî"
//| Copyright © 2008, komposter | thanks to Getch (http://www.mql4.com/ru/users/getch)
//| mailto:komposterius@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, komposter"
#property link "mailto:komposterius@mail.ru"
#property show_inputs
extern int Pause_sec = 600; // ïàóçà ìåæäó ïåðåïîäêëþ÷åíèÿìè â ñåêóíäàõ
#include <WinUser32.mqh>
#import "user32.dll"
int GetParent( int hWnd );
int GetDlgItem( int hDlg, int nIDDlgItem );
int GetLastActivePopup( int hWnd );
#import
#define VK_HOME 0x24
#define VK_DOWN 0x28
#define VK_ENTER 0x0D
#define PAUSE 1000
void init()
{
start();
}
void start()
{
if ( !IsDllsAllowed() )
{
Alert( "DLLs not alllowed!" );
return;
}
while ( !IsStopped() )
{
Login(1);
while ( !IsStopped() )
{
if ( OrdersHistoryTotal() > 0 ) break;
Sleep(1000);
}
Print( "Óñïåøíîå ïîäêëþ÷åíèå ê ñ÷åòó #", AccountNumber(), "! Ñëåäóþùåå áóäåò ÷åðåç ", Pause_sec/60, " ìèíóò..." );
Sleep(Pause_sec*1000);
}
return;
}
// Ïîäêëþ÷àåòñÿ ê ñ÷åòó, ðàñïîëîæåííîìó â ñòðî÷êå íîìåð Num â çàêëàäêå Èçáðàííîå îêíà Íàâèãàòîð
void Login( int Num )
{
int hwnd = WindowHandle(Symbol(), Period());
int hwnd_parent = 0;
while (!IsStopped())
{
hwnd = GetParent(hwnd);
if (hwnd == 0) break;
hwnd_parent = hwnd;
}
if (hwnd_parent != 0) // íàøëè ãëàâíîå îêíî
{
hwnd = GetDlgItem(hwnd_parent, 0xE81C); // íàøëè Èçáðàííîå îêíà Íàâèãàòîð
hwnd = GetDlgItem(hwnd, 0x52);
hwnd = GetDlgItem(hwnd, 0x8A70);
PostMessageA(hwnd, WM_KEYDOWN, VK_HOME,0); // âåðõíÿÿ ñòðî÷êà çàêëàäêè Èçáðàííîå îêíà Íàâèãàòîð
while (Num > 1)
{
PostMessageA(hwnd, WM_KEYDOWN,VK_DOWN, 0); // ñìåñòèëèñü íà íóæíóþ ñòðî÷êó
Num--;
}
PostMessageA(hwnd, WM_KEYDOWN, VK_ENTER, 0); // ëîãèí
Sleep(PAUSE); // âûæäàëè
hwnd = GetLastActivePopup(hwnd_parent); // íàøëè ôîðìó ëîãèíà
PostMessageA(hwnd, WM_KEYDOWN, VK_ENTER, 0); // çàëîãèíèëèñü
}
return;
}
Comments