Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <windows.h>
- #include <objbase.h>
- #include <objidl.h>
- #include <shlobj.h>
- #include <shobjidl.h>
- #include <stdio.h>
- #include "httprequest.h"
- int main(int argc, const char **argv)
- {
- HRESULT hr;
- IWinHttpRequest *req = NULL;
- BSTR resp = NULL;
- BSTR method = NULL;
- BSTR url = NULL;
- VARIANT varFalse;
- VARIANT varEmpty;
- VariantInit(&varFalse);
- V_VT(&varFalse) = VT_BOOL;
- V_BOOL(&varFalse) = VARIANT_FALSE;
- VariantInit(&varEmpty);
- V_VT(&varEmpty) = VT_ERROR;
- hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
- if (SUCCEEDED(hr))
- {
- hr = CoCreateInstance(
- &CLSID_WinHttpRequest,
- NULL,
- CLSCTX_INPROC_SERVER,
- &IID_IWinHttpRequest,
- (LPVOID *)&req);
- if (SUCCEEDED(hr))
- {
- method = SysAllocString(L"GET");
- if (method != NULL)
- {
- url = SysAllocString(L"https://microsoft.com");
- if (url != NULL)
- {
- hr = req->lpVtbl->Open(req, method, url, varFalse);
- if (SUCCEEDED(hr))
- {
- hr = req->lpVtbl->Send(req, varEmpty);
- if (SUCCEEDED(hr))
- {
- hr = req->lpVtbl->get_ResponseText(req, &resp);
- if (SUCCEEDED(hr))
- {
- wprintf(L"\n\n%s\n\n", resp);
- }
- if (resp != NULL)
- {
- SysFreeString(resp);
- }
- }
- }
- SysFreeString(url);
- }
- SysFreeString(method);
- }
- req->lpVtbl->Release(req);
- }
- CoUninitialize();
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement