#property copyright "http://dmffx.com"
#property link "http://dmffx.com"
#property show_inputs
#include <WinUser32.mqh>
#import "user32.dll"
int GetDlgItem (int hDlg,int nIDDlgItem);
int GetParent (int hWnd);
extern string Symb="GBPUSD";
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start(){
if(!IsDllsAllowed()){
Alert("Ðàçðåøèòå dll");
return(0);
}
if(fSymbolFind(Symb)==-1){
Alert("Íåò ñèìâîëà "+Symb+" â îáçîðå ðûíêà");
}
}
int fSymbolFind(string aSymbol){
int num=fMWSymbolIndex(aSymbol);
if(num==-1)return;
num++;
SelectSymbol(num);
return(0);
}
//+------------------------------------------------------------------+
int fParentHandle(){
int HandleParent;
int Handle=WindowHandle(Symbol(),Period());
while(Handle!=0){
HandleParent=Handle;
Handle=GetParent(Handle);
}
return(HandleParent);
}
int fMWSymbolIndex(string aSymbol){
string SymbolsFileName;
int Offset,SymbolsNumber;
SymbolsFileName="symbols.sel";
int hFile=FileOpenHistory(SymbolsFileName, FILE_BIN|FILE_READ);
if(hFile<0)return(-1);
SymbolsNumber=(FileSize(hFile)-4)/128;
Offset=116;
FileSeek(hFile,4,SEEK_SET);
int rv=-1;
for(int i=0;i<SymbolsNumber;i++){
string S=FileReadString(hFile,12);
if(S==aSymbol){
rv=i;
break;
}
FileSeek(hFile,Offset,SEEK_CUR);
}
FileClose(hFile);
return(rv);
}
void SelectSymbol(int Num){
int Handle=fParentHandle();
if(Handle!=0){
Handle=GetDlgItem(GetDlgItem(GetDlgItem(Handle,0xE81C),0x50),0x8A71);
PostMessageA(Handle,WM_KEYDOWN,0x24,0);
while(Num>1){
PostMessageA(Handle,WM_KEYDOWN,0x28,0);
Num--;
}
}
}
Comments