Новая статья Использование WinInet в MQL5. Часть 2: POST-запросы и файлы опубликована:
Автор: Алекс Сергеев
Привет, Алекс,
Хорошая статья - у меня есть просьба по поводу 'части 3': XML-RPC взаимодействие с клиентом (и сервером, если возможно).
Будьте здоровы
При выполнении следующего оператора происходит сбой системы, как это можно решить?
hConnect=InternetConnectW(hSession, aHost, aPort, aUser, aPass, aService, 0, 0);
Error: Access violation read to 0x0000000000001F94 in '......ex5'
В строке 161 есть небольшая ошибка. Эта строка должна быть:
else StringToCharArray(req.stData, data, 0, StringLen(req.stData));
потому что терминал 0 копируется в массив, а HttpSendRequestW отправляет терминал 0 (как дополнительный символ) в последнее значение post var. Например, если ваши данные:
var1=value1&var2=value2
Вы получите на своей веб-странице var1, связанный со значением1, и var2, связанный со значением2\0.
Это отличная статья. Спасибо, что поделились ею.
С уважением,
Ошибка нарушения доступа была решена, но POST-запросы теперь не работают. Видимо, данные в массиве uchar неправильно передаются в функцию dll.
Почему никого не волнует эта проблема?
У меня также возникла ошибка Access Violation с этим классом объектов. Проблема заключалась в использовании '0' в качестве NULL-указателя при вызове функции HttpOpenRequestW. Попробуйте заменить вызов
--- hRequest=HttpOpenRequestW(hConnect, req.stVerb, req.stObject, Vers, nill, 0, INTERNET_FLAG_KEEP_CONNECTION|INTERNET_FLAG_RELOAD|INTERNET_FLAG_PRAGMA_NOCACHE, 0);
на другой вызов:
+++ hRequest=HttpOpenRequestW(hConnect, req.stVerb, req.stObject, Vers, NULL, NULL , INTERNET_FLAG_KEEP_CONNECTION|INTERNET_FLAG_RELOAD|INTERNET_FLAG_PRAGMA_NOCACHE, 0);
Забавно, что неправильное использование NULL-указателя даже явно упоминается в документации MSDN как причина сбоя:
Failing to properly terminate the array with a NULL pointer will cause a crash.
- msdn.microsoft.com
Пытаюсь взять из профиля отчет по продуктам и никак , что делаю не так ?

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Опубликована статья Использование WinInet в MQL5. Часть 2: POST-запросы и файлы:
Автор: Alex Sergeev