Visual C++ 버젼별 배포방법 DarkKaiser, 2008년 11월 14일2023년 9월 6일 출처 : http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNO=20&no=8187&page=1 제가 볼려고 정리한건데요. (다른분들 글도 인용좀 했는데 출처가 어디였는지;;;;)잘못 알고 있는거도 있을수 있습니다. 고수님들 잘못된거 답글 부탁드립니다. ㅎ 배포전에 Dependency를 이용 꼭 필요한 파일의 목록을 확인한다.(8버젼 부터는 안먹히기도 하나 그래도 꼭 확인한다)VC에 있는 Dependency툴은 단일파일로 실행되고 한번만 실행해주면 윈도우 탐색기 컨텍스트 메뉴에 자동으로 View Dependencies를 Continue Reading
메신저의 자리비움 기능 구현.. DarkKaiser, 2008년 10월 19일2023년 9월 5일 메신저의 자리비움 기능을 구현하려면 보통 후킹을 이용한다. 하지만 윈도우2000 이상부터는 윈도우에서 이 기능을 API를 통해서 제공해준다. API 이름은 GetLastInputInfo().. 문제는 윈도우2000 이상에서만 사용할 수 있으므로, 동적으로 함수 포인터를 얻어와서 사용할 것. 함수 포인터를 얻기 실패하였을 때(윈9x 계열일 때)는 기존의 후킹 방법으로 하면 되겠다. GetLastInputInfoSample.zip Continue Reading
코드사이닝 자동화 DarkKaiser, 2008년 10월 19일2023년 9월 6일 출처 : http://aego.pe.kr/AutomateCodeSigning.html#toc1 비스타 운영체제가 실행 가능한 파일 포맷(PE:.exe, .dll, .ocx)들의 코드사이닝을 강제(사용자입장에서 웬지 꺼림칙하게 느끼게)하기 시작하면서 어쩔 수 없이 기존의 배포했던 프로그램의 실행파일을 코드사이닝 처리해야 하게 되었다. 한 두개의 파일 코드사이닝이야 .bat 파일을 만들어서 하거나 아니면 직접 커맨드라인에서 signcode.exe 위저드를 통해서 처리해버려도 되지만 수백개에 달하는 파일을 처리해야 되는 경우라면 Continue Reading
xx을(를) 찾을 수 없거나 마지막 증분 링크에 의해 빌드되지 않았습니다 DarkKaiser, 2008년 10월 12일2023년 9월 5일 출처 : http://codecrue.egloos.com/782885 VisualStudio 2005 에서 컴파일하던중 아래와 같은 에러를 만나서 해결방법을 모색하던중 원인을 알아내어 올립니다. LINK : ../../Bin/Debug/xxx_d.dll을(를) 찾을 수 없거나 마지막 증분 링크에 의해 빌드되지 않았습니다. 전체 링크를 수행하고 있습니다. 매니페스트를 포함하고 있습니다… 컴파일환경 설정에서 ‘증분 링크 사용’ 에 관한 옵션 설정이 있습니다. 증분링크? 증분링크가 뭘까? 일반적으로 사용되지 Continue Reading
시스템내에 실행중인 IE의 모든 URL 얻기 DarkKaiser, 2008년 10월 12일2023년 9월 5일 참고 : http://support.microsoft.com/default.aspx?sd=msdn&scid=kb;en-us;176792 // URL을 추출합니다. ASSERT(m_spSHWinds != NULL); long nCount = m_spSHWinds-GetCount(); IDispatchPtr spDisp; for (long i = 0; i < nCount; i++) { _variant_t va(i, VT_I4); spDisp = m_spSHWinds-Item(va); SHDocVw::IWebBrowser2Ptr spBrowser(spDisp); if (spBrowser != NULL) m_ctrlUrlList.AddString(spBrowser-GetLocationURL()); } GET_IEs_URL.zip Continue Reading
Win9x 에서 유니코드 사용가능하게 프로그래밍… DarkKaiser, 2008년 10월 12일2023년 9월 5일 요즘에는 윈도우9x을 기준으로 프로그래밍 하진 않을 것이다.다만 윈도우2000 이상을 기준으로 유니코드방식으로 작성한 프로그램을 윈도우9x에서의 호환성 차원에서 수정하는 정도일 것인데, 유니코드라는 녀석때문에 윈도우9x 계열과 부딪히게 된다. 윈도우 9x 계열에서 유니코드 방식으로 작성한 프로그램을 실행하면 프로그램이 실행되지 않는다. 이를 해결하는 방법은 아래와 같다. Compiling Your Application with the Microsoft Layer for Continue Reading
Vista에서 알려진 경로를 구하는 방법… DarkKaiser, 2008년 10월 11일2023년 9월 6일 기존 XP에서는 SHGetFolderPath 함수를 이용하면 가능했지만 Vista에서는 SHGetKnownFolderPath 함수를 사용해야 한다. 아직 Compatibility를 위해서 기존 함수도 지원한다고 하지만 Recommand가 아니니 바꿔야 잠재된 문제를 앱앨 수 있겠죠. if (_isVista) { WCHAR *pSavePath = NULL; HMODULE shell32module = GetModuleHandle("shell32.dll"); // Defined in the platform SDK for Vista const DWORD KF_FLAG_CREATE = 0x00008000; Continue Reading
컴파일 하는 시점에 실행파일 아이콘 변경하기 DarkKaiser, 2008년 9월 6일2023년 9월 6일 간혹 컴파일 하는 시점에 실행 파일의 아이콘을 다른 아이콘으로 변경하고자 하는 경우가 있다.저 같은 경우는 업체별로 실행파일의 아이콘을 달리하여야 할 경우인데.. 이 때 아래와 같이해 주면 된다. 우선 VC++ 프로젝트에서 .rc 파일의 ICON 섹션을 보면 아래와 같은 내용이 있다. Icon with lowest ID value placed first to ensure Continue Reading
툴팁 생성시 마우스가 오버되었을 때 항상 나오도록 하기 DarkKaiser, 2008년 9월 6일2023년 9월 6일 툴팁 컨트롤 생성시 다음의 속성을 주도록 한다. TTS_ALWAYSTIP툴팁 생성시 위의 속성을 주게되면 툴팁의 윈도우가 포커스를 안가지고 있더라도 항상 툴팁이 나온다.안주게 되면 포커스를 잃어버리면 툴팁이 나오다 안나오다 하는 현상이 발생한다. Continue Reading
msvcrt.dll, msvcr71.dll, msvcr80.dll 그리고 WinSxS DarkKaiser, 2008년 9월 6일2023년 9월 6일 출처 : http://somma.egloos.com/3020481 WinSxS 는 언제 생긴건지…GAC (Global Assembly Cache) 가 Native 에도 있었다니…지나치다 보기는 했는데 오늘에야 뭐 하는 넘인지 알았네요.(예전에 미친감자님 블로그에서 보긴 했지만 당장 필요하지 않으면 잘 안보게 되서..쿨럭..) 만일 전에 .NET 공부를 해두지 않았으면 manifest 니 GAC 니 하는 개념을 몰라서 한참 헤맬뻔 했군요. Continue Reading