void GetSystemInfo(LPSYSTEM_INFO lpSystemInfo);
시스템 정보를 얻어오는 함수
SYSTEM_INFO 구조체 내용 : http://msdn.microsoft.com/en-us/library/ms724958(VS.85).aspx
컴퓨터 이름 조사
BOOL WINAPI GetComputerName(__out LPTSTR lpBuffer /*버퍼*/ , __inout LPDWORD lpnSize /*크기*/);
컴퓨터 고유 이름을 얻는다.
참고주소 : http://msdn.microsoft.com/en-us/library/ms724295(VS.85).aspx
BOOL WINAPI GetUserName(__out LPTSTR lpBuffer /*버퍼*/ ,__inout LPDWORD lpnSize /*크기*/);
현재 로그인한 사용자의 ID
참고주소 : http://msdn.microsoft.com/en-us/library/ms724432(VS.85).aspx
컴퓨터 이름 바꾸기
BOOL WINAPI SetComputerName(__in LPCTSTR lpComputerName /*문자열*/);
레지스트리에 컴퓨터 이름이 저장되며 재부팅시 적용된다.
참고주소 : http://msdn.microsoft.com/en-us/library/ms724930(VS.85).aspx
시스템 색상 조사
DWORD WINAPI GetSysColor(__in int nIndex);
시스템 색깔을 얻는다.
참고주소 : http://msdn.microsoft.com/en-us/library/ms724371.aspx
BOOL WINAPI SetSysColors(int cElements /*개수*/ ,CONST INT* lpaElements /* 변경 대상 배열* / ,
CONST COLORREF* lpaRgbValues /* 색상 배열 */);
한꺼번에 여러 개의 시스템 색상을 변경.
WM_SYSCOLORCHANGE메세지 발생시 시스템 색상 즉시 적용
참고주소 : http://msdn.microsoft.com/en-us/library/aa453656.aspx
운영체제 버전 조사
BOOL WINAPI GetVersionEx(__inout LPOSVERSIONINFO lpVersionInfo);
현재 운영체제 정보를 얻는다.
OSVERSIONINFO 구조체 정보 : http://msdn.microsoft.com/en-us/library/ms724834(VS.85).aspx
DLL버전조사
HRESULT CALLBACK DllGetVersion(DLLVERSIONINFO *pdvi);
DLL파일 내부에 정의된 함수.
응용 프로그램에서는 인자 DLLVERSIONINFO *pdvi만을 이용한다.
참고주소 : http://msdn.microsoft.com/en-us/library/bb776404(VS.85).aspx
#include <commctrl.h>
#include <shlwapi.h>
DWORD MyDllGetVersion(char*dll)
{
HINSTANCE hInst;
DLLVERSIONINFO dvi;
DWORD Ver=0;
DLLGETVERSIONPROC pFunc;
HRESULT hr;
hInst=LoadLibrary(dll); // DLL을 Load
if (hInst== NULL)
return Ver;
pFunc=(DLLGETVERSIONPROC)GetProcAddress(hInst,"DllGetVersion");
// DLL에서 DllGetVersion함수를 찾는다.
if (pFunc!= NULL) {
memset(&dvi,0,sizeof(DLLVERSIONINFO));
dvi.cbSize=sizeof(DLLVERSIONINFO);
hr=(*pFunc)(&dvi); // Load된 DLL에서 찾은 DllGetVersion함수 실행.
if (SUCCEEDED(hr)) {
Ver=MAKELONG(dvi.dwMinorVersion, dvi.dwMajorVersion);
}
}
FreeLibrary(hInst);
return Ver;
}
'컴퓨터 공부 > Win32 API 프로그래밍' 카테고리의 다른 글
[5월 8일 2교시] 메모리 1 (0) | 2009.05.08 |
---|---|
[5월 8일 1교시] 시스템 정보 2 (0) | 2009.05.08 |
[5월 7일 2교시] 공통 컨트롤 3 (0) | 2009.05.07 |
[5월 7일 1교시] 공통 컨트롤 2 (0) | 2009.05.07 |
[숙제] 메세지 크래커 (0) | 2009.05.06 |