Maks150988
![](http://forum.ru-board.com/board/avatars/russia.gif)
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Происходит что-то непонятное, по крайней мере для меня. Использую Delphi 7. Есть следующий код: Код: function SendSoapRequest(hResourceHandle: HINTERNET; pszSoap: Utf8String): AnsiString; var dwStatus : DWORD; dwStatusSize : DWORD; dwReserved : DWORD; bRet : Boolean; pszText : Utf8String; dwBytesToWrite: DWORD; dwBytesRead : DWORD; begin Result := ''; bRet := HttpSendRequest(hResourceHandle, nil, 0, LPTSTR(pszSoap), lstrlen(LPTSTR(pszSoap))); if bRet then begin dwStatus := 0; dwStatusSize := SizeOf(dwStatus); dwReserved := 0; bRet := HttpQueryInfo( hResourceHandle, HTTP_QUERY_FLAG_NUMBER or HTTP_QUERY_STATUS_CODE, @dwStatus, dwStatusSize, dwReserved ); if (bRet and (dwStatus = HTTP_STATUS_OK)) then begin bRet := InternetQueryDataAvailable(hResourceHandle, dwBytesToWrite, 0, 0); if (bRet and (dwBytesToWrite > 0)) then begin SetLength(pszText, dwBytesToWrite); repeat bRet := InternetReadFile(hResourceHandle, LPTSTR(pszText), dwBytesToWrite, dwBytesRead); if (bRet and (dwBytesRead > 0)) then begin SetLength(pszText, dwBytesRead); Result := Result + Utf8ToAnsi(pszText); end; until dwBytesRead = 0; end; end; end; end; | Так как делаю приложение под Windows 7, то проблем не было. Решил протестировать на виртуальных машинах с предыдущими Windows вплоть до 2000. Бах и программа вылетает с ошибклй что где-то память не может быть записана по такому-то адресу. Я подумал ну ладно хрен с ним мне главное добиться рабочести кода на семерке чем на этих, а дальше можно и улучшить после доработки. Компилирую уже на Windows XP x64 и такая же хрень. Вообще брал примерный код из другого своего проекта где все работает как часы. Запускаю под отладчиком и ошибка. Решил пересобрать проект с отладчоными DCU файлами. Запускаю и вылезает вкладка GETMEM.INC с процедурой DeleteFree на строке n.prev := p; это получается косяк в системом модуле Delphi? Код отрабатывает только под Windows 7 а в других системах нарушение доступа. Помогите советом. ![](http://forum.ru-board.com/board/s/sad.gif) |