Я отправляю некоторые данные из своего приложения в php-файл, который может печатать на экране 3 разных вещи (если бы я открыл его в своем браузере), я отправляю что-то на свой URL-адрес как так:MASM InternetOpenUrl/InternetReadFile get Output
sendtourl PROC
_loop:
invoke lstrcpy,addr _urlTmp ,addr _url
invoke lstrcat, addr _urlTmp , addr lpszNumber ;----- add parameter to url
invoke InternetOpen,addr _agent, 0 ,0,0,0 ;----- specify user agent
test eax,eax
jz _exit
mov [InternetHandle],eax
invoke InternetOpenUrl, InternetHandle,ADDR _urlTmp, 0 ,0,0, 0 ;----- open URL
test eax,eax
jz _exit
mov [FileHandle],eax
invoke InternetReadFile,FileHandle,addr FileBuffer,1023, addr BytesRead
test eax,eax
jz _exit
mov eax,[BytesRead]
mov b[FileBuffer+eax],0
; invoke Sleep,600000
invoke InternetCloseHandle, [FileHandle]
invoke InternetCloseHandle, [InternetHandle]
ret
_exit:
invoke InternetCloseHandle,[FileHandle]
invoke InternetCloseHandle,[InternetHandle]
;;invoke ExitProcess,0
;-----
ret
sendtourl ENDP
Теперь может быть 1 из 3 вещей, напечатанных в зависимости от того, что был отправлен в URL: да, нет, может быть
можно ли принять этот вывод и положить его обратно в некоторых переменная в моем приложении, поэтому я могу ее повторно использовать, например:
- Выхода был да = ничего не делать
- выхода не было = закрыть приложение
- Выход был возможно = сделать что-то еще
Передающей часть работает нормально, я просто не могу понять, как я могу получить ответ ?
Звучит довольно сложно, я только начинаю :(.. Есть ли более простой способ, возможно, как получить размер ответа, например, положить текст мусора в ответ, чтобы он равнялся 1кб для да, 2 КБ для нет 3kb может быть или что-то еще? –
Просто для справки и для того, чтобы увидеть, что на самом деле находится в FileBuffer, не следует 'invoke MessageBox, NULL, addr FileBuffer, addr FileBuffer, MB_OK' выводить все, что там есть? Сообщение только пустое –
С немного возиться, я, наконец, получил только текст, который хочу, спасибо :) –