Терминал не выгружается из реестра процессов после выхода.

 
Уважаемые, разработчики МТ,
на сайте Forex-TSD.com ведется разработка Новостного Календаря ( https://www.mql5.com/ru/economic-calendar ).
Для его визуализации на графике мною разработан индикатор, использующий внешюю библиотеку WebGet.dll (библотеку и файл.mqh лежат в посте №16).
Однако мы обнаружили несколько проблем при работе с этим индикатором:
- терминал не выгружается из реестра процессов после выхода, поэтому приходится удалять его через диспетчер задач;
- подвисает терминал при попыткпе удаления индикатора с графика.
Прошу выяснить причины данных проблем.

С уважением,
Igorad
 
Приложите к своему сообщению ZIP архив со всеми используемыми файлами, пожалуйста.

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

Видимо этот самый поток, чисто безоконный и не связан с рабочими, то есть не воспринимает события вроцесса, предварительно надо завершать ваш поток, например в deinit выгружать этот самый поток, к разработчикам это не имеет никакого отношения:)

 
Да, возможно проблемы в коде dll - будем разбираться.
Архив с файлами прилагаю.
Файлы:
webget.zip  48 kb
 

А чего тут разбираться экспорт всего один forextsd_com_webget с одним аргументом строка, поток открывается и не закрывается, больше чем уверен, типа асинхронный запрос или синхронный в отдельном потоке, это скорее, еще какой-то там цикл наверное крутится, но врядли оконный:) Без исходного текста решить что-то сложно, вопрос только в сторону разработчиков либы:) Намек на выгрузку всех ресурсов после каждого запроса более чем уместен в их сторону! Ну еще строка переданная судя по всему не копируется, а внаглую юзается из терминала, что и приводит к подвисанию, судя по всему протекция виртуалки не выключена или наоборот цикл ждет. Вобщем разбираться в том что они там написали как-то не вдохновляет, в исходном коде проще:) Догадки можно строить в любом направлении:) А в разработке, все зависит от снаровки:)

По дизасембленному коду можно разобраться и переписать иначе, все примерно ясно, но это не ко мне:)

Но я так понимаю дизасеблить и разбираться ни в чем не надо, действия делаются например по таким ссылкам, если только парсить страницу https://www.mql5.com/ru/economic-calendar

Более того там целое описание API для RSS и т.д., парсить ничего не надо если есть свои парсеры. Вобщем, все условия как говорится, для программеров, раз плюнуть, два плюнуть, осталось только найти профессора по плевкам которому это будет так же нужно:)


Экономический календарь - экономические индикаторы и события - MQL5.community
Экономический календарь - экономические индикаторы и события - MQL5.community
  • www.mql5.com
Дата Время, Валюта Событие Актуальное Прогноз Предыдущее
 
xnsnet:

А чего тут разбираться экспорт всего один forextsd_com_webget с одним аргументом строка, поток открывается и не закрывается, больше чем уверен, типа асинхронный запрос или синхронный в отдельном потоке, это скорее, еще какой-то там цикл наверное крутится, но врядли оконный:) Без исходного текста решить что-то сложно, вопрос только в сторону разработчиков либы:) Намек на выгрузку всех ресурсов после каждого запроса более чем уместен в их сторону! Ну еще строка переданная судя по всему не копируется, а внаглую юзается из терминала, что и приводит к подвисанию, судя по всему протекция виртуалки не выключена или наоборот цикл ждет. Вобщем разбираться в том что они там написали как-то не вдохновляет, в исходном коде проще:) Догадки можно строить в любом направлении:) А в разработке, все зависит от снаровки:)

По дизасембленному коду можно разобраться и переписать иначе, все примерно ясно, но это не ко мне:)

Но я так понимаю дизасеблить и разбираться ни в чем не надо, действия делаются например по таким ссылкам, если только парсить страницу /en/economic-calendar

Более того там целое описание API для RSS и т.д., парсить ничего не надо если есть свои парсеры. Вобщем, все условия как говорится, для программеров, раз плюнуть, два плюнуть, осталось только найти профессора по плевкам которому это будет так же нужно:)

Спасибо за участие, проблемы разрулили :)