Programming
-
[펌] InternetSetOption - timeout 설정 버그 해결방법Programming/WINAPI 2009. 1. 5. 19:12
InternetSetOption 함수를 이용하여 timeout 시간을 설정해도 적용이 되지 않는 버그가 있습니다. 돌아다니는 이야기로는 Internet Explorer 6.0 버전 이상이면 문제가 없다는데 제가 테스트한 환경 ( Windows 2003서버, IE6 ) 에서는 문제가 발생하는 것으로 보아 문제가 완전히 해결된것이 아닌가 봅니다. 아래는 해당 버그 대안으로 쓰레드를 이용하여 timeout을 설정하는 방법을 설명한 내용입니다. ------------------------------------------------------------------------------------------------------------------ 출처 : http://support.microsoft.com/kb..
-
C#.NET 으로 전역후킹 프로그램 만들때 주의사항..(WH_GETMESSAGE)Programming/C,C++,C# 2008. 12. 12. 00:31
C#으로 전역후킹 프로그램을 구현하시려는 분이 계시면.. WH_GETMESSAGE는 지원이 되지 않는다는 점을 꼭 숙지 하시기 바랍니다. 이걸로 한 3일은 삽질을 했습니다.. 아래는 관련 내용입니다. Dear Alex, As far as I know to globally hook the unicode characters, we have to hook the WM_IME_COMPOSITION message, but as explained in this KB article: How to set a Windows hook in Visual C# .NET http://support.microsoft.com/default.aspx?scid=kb;en-us;318804 " Except for the WH_KEYBO..
-
[펌] 프로그램 버전 뜻 ( ALPHA, BETA, RTM, OEM 등 )Programming 2008. 11. 3. 12:26
알파버전, 볼륨버전, 리테일버전, OEM 버전 (OEM 판) 등등.. ========================================================= 1. ALPHA 버전 : 전문가의 테스트 및 수정/보완이 필요한 불안정버전. 2. BETA 버전(RC1, RC2) : 소수의 일반 사용자가 테스트하게 되는 불안정버전. 3-1. RTM 버전 : 시디로 제작하기 위한 원판 시디용 최초 안정버전. 3-2. OEM 버전 : 삼성, LG등의 대기업에서 자사PC에 맞게 드라이버 및 설정을 수정한 버전. 3-3. DSP 버전 : 용산 등 중소규모 PC사업자로부터 유통되는 저렴하지만 제약이 많은 버전. 4. VOLUME 버전 : corp버전이라고도 하며 기업용버젼이죠.... 인증 확인 절차가 생략..
-
함수 인자 유효성 검사는 누구의 책임인가?Programming 2008. 9. 4. 08:44
함수를 만들다보면 함수의 인자값에는 선행조건이 항상 붙습니다. 예를 들면 int func(char* a); 위와 같은 포인터형태는 보통 a != null 이라는 선행조건이 붙는데.. 이때 과연 해당 함수를 호출하는 호출자가 해당조건을 검사해야하는지 아니면 함수내에서 조건을 검사해야하는지 항상 함수를 만들때마다 고민을 하면서 쉽게 결정하지 못할때가 많았습니다. 그러던 어느날 "실용주의 프로그래머" 라는 책의 본문에 제가 고민하던 문제에 대한 도움이 될만한 내용보게 되었습니다. 누구의 책임인가? ( 실용주의 프로그래머 - p.193) 호출자와 호출되는 루틴 중에 선행조건을 확인하는 것은 누구의 책임인가? 언어의 일부로 구현되어 있는 경우, 대답은 어느 쪽도 아니다 이다. 선행조건은 호출자가 루틴을 부른 뒤,..
-
[펌] Windows에서 디버깅을 위해 만든 작은 메모리 덤프 파일을 읽는 방법Programming 2008. 4. 24. 13:40
Windows에서 디버깅을 위해 만든 작은 메모리 덤프 파일을 읽는 방법 이 문서가 적용되는 제품 보기. 기술 자료 ID : 315263 마지막 검토 : 2007년 12월 3일 월요일 수정 : 4.4 이 페이지에서 요약 작은 메모리 덤프 파일 덤프 유형 구성 작은 메모리 덤프 파일을 읽는 도구 디버깅 도구 설치 덤프 파일 열기 예제 명령 덤프 파일 검사 배치 파일을 통해 명령 단순화 요약 이 문서에서는 작은 메모리 덤프 파일을 검사하는 방법을 단계별로 설명합니다. 이 파일을 사용하면 컴퓨터가 응답을 중지한 이유를 확인할 수 있습니다. 위로 가기 작은 메모리 덤프 파일 작은 메모리 덤프 파일은 컴퓨터가 예기치 않게 중지된 이유를 확인할 수 있는 최소한의 유용한 정보를 기록합니다. 이 옵션을 사용하려면 부팅..
-
[펌] 타입정보(tlb,dll)를 이용한 C++에서의 컴포넌트(Component) 사용방법Programming/ActiveX 2008. 4. 22. 12:24
2. #import 전처리 명령어로 타입정보파일 참조 -> 프로젝트명.tlh, 프로젝트명.tli (output 디렉토리에 생성됨) 파일들이 자동 생성됨 -> 이 파일들은 클라이언트 프로그램 컴파일시 자동 참조된다. 프로젝트명.tlh 파일 -> 컴포넌트의 CLSID, 인터페이스에 대한 class 헤더, IID, 스마트 포인터의 구현을 포함 // 프로젝트명.tlh struct __declspec(uuid("ffaa434b-f6f5-4029-96fb-8876893c9eaa")) IBlockSocket; … _COM_SMARTPTR_TYPEDEF(IBlockSocket, __uuidof(IBlockSocket)); … struct __declspec(uuid("ffaa434b-f6f5-4029-96fb-8876..
-