Скачать MetaTrader 5

Вопрос к програмерам!

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Знаете ли вы, что MQL5 способен создавать собственные графические инструменты?
mrforex
51
mrforex 2011.02.12 12:09 
Добрый день! Уважаемые програмеры, мастера своего дела, есть вопрос. Как сделат привязку советника к определенному счету, сделать так называемое лицензирование? Или как сделать временной ограничитель на работу советника( после определенного периода советник перестает торговать)? Буду очень благодарен!
o_o
Модератор
23689
o_o 2011.02.12 12:13  
только dll / internet и то не факт, что не взломают.
mrforex
51
mrforex 2011.02.12 12:21  
Может кто кодом поможет? или dll, как его привязать???
Vadim Zhunko
5226
Vadim Zhunko 2011.02.12 12:41  
mrforex:
Может кто кодом поможет? или dll, как его привязать???

Вряд ли тут будут делиться своими конкретными наработками. Это же защита!

Привязка к счёту через DLL ломается. Даже не надо в библиотеку лезть.

Dmitry Fedoseev
42876
Dmitry Fedoseev 2011.02.12 12:48  
Zhunko:

Привязка к счёту через DLL ломается. Даже не надо в библиотеку лезть.

Как? Если номер счета, на котором работает советник, определяется в самой dll.

Комбинатор
15918
Комбинатор 2011.02.12 13:01  
Integer:

Как? Если номер счета, на котором работает советник, определяется в самой dll.

je на jne в нужном месте :) и все, дллка пашет на любом счету, кроме правильного :))
Alexey Subbotin
4998
Alexey Subbotin 2011.02.12 14:27  
mrforex:
Добрый день! Уважаемые програмеры, мастера своего дела, есть вопрос. Как сделат привязку советника к определенному счету, сделать так называемое лицензирование? Или как сделать временной ограничитель на работу советника( после определенного периода советник перестает торговать)? Буду очень благодарен!
Есть такая фишка как шифрование графа управления. При помощи этой процедуры (у нее можно напридумывать кучу модификаций) можно привязать советник и к счету, и ко времени, да хоть к конкретному компьютеру. Можно защитить код советника полностью, а можно только часть функций. естесвтенно, ничего невзламываемого не бывает, но шифрование графа создает взломщикам довольно серьезные проблемы.
o_o
Модератор
23689
o_o 2011.02.12 15:17  
Integer:

Как? Если номер счета, на котором работает советник, определяется в самой dll.

если в самой dll, то лезут в эту dll.

Взламывал сам неоднократно. и отвязывал и дату и счета и проверки на валидность.

единственный выход - совать в DLL не только тупо проверку счета, но и половину логики и завязывать все на постоянные проверки в ключевых местах.

Шансы у дилетантов (таких как я) значительно уменьшаются

Виктор
Модератор
6559
Виктор 2011.02.12 15:40  
Integer:
Как?...
Умные вы все шибко. А на умных найдутся другие умные, которые по тем же дорожкам ходят и в тех же универах учились.
Конечно, защитой снаружи прикрыть никогда не помешает. Но если независимо от этого сделать полсотни внешних переменных, значения которых по умолчанию дают бредовые результаты, то 95% взломавших до седых волос будет искать профитный набор параметров. Что и явится лучшей защитой.
Leonid Borsky
2385
Leonid Borsky 2011.02.12 16:01  

А мне показалось, что автору ветки нужно всего лишь вот это:

int start() {

if (AccountNumber() != номер счета  && !IsDemo()) return;
//если номер счета не совпадает и это не демосчет - работа запрещена)

Не более того. Не мудрствуя лукаво...

Аналогично и "временное лицензирование"...

 string expire_date = "2011.05.10 00:00"; //<-- hard coded datetime
  datetime e_d = StrToTime(expire_date); 
   
  if (TimeCurrent() >= e_d)
   {
      Alert ("Хи-хи, тра-ля-ля!"); 
      return(0);
  }
Андрей
1890
Андрей 2011.02.12 16:03  
granit77:
Умные вы все шибко. А на умных найдутся другие умные ...
Ну извините... формат ex4 сделан так, что его никак не сведущий в программировании человек вскрывает за секунды.
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий