본문 바로가기
반응형

분류 전체보기798

스레드/프로그레스바/스레드 실행동안 다른작업도 가능하도록 #include #include #include LRESULT CALLBACK WndProc(HWND hwnd,UINT iMessage,WPARAM wParam,LPARAM lParam); //윈도우 환경에서의 스레드 함수의모양 - 외우세요 DWORD WINAPI foo(void *p) { HWND hPrg=(HWND)p; //WM_LBUTTONDOWN의 복사 { for(int i = 0 ; i < 1000; ++i) { SendMessage(hPrg, PBM_SETPOS,i,0); //프로세스 전진 Sleep(20); } } return 0; } TCHAR lpszClass[] = TEXT("first"); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPr.. 2007. 1. 22.
프로세스에서 B프로세스로 핸들값 넘기는 기법 /* 1. 윈도우를 만들때 시스템 입장에서는 메모리에 잡힌 윈도우 구조체이다. 2. 펜이 필요해 만들때에도 팬은 시스템 입장에서는 하나의 구조체이다. 3. 파일을 읽거나 쓸때에도 하나의 구조체이다. 윈도우와 관련된 객채를 User Object이다. - 핸들이 전형적이다. 펜과 같이 그래픽관련 객체를 GDI Object이다. -핸들이 지역적이다. 파일과 같이 시스템적으로 관련된 객체를 Kernel Object라 한다. -한정적 핸들 or 상대적 핸들 1. OS가 만드는3가지 객체의 종류 ↑ 2. 핸들의 특징 ↑ 3. 모든 커널객체의 공통적인 특징 (KO - Kernel Object) 1. 보안이라는 속성을 갖는다. 2. 시그널이라는 속성을 같는다. 3. 참조개수가 있다. 4. 이름이 있다. 5. 소유자는 .. 2007. 1. 22.
에러처리 기법 /* 1. 실행가능한 파일을 프로그램이라한다. 2. 프로그램이 하나 실행되면 하나의 프로세스가 된다. 같은 프로그램이라도 2번실행되면 프로세스는 2개가 된다. 3. 프로세서는 CPU를 말한다. 4. 프로세스 하나당 쓰레드 하나가 생성된다. 5. 에러 전역변수는 프로세스당 하나라서 스레드가 2개일때 하나의 스레드가 처리하기 전에 다른 스레드가 에러를 발생하면 먼저 에러를 발생한 스레드의 에러는 알수가 없다. 6. 그레서 스레드당 하나의 에러전역변수를 지원해주는것이 있다. GetLastError(); 7. 브레이크 포인트(F9)하고 서치창에 @err과 @err,hr를 넣으면 에러를 알수 있다. 8. 성공시에도 GetLastError호출할때가 있다. */ #include #include #include //함.. 2007. 1. 22.
소켓 옵션 SetSockOpt(); 1. 멀티캐스트 그룹가입 IP_ADD_MEMBERSHIP 2. TP_TTL 1로 놓으면 라우터 하나만 지나면 패기된다. 3. SO_REVSE_ADDR -> 윈도우에서 잘 사용하지 않음... #define WIN32_LEAN_AND_MEAN // windows.h 에서 자주 사용하지 않은 것은 컴파일에서 제외 한다. // winsock2.h외의 충돌을 막아 준다. #include #include #include #pragma comment(lib, "ws2_32.lib") void main() { WSADATA wsadata; //if(WSAStartup(0x0202, &wsadata) != 0)//0x0202는 뒤에서부터 읽어서 2.2버젼을 쓰라는 이야기다. if(WSAStart.. 2007. 1. 22.
반응형