c++ cookie 읽기

C++ 2012. 6. 26. 17:41




#include "stdafx.h"

#include <Windows.h>

#include <Wininet.h>

#pragma comment(lib, "Wininet.lib")


#include <string>

#include <vector>

#include <iostream>

using namespace std;


int _tmain(int argc, _TCHAR* argv[])

{

// 테스트 환경 : IE 9, Windows 7

// 파일 쿠키 위치 : C:\Users\{사용자이름}\AppData\Local\Microsoft\Windows\Temporary Internet Files

// 파일 쿠키 이름 : Ex) cookie:user@msdn.com/


CHAR url[] = "http://msdn.com";

CHAR cookie_name[] = "omniID";

DWORD flag = INTERNET_COOKIE_HTTPONLY; //INTERNET_COOKIE_HTTPONLY 또는 INTERNET_COOKIE_THIRD_PARTY | INTERNET_FLAG_RESTRICTED_ZONE


// cookie name, value 사이즈 얻기

DWORD data_size = 0;

if (!InternetGetCookieExA(url, cookie_name, NULL, &data_size, flag, NULL)) {

cout << "last error : " << GetLastError() << endl;

return -1;

}


// cookie name, value 얻기

vector<CHAR> data(data_size, 0x00);

if (!InternetGetCookieExA(url, cookie_name, &data.at(0), &data_size, flag, NULL)) {

cout << "last error : " << GetLastError() << endl;

return -1;

}

// 결과값 : Ex) omniID=1334319711510_d658_6867_ffd7_c070ce00a221

cout << "cookie name=value : " << string(data.begin(), data.end()) << endl;


return 0;

}


'C++' 카테고리의 다른 글

wxRegEx 사용하여 특정 문자 치환  (0) 2012.07.11
std::regex  (0) 2012.07.05
atlconv.h code page 관련  (0) 2012.07.04
shorcut 바로가기 아이콘 만들기  (0) 2012.06.30
7z LZMA sdk 윈도우 visual studio 컴파일  (0) 2012.06.26
GUI : Windows 7 부터 지원되는 TaskBar progress bar  (0) 2012.06.22
WINDOWS-1251 로 인코딩 변환  (0) 2012.06.13
xml parser  (0) 2012.05.31