Hab's nicht ausprobiert, aber der erste und dritte Parameter sollen LPDWORDs, also Zeiger auf DWORD sein.
sizeof(szBuffer) liefert ein DWORD zurück. Probier's also mal mit
Code:
var size: DWORD;
dwError: DWORD;
...
size := sizeof(szBuffer);
InternetGetLastResponseInfo(@dwError, szBuffer, @size);
Ähm... Zumindest in C müsste das so gemacht werden. Wahrscheinlich reicht es, wenn du das für den dritten Parameter so machst. Da der nach dem Funktionsaufruf die Länge des in szBuffer geschriebenen enthalten soll, MUSS also ein Zeiger übergeben werden.