반응형 전체 글5691 [개발/VC] 맵(Map)클래스 사용법 [C++]맵(Map) Class 사용법 [출처] 인터넷 1. 맵(Map)이란? 맵(Map)은 set, multiset, multimap등과 같이 STL이 제공하는 자료형 중 하나이다. 2. 맵(Map)의 특징 첫번째, 두 개의 요소가 한 쌍을 이루어 하나의 자료를 이룬다. 첫 번째 요소는 first로써 인덱스이고, 두 번째 요소는 second로써 데이터이다. 그러므로, 인덱스와 데이터가 분리된 상태이며 독립적으로 자료형을 지정해줄 수 있다. 두번째, 반복자(iterator)와 배열 첨자를 사용하여 접근할 수 있다. 세번째, 자동적으로 정렬된 상태를 유지한다. 만약에 정렬할 수 없다면 출력 순서는 먼저 입력된 것이 가장 나중에 출력된다. 네번째, 인덱스가 중복되서 추가를 한다면, 기존의 데이터는 없어지고 .. 2011. 9. 22. [개발/MFC] HINSTANCE 구하기 1. hWnd를 알면, 그걸로 hInstance를 얻어올 수 있습니다. GetWindowLong / GetWindowLongPtr에서 GWLP_HINSTANCE 2. AfxGetApp() 를 통해서 App 의 포인터를 얻어온 다음에 m_instance 멤버변수 3. HINSTANCE hInst= GetModuleHandle(NULL); 콘솔에서 윈도 뛰울때 자주 씁니다. 4. HINSTANCE AfxGetInstanceHandle( ); 5. dll의 메모리를 이용한 HINSTANCE 구하기 종종 DLL 내부에서 window를 띄워야하시겠다는 분이 있어서 찾던중에 Detecting a HMODULE/HINSTANCE Handle Within the Module You're Running In 이라는 co.. 2011. 9. 20. [개발/MFC] 중복실행 방지하기 [개발/MFC] 중복실행 방지하기 TCHAR szAppName[] = _T("sbrich"); HANDLE hMutex = NULL; bool IsSecondInstance() { bool isSecondInstance= false; hMutex= CreateMutex(NULL, NULL, szAppName); int iLastError = GetLastError(); if(hMutex && (ERROR_ACCESS_DENIED == iLastError || ERROR_ALREADY_EXISTS == iLastError)) { ReleaseMutex(hMutex); hMutex= NULL; isSecondInstance= true; } return isSecondInstance; } int main() .. 2011. 9. 20. [개발/MFC] GetLastError(), System Error Codes (0-999) GetLastError()함수로 얻게 되는 에러코드로 아래으 에러코드에 대한 에러 메세지의 의미를 알 수 있다. **System Error Codes (0-499) The following table provides a list of system error codes ( errors 0 to 499). They are returned by the GetLastError function when many functions fail. To retrieve the description text for the error in your application, use the FormatMessage function with the FORMAT_MESSAGE_FROM_SYSTEM flag. Table with 2 c.. 2011. 9. 20. [개발/VC] IERefreshElevationPolicy() 함수 인터넷 익스플로러 보호모드에서 Internet Explorer의 Protected Mode(보호모드)에서 activeX나 BHO 설치 후 레지스트리 값 수정후 IE를 재시작해야 하는 경우가 있는데 IERefreshElevationPolicy() 함수를 사용하면 그렇게 하지 않아도 된다고 합니다. UAC 환경(Windows Vista, Windows 7)의 IE7, IE8 보호모드에서 동작하는 ActiveX에서 실행 파일을 실행할 경우(브로커 프로세스) 비보호 모드로 열린다는 보안 경고창이 나타납니다. 이 문제를 해결하려면 아래와 같이 자동 권한 상승 정책을 레지스트리에 등록해주어야 합니다. {347DAD60-9849-4921-89B6-16FA1B7936CC}는 임의의 GUID값입니다. [HKEY_LOCAL_MACHINE\SOFTWAR.. 2011. 9. 20. [개발/MFC] 비주얼스튜디오 디버깅 메세지 출력하기 ///////////////////////////////////////////////////////////////////////////// // 디버그 로그 ///////////////////////////////////////////////////////////////////////////// void DebugLog(const char *format, ...) { va_list vl; FILE *pf = NULL; char szLog[512] = {0,}; va_start(vl, format); wvsprintf(szLog, format, vl); va_end(vl); // sends a string to the debugger for display. show me the visual studio o.. 2011. 9. 7. [IT/보안] 악성코드 진단 종류 [IT/보안] 악성코드 진단 종류 Rootkit(루트킷) 자기자신 혹은 다른 악성코드가 사용자로부터 발견되지 않도록 은폐기능을 수행하는 놈 - Backdoor (백도어) 공격자가 감염된 사용자의 시스템에 접속할 수 있게 하는 놈 - Trojan (트로이 목마) 자체적인 확산기능은 없고, 사용자 몰래 악의적인 기능을 수행 - Trojan-Dropper (트로이목마-드롭퍼) 악성코드에 포함된 추가적인 악성코드를 설치 - Trojan-Exploit (트로이목마-익스플로잇) 운영체제나 특정 프로그램의 취약점을 이용하여 공격하는 악성코드 - Trojan-Downloader (트로이목마-다운로더) 추가적인 악성코드를 인터넷이나 네트워크를 통하여 다운로드하여 설치 - Trojan-PWS (트로이목마-패스워드스틸러) .. 2011. 9. 7. [작업] 악성코드 분류를 회피하기 악성코드에 한 번 잡히게 되면 악성코드 오진 신고를 하거나 새로 만들게 된다. 이 때 여러가지 기술이 있는데... 회피하는 방법 여러가지를 만들어 둬야겠다. 알약을 보면 기득권 같다..권한은 많고 책임은 적은 악성코드 분류 정보가 없다... 마음대로 진단한다는 건지... ㅜㅜ; 2011. 9. 6. [개발/delphi] 중복 실행 방지 델파이로 중복 실행 방지 구현 소스 골라서 쓰자. =============================================================== #1 program Project; uses Forms, Windows, Dialogs, uMain in 'uMain.pas' {frmMain}; var hMutex : THandle; {$R *.res} begin hMutex := CreateMutex(nil, true, 'MajorProj'); // your mutex If (hMutex 0) and (GetLastError = 0) Then Begin Application.Initialize; Application.MainFormOnTaskbar := true; Application.C.. 2011. 9. 1. [성공투자] 경기회복이냐 경기후퇴냐? 또 하나의 변곡점 버락 오바마 미국 대통령이 고용 개선을 포함한 새로운 경기 부양책을 오는 7일 오후 8시 내놓을 예정이다. 이 소식은 경기후퇴 우려에 대한 기술적 반등으로 올라온 주식시장 흐름에 호재가 될지 악재가 될지 많은 관심을 받고 있습니다. 며칠간은 기대감으로 글로벌 주식시장이 상승중인데요.... 어떻게 될지 궁금합니다... 그리고 "1일 통계청은 8월 소비자물가 상승률이 전월비 5.3%로 3년만에 최고를 기록했다고 밝혔다. 전월비로는 0.9% 올라 7개월만에 가장 큰 폭으로 상승했다. 올들어 1월부터 7월까지 내리 4%를 상회하더니 이제는 5%대로까지 올라섰다"라고 하니... 금리인상은 당연히 해야될 수순이 되었고 가계빚, 대출금리에도 영향을 주게 생겼다. 소백촌닭 2011. 9. 1. [개발/MFC] error LNK2001: "public: ... " ... 외부 기호를 확인할 수 없습니다. 위의 배너는 테스트 삼아 넣어본다. [개발/MFC] error LNK2001: "public: ... " ... 외부 기호를 확인할 수 없습니다. 비주얼 스튜디오 VC++ 개발을 하다가 보면 컴파일할 때 이런 에러를 자주 접하게 될 것 같다. 그냥 봐서는 뭐가 뭔지 모른다. 힌트로는 "외부 기호" 즉, include 된 것이 빠졌거나 프로젝트에 관련 함수선언과 정의가 포함되지 않아서 이다. 에러 메시지 중에 관련 함수가 있는 파일을 프로젝트에 추가하고 컴파일을 해보자. 에러가 해결될 것이다. 2011. 8. 26. [경제] 네덜란드는 보도에 벽돌 까는 방법은? 네덜란드는 보도에 벽돌 까는 방법은? 기발하다. 엄청난 경제 효과를 가져올 방법이다. 매년 지차제들이 앞장서서 예산을 낭비하고 있다. 서민들이 어렵게 낸 세금을... 다음해에 예산을 더 많이 받기 위해서 쓸데 없는 곳, 즉 길거리의 보도블록을 교체하고 있다. 실제로 도로 정비는 제대로 안하면서 말이다. 2011. 8. 26. 이전 1 ··· 388 389 390 391 392 393 394 ··· 475 다음 반응형