본문 바로가기
반응형

전체 글5190

[개발/MFC] 따라해보는 키보드 후킹 따라해보는 후킹 작성자 : 이은규 작성일 : 2003.11.02 홈페이지 : http://unkyulee.net/ 목차 1. 들어가는 글 2. 후킹이란? 3. 후킹 프로시져를 만들어 보자. 4. 후킹 프로시져를 시작, 종료하는 함수 5. 프로시져 내에서 다른 윈도우로 데이터 전송하기 6. 간단한 샘플 프로그램 1. 들어가는 글 "그냥 실행되는 걸 보고 싶었다." 예전에 했던 프로젝트의 내용 중에 사용자가 키보드로 입력하는 내용을 얻어와서 처리해야 되는 부분이 있었다. 이러한 기능을 구현하기 위해서는 후킹 이라는 기술을 사용해야 한다. 그래서 관련된 내용을 인터넷에서 찾아봤는데, 왜 이렇게 알아야 되는 내용이 많은지… 또 내용들은 어찌나 어렵던지… 후킹 구현한답시고 한달 내내 문서 읽고 인터넷 뒤지고 엄청.. 2011. 9. 30.
[개발/MFC] Windows Vista 준비 하기 - UAC(User AccountControl) 예제 코드는 Visual Studio 2005로 작성 하고 Windows Vista RC2 Build 5744 에서 테스트 되었습니다. 빌드 하시려면 Windows Vista RC2 5744 용 SDK가 필요 합니다. Windows XP가 나온지도 벌써 5년. 그 동안 말 많던 Windows Vista의 RTM출시도 이제 몇 일 안 남은 듯 합니다. 외부에 공개된 버전이 RC2(Build 5744)인데 5840이 돌아 다니는 걸 봐선 이제 몇 일 후면 RTM 이 나올 듯 하네요. Windows Vista는 바뀐 외형 만큼이나 변경 되거나 향상 된 부분들이 상당히 많습니다. 기존의 Application 들이 제대로 호환 될 수 있도록 확인을 해 봐야 할텐데요.( 슬슬 우리 개발자들 바뻐지겠습니다.) 그 동.. 2011. 9. 30.
[성공투자] EFSF 증액안 표결…그리스 ‘운명의 날’ [성공투자] EFSF 증액안 표결…그리스 ‘운명의 날’ 출처: 헤럴드경제, http://media.daum.net/foreign/view.html?cateid=1038&newsid=20110929112637022&p=ned&RIGHT_FOR=R5 그리스가 운명의 날을 맞았다. 독일 의회는 29일(현지시간) 유럽재정안정기금(EFSF) 증액안을 표결한다. 표결 결과에 따라 재정위기에 허덕이는 그리스에 대한 추가 지원 여부가 결정된다. 트로이카(유럽연합ㆍ유럽중앙은행ㆍ국제통화기금)의 실사도 이날 재개된다. 유럽발 재정위기가 사그라질지 아니면 증폭될지 전 세계 시장이 독일과 그리스를 주목하고 있다. ▶독일 EFSF 통과 낙관 못해 =EFSF 증액 여부는 유로존 위기 탈출 여부를 가늠할 중요한 이슈다. 지난 7월 .. 2011. 9. 29.
[개발/VC] ActiveX 관리자 권한 UAC Elevation [개발/VC] ActiveX 관리자 권한 UAC Elevation 관리자 권한: UAC(User Access Control) 아시다시피, Windows Vista부터 UAC(User Access Control)라는 개념이 도입 되었다. UAC는 한마디로, "시스템에 중대한 영향을 끼치는 작업을 하려면 적절한 권한을 가지고 있을 것"이라고 할 수있다. 보통때는 "일반 사용자 권한"으로 사용하다가, 새로운 어플리케이션의 설치나 레지스트리 편집처럼 시스템에 중대한 변경을 가하는 작업을 하기 위해서는 "관리자 권한"이 있어야 한다. 여기서 한단계 더 나아가, 인터넷 익스플로러는 "보호모드(Low IL)"에서 동작하게 되었고, 이 위에서 동작하는 ActiveX도 덩달아 많은 제약을 받게 되었다. 이러한 변화는 최.. 2011. 9. 29.
[개발/MFC] 윈도우즈 에러코드 GetLastError(), System Error Codes (0 - 6118) [개발/MFC] 윈도우즈 에러코드 GetLastError(), System Error Codes (0 - 6118) 0 0x0000 작업을 완료했습니다. 1 0x0001 올바르지 않은 함수입니다. 2 0x0002 지정한 파일을 찾을 수 없습니다. 3 0x0003 지정한 경로를 찾을 수 없습니다. 4 0x0004 파일을 열 수 없습니다. 5 0x0005 접근이 거부되었습니다. 6 0x0006 잘못된 핸들입니다. 7 0x0007 저장 컨트롤 블록이 손상되었습니다. 8 0x0008 저장 공간이 부족해서 이 명령을 수행할 수 없습니다. 9 0x0009 저장 컨트롤 블록 주소가 올바르지 않습니다. 10 0x000A 환경이 올바르지 않습니다. 11 0x000B 잘못된 형식의 프로그램을 로드하려고 했습니다. 12 0.. 2011. 9. 28.
[개발/VC] 웹페이지 로드될 때까지 기다리기 [개발/VC] 웹페이지 로드될 때까지 기다리기 m_pWebBrowser->Navigate(...); 로 페이지 호출 후 페이지가 로딩 완료될 때까지 기다리는 함수이다. bool CMyInternetExplorer::WaitTillLoaded (int nTimeout) { READYSTATE result; DWORD nFirstTick = GetTickCount (); do { m_pWebBrowser->get_ReadyState (&result); if (result != READYSTATE_COMPLETE) Sleep (250); if (nTimeout > 0) { if ((GetTickCount () - nFirstTick) > nTimeout) break; } } while (result != RE.. 2011. 9. 27.
[개발/VC] ActiveX에서 키, 탭키등을 먹게 하기 [개발/VC] 엑티브엑스에서 키, 탭키등을 먹게 하기 //////////////////////////////////////////////////////////////////////// // ActiveX Control내 키 이벤트 문제 // 1. OnCreate에서 // OnActivateInPlace (TRUE, NULL); // == UI-Activate the control // 2. PreTranslateMessage 추가 // 3. OnMouseActivate 추가 BOOL CActiveApprovalCtrl::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class swit.. 2011. 9. 27.
[개발/VC] ActiveX 컨트롤에서 자신을 로딩한 웹브라우저 포인터 구하기 [개발/VC] ActiveX 컨트롤에서 자신을 로딩한 웹브라우저 포인터 구하기 웹브라우저 컨트롤의 포인터를 넘깁니다.. IWebBrowser2* CActiveXGetIETestCtrl::GetIWebPointer() { // TODO: Replace the following code with your own drawing code. HRESULT hr ; IOleContainer *pIContainer = NULL ; IWebBrowser2 *pIWeb = NULL ; IServiceProvider *pISP = NULL ; // Get IOleClientSite interface pointer. LPOLECLIENTSITE pIClientSite = GetClientSite() ; // Get IOle.. 2011. 9. 27.
[개발/VC] ActiveX 보안코드 삽입 [개발/VC] ActiveX 보안코드 삽입 디지털 서명해도 아래 보안 코드를 삽입하지 않으면 다른 컴퓨터에서 엑티브엑스 다운받을때 받지 못하는 수가 있습니다. 그니까 그냥 해주면 좋을듯... BOOL CActiveCoolCtrl::CActiveCoolCtrlFactory::UpdateRegistry(BOOL bRegister) { // TODO: Verify that your control follows apartment-model threading rules. // Refer to MFC TechNote 64 for more information. // If your control does not conform to the apartment-model rules, then // you must modi.. 2011. 9. 27.
반응형