Amigo a mi me funciona al 100% esto con xHarbour :
cHttp:='https://www.myserver.com/dato.txt'
if !URLDownLoad(cHttp, 'c:\MisDescargas\Respuesta.txt')
mensaje('Error : '+cHttp)
else
? memoread('c:\MisDescargas\Respuesta.txt')
endif
----------------------------
func URLDownLoad(cUrl, cSaveAs)
hLib = LOADLIBRARY( "urlmon.dll")
if !URLDownloadToFile( 0, cUrl, cSaveAs, 0, 0 ) == 0
retu.f.
endif
FREELIBRARY( hLib )
retu.t.
DLL32 FUNCTION URLDownloadToFile(pCaller AS LONG,szURL AS STRING, szFileName AS STRING, dwReserved AS LONG, lpfnCB AS LONG);
AS LONG PASCAL;
FROM "URLDownloadToFileA";
LIB hlib