목록개발 (27)
Mafa Dev
#include LRESULT CALLBACK WndProc(HWND hwnd,UINT iMsg, WPARAM wParam , LPARAM lParam); int WINAPI WinMain(HINSTANCE hInstance , HINSTANCE hPrevInstance , LPTSTR lpszCmdLine , int nCmdShow) { HWND hwnd; MSG msg; // 윈도우 클래스 생성 WNDCLASS WndClass; // 윈도우 클래스 타입인 WNDCLASSEX의 변수를 만들고 각 필드에 값 부여 WndClass.style = CS_HREDRAW | CS_VREDRAW; // 윈도우의 크기를 변경하면 다시 그리는 형태의 윈도우 WndClass.lpfnWndProc = WndProc; //..
콘솔 기반의 C언어 프로그램은 메인 함수를 기본으로 , 필요에 따라 다른 함수를 추가합니다. 반면 , 윈도우 프로그램은 크게 메인 부분과 메시지 처리 부분으로 나눕니다. 메인 부분에서는 윈도우를 만들고 화면에 윈도우를 띄우며 윈도우에서 발생하거나 응용 프로그램과 관련해 발생하는 모든 메시지를 전송하는 역할을 합니다. 엄밀히 말하면 메시지는 이벤트가 발생하면 오는 신호이고 , 신호는 윈도우 커널이 보냅니다. 메인 부분은 이를 하나씩 받아서 메시지 처리 부분으로 보냅니다. 메시지 처리 부분은 메시지를 받아 메시지에 약속된 반응을 보입니다. 메시지에는 마우스의 움직임이나 버튼 클릭에 따른 메시지, 키보드 눌림에 따른 메시지, 다양한 컨트롤에서 발생하는 메시지 , 메뉴에서 발생한느 메시지 등이 있습니다. 콘솔 ..
/////// safeDlg.h 에 선언 ///////// int drive, curdrive; static char path[_MAX_PATH]; /////// safeDlg.cpp 에 선언 ////// int i=1; char k='\0'; char* park1 = ":\\security.exe"; char q[100]; 맽 밑에다가 그냥 추가시켜주면 된다. BOOL CsafeDlg::OnDeviceChange( UINT nEventType, DWORD dwData ) { DEV_BROADCAST_HDR *pDevBroadcastHdr = (DEV_BROADCAST_HDR*)dwData; DEV_BROADCAST_PORT *pDevBroadcastPort = NULL; CString sStorage ..
// crt_getdrive.c // compile with: /c // Illustrates drive functions including: // _getdrive _chdrive _getdcwd // #include #include #include #include int main( void ) { int ch, drive, curdrive; static char path[_MAX_PATH]; // Save current drive. curdrive = _getdrive(); printf( "Available drives are:\n" ); // If we can switch to the drive, it exists. for( drive = 1; drive Available drives are: A:..
WinExec 특정 어플리케이션을 실행한다. Note 16비트 윈도우즈에만 제공된다. 어플리케이션은 CreateProcess 함수를 사용하는 것이 좋다. UINT WINAPI WinExec( LPCSTR lpCmdLine, UINT uCmdShow ); Parameters lpCmdLine [in] 실행될 어플리케이션에 대한 명령어 라인이다(파일 이름과 추가적인 파라미터). lpCmdLine 파라미터에 있는 실행 가능한 파일의 이름이 경로를 가지고 있지 않으면, 시스템은 다음의 절차 대로 실행가능한 파일을 찾는다. 1. 어플리케이션이 실행된 경로 2. 현재 디렉토리 3. 윈도우즈 시스템 디렉토리. GetSystemDirectory 함수는 이 디렉토리의 경로를 나타낸다. 4. 윈도우즈 디렉토리. GetWi..
1.WM_DEVICECHANGE 이벤트를 사용하려면?? SD혹은 USB장치 등이 단말기로부터 분리되면 , 시스템은 윈도우에 WM_DEVICECHANGE 메시지를 전달합니다. API 프로그래밍 에서는 PreTranslateMessage 에서 사용하면 되지만 MFC에서는 PreTranslateMessage에서 잡히지 않습니다. DefWinProc에서 잡아주시거나 혹은 ON_WM_DEVICECHANGE() 매크로를 이용하여 잡아야 합니다. 현재 비주얼 스튜디오에서는 위의 매크로를 지원 해주기 때문에 바로 사용 할수 있으나 , EVC (Visual Studio같은 컴파일러 프로그램) 에서는 메시지가 정의되어 있지 않으므로 상수값을 지정해 주거나 따로 정의하여 쓰셔야 합니다. 2. 메시지 핸들러 설치하는 방법 1..