[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 241

 
gyfto:

Я тут подумал... Если в dll вшит шпион на WinAPI, то взломщик м.б. как инвестором, так и управляющим трейдером. Соответственно, если вы знаете того, от кого получаете индикатор, он не написал вам на заказ, файл в ex4 и вы успешны или инвестор, имеет смысл проверить на virustotal или отследить обращения файла, тут в принципе и декомпилятор не нужен. Это программы типа Filemon. Но даже для целенаправленной слежки это уже крайние методы, люди прощупываются не так. А чтобы в свободной скачке заразу на WinAPI подхватить - тут я не знаю, тут сначала надо быть сначала убеждённым вандалом для этого... 


Спасибо! Буду размышлять.
 
gyfto:

Как можно извернуться, чтобы создать класс или структуру? На mql4. Может, если обращаться к ячейкам памяти... Как это сделать? 

структура WNDCLASSEX
typedef struct tagWNDCLASSEX {
  UINT      cbSize;
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCTSTR   lpszMenuName;
  LPCTSTR   lpszClassName;
  HICON     hIconSm;
} WNDCLASSEX, *PWNDCLASSEX;
структура WNDPROC (не разобрался)
LRESULT CALLBACK WindowProc(
  _In_  HWND hwnd,
  _In_  UINT uMsg,
  _In_  WPARAM wParam,
  _In_  LPARAM lParam
);
C++MQL4byte
UINTint2*4
WNDPROC (структура)int[4]4*4
intint2*4
все на H* (HICON, HBRUSH и т.д.)int5*4
LPCTSRstring2*0x100
C++MQL4byte
HWNDint4
UINTint4
WPARAMint4
LPARAMint4

Итого 0x234 (564) байт. Структура массива:

члены классаi в lpClassName[i]
cbSize0-3
style4-7
hwnd 8-11
uMsg12-15
wParam16-19
lParam20-23
cbClsExtra24-27
cbwndExtra28-31
hInstance32-35
hIcon36-39
hCursor40-43
hbrBackground44-47
lpszMenuName48-303
lpszClassName304-559
hIconSm560-563

 Соответственно вызов функции

int  CreateWindowExA(
// создание окна, расширенный вариант, ANSI-тип
            int dwExStyle,// расширенный стиль окна
         int&[] lpClassName,// но пока использую стандартный оконный класс (т.е. тип данных string)
         string lpWindowName,// текст в заголовке
            int dwStyle,// стиль окна (наследуемый с CreateWindowA)
            int x,// координаты левого верхнего угла окна: икс...
            int y,// ...и игрек
            int nWidth,// ширина окна
            int nHeight,// высота окна
            int hWndParent,//дескриптор родительского окна
            int hMenu,//идентификатор: для родительского окна - меню, для дочернего - дочернего ему окна (MDI, что ли...)
            int hInstance,// дескриптор программы (напр., индикатора), привязанной к создаваемому окну
            int lpParam );//указатель на lParam, млардшую половину WM_CREATE, которая равна 0x0001
   
#import
 
Это только наброски. Где неправ поправляйте. WNDPROC там структура в структуре при режиме проверки типов STRICT, которая не существует в МТ, или возвращает long (4 байта), а int в API 2 байта? Как здесь?
 
Не могу понять в чем проблема. Оптимизировал советник (Все тики), из окна полученных результатов загрузил параметры, прогнал через тестер - совершенно разные результаты выходят. В настройках ничего не менял, кроме параметров. В журнале пишет об ошибке №1 в блоке модификации ордеров. В чем может быть проблема?
 

 Сегодня случайно блуждая в этой ветке, мне попался во внимание один индюк. В общем, там есть странная вещь.

Вызов параметров самого индюка через iCustom(), вот так:

 sslHdn[i]=iCustom(NULL,TimeFrame,IndicatorFileName,Lb,SSL_BarLevel,1,y); 

 где,

IndicatorFileName=WindowExpertName();

 Хотел спросить. Это вообще нормальный способ? Странно как-то. Ведь можно обратится к переменных самого индюка без iCustom()

 По мне так это вовсе не логично. Хочется услышать мнение других участников ветки.. 

 
hoz:

 Сегодня случайно блуждая в этой ветке, мне попался во внимание один индюк. В общем, там есть странная вещь.

Вызов параметров самого индюка через iCustom(), вот так:

 где,

 Хотел спросить. Это вообще нормальный способ? Странно как-то. Ведь можно обратится к переменных самого индюка без iCustom()

 По мне так это вовсе не логично. Хочется услышать мнение других участников ветки.. 

Из Вашей сбивчивой логики могу предположить наличие в коде строчки:

#define IndicatorFileName //какое-то имя
или... я совсем "потерял мысль"...
 
TarasBY:

Из Вашей сбивчивой логики могу предположить наличие в коде строчки:

или... я совсем "потерял мысль"...


 Нет. Нету такого. Я ж выше показал, что имени присваивается название эксперта:

IndicatorFileName=WindowExpertName();

 А вот, собственно, и сам индюк.

 https://www.mql5.com/ru/code

Мне вообще сам индюк не интересен, как торговый сигнал. Но я заметил интересное название, и решил посмотреть его "внутренности". Вот и наткнулся..

 
hoz:


 Нет. Нету такого. Я ж выше показал, что имени присваивается название эксперта:

 А вот, собственно, и сам индюк.

 https://www.mql5.com/ru/code

Мне вообще сам индюк не интересен, как торговый сигнал. Но я заметил интересное название, и решил посмотреть его "внутренности". Вот и наткнулся..

Я не в теме: вызов из индикатора самого себя - оригинально!!!
 
TarasBY:
Я не в теме: вызов из индикатора самого себя - оригинально!!!

: ) Вот я о том же и говорю. Решил показать публике, забавный трюк.. ахаха. Думал тока меня это удивит... Видимо не только меня.
 
Привет всем! Кто может подсказать? Как в цене отложенного ордера на Buy указать цену  открытия относительно МА, а не цены Ask. Например свеча закрылась около МА, на 7пунктов  ниже или выше МА, а цена открытия ордера фиксирована и должна быть МА+28р..? Заранее спасибо.