2009. 7. 4. 10:14

EXE 안에 외부의 데이터파일 저장하기

MSDN의 How Do I: Store External Data Files Within an EXE? 강좌를 정리한 것이다.
링크는 맨 아래 참고

이 강좌는 리소스에 XML 을 추가하고, 그 리소스를 다시 로드하는 방법에 대해서 설명하였다. 그 중에서 가장 중요한 코드 부분은 다음과 같다.

// Stuff contents of XML resource into the edit box

// FindResource, LoadResource, LockResource, SizeofResource

HRSRC hResource = FindResource(AfxGetResourceHandle(), MAKEINTRESOURCE(IDR_CUSTOMXML), _T("XML") );

HGLOBAL hMem = LoadResource(AfxGetResourceHandle(), hResource);

LPCSTR pResource = (LPCSTR) LockResource(hMem);

 

DWORD dwSize = SizeofResource(AfxGetResourceHandle(), hResource);

LPSTR pXMLBuf = new char[dwSize+1];

CopyMemory (pXMLBuf, pResource, dwSize);

pXMLBuf[dwSize] = '\0';

 

CString temp(pXMLBuf);

m_editXML.SetWindowText(temp);

 

// Cleanup

delete[] pXMLBuf;

FreeResource(hMem);




원본 : http://msdn.microsoft.com/ko-kr/visualc/bb851553(en-us).aspx