Platform/메모리
-
DLL - MFCPlatform/메모리 2009. 5. 2. 14:36
DLL 찾는 순서 DLL을 호출한 EXE 파일이 있는 디렉토리 프로세스의 현재 디렉토리 윈도우 시스템 디렉토리 윈도우 디렉토리 PATH 환경 변수에 지정된 디렉토리 extern "C" __declspec(dllexport) extern "C" __declspec(dllimport) LoadLibrary() FreeLibrary() GetProcAddress() GetModuleHandle() AfxSetResourceHandle() AfxGetResourceHandle() AFX_MANAGE_STATE(AfxGetStaticModuleState()) MFC 라이브러리를 DLL로 링크하는 일반 DLL의 경우 DLL의 리소스가 올바로 참조되도록 한다. AfxGetAppModuleState() 일반 DLL 외..
-
TLS - Win32Platform/메모리 2009. 5. 1. 23:16
TLS TlsAlloc() 새로운 TLS 슬롯(?)을 할당 스레드 별로 해당 슬롯에 ULONG_PTR 크기의 공간(로컬 저장소)을 사용할 수 있다. TlsFree() TLS 슬롯을 해제 TlsSetValue() 호출한 스레드 로컬 저장소의 지정된 슬롯에 값을 설정 TlsGetValue() 호출한 스레드 로컬 저장소의 지정된 슬롯에서 값을 가져온다. _declspec(thread) 동적으로 로드되는 DLL에는 사용할 수 없다. 참조 사이트: http://support.microsoft.com/kb/94804/ko http://www.debuglab.com/knowledge/tls.html http://www.redwiki.net/wiki/wiki.php/Thread%20Local%20Storage
-
DLL - Win32Platform/메모리 2009. 2. 14. 21:53
DLL 탐색 순서 응용프로그램과 같은 디렉토리 현재 작업 디렉토리 시스템 디렉토리 Windows 디렉토리 PATH 환경 변수 LoadLibrary() LoadLibraryEx() FreeLibrary() GetProcAddress() DisableThreadLibraryCalls() GetModuleFileHandle() GetModuleHandle() #define _WIN32_WINNT 0x0500 #define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers /* or #define WS_EX_LAYERED 0x00080000 #define LWA_COLORKEY 0x00000001 #define LWA_ALPHA 0x00000002 ..
-