Ошибки, баги, вопросы - страница 2443

 
Sergey Dzyublik:

Подключите исходник в формате .mq5 как ресурс и читайте хеш от содержимого исходника.
Если поменяете исходник, то при компиляции автоматом подтянется новый исходник в качестве ресурса и будет рассчитан новый хеш.
Что тут сложного?

Если в исходник добавлен комментарий, то от этого логика советника не меняется. Т.е. это один и тот же советник.

Вы и Игорь предлагаете наикостыльнейшие решения. Самое элементарное - дать хэш самого себя. Путь на самого себя дается. Хэш - по какой-то причине зажимается.
 
fxsaber:

Т.е. если EX5 поменялся, то и создаваемые им названия файлов меняются.

EX5 меняется при каждой компиляции. Почему тогда время компиляции не может служить уникальным именем?

 
fxsaber:

 Самое элементарное - дать хэш самого себя. Путь на самого себя дается. Хэш - по какой-то причине зажимается.

Ваша задача похожа на головоломку на форумах "по изучению защит ПО", обычно это звучит "как сделать запись исполняемого файла в другую папку после запуска"

обычно после запуска исполняемого файла операционка блокирует доступ к этому файлу до завершения работы приложения, думаю такая же ситуация и с исполняемым файлом .ex5 - пока он запущен к нему доступ запрещен

ЗЫ: я по другому не умею, меня так учили - дробить задачу на более мелкие, вот и предложил разнести на 2 модуля - один исполняемый, второй для записи в файлы, можно же и 3 модуля (библиотеки) подключить

 
Igor Makanu:

обычно после запуска исполняемого файла операционка блокирует доступ к этому файлу до завершения работы приложения, думаю такая же ситуация и с исполняемым файлом .ex5 - пока он запущен к нему доступ запрещен

Нет, он в памяти. Файл можно даже удалить, работе не навредит.

 
fxsaber:

Если в исходник добавлен комментарий, то от этого логика советника не меняется. Т.е. это один и тот же советник.

Вы и Игорь предлагаете наикостыльнейшие решения. Самое элементарное - дать хэш самого себя. Путь на самого себя дается. Хэш - по какой-то причине зажимается.

Если мешают комменты - уберите их ручками перед расчетом хеша.
Главное желание, а не нахождение все новых отговорок.

 
Sergey Dzyublik:

Если мешают комменты - уберите их ручками перед расчетом хеша.

С таким видением решения задачи можно просто предложить руками в исходнике менять название создаваемого программой файла.

Главное желание, а не нахождение все новых отговорок.

Главное - возможности.

 
Andrey Khatimlianskii:

EX5 меняется при каждой компиляции.

Про это не подумал.

Почему тогда время компиляции не может служить уникальным именем?

Хотелось, чтобы была реакция на изменение кода. Видимо, проблема не решается.

 
fxsaber:

Хотелось, чтобы была реакция на изменение кода. Видимо, проблема не решается.

Решается собственным анализатором кода (не самым простым). 
В ручном режиме проще (версию менять). 
 
Andrey Khatimlianskii:
Решается собственным анализатором кода (не самым простым). 

На стороне разработчиков нужно только желание, т.к. сделать - одна минута.

Нужно только отдавать хэш нативного кода до "обфускации" в EX5.

 
fxsaber:

Спасибо огромное! Выложу работу с opt, как будет готова.

ЗЫ Всего 64 символа на длину пути к эксперту - не мало?

Ошибся - 128.

Причина обращения: