본문 바로가기
반응형

IT-개발,DB729

[개발/MFC] UTF8로 파일저장하기 [MFC] UTF8로 파일저장하기 CString strFilePath = dlg.GetPathName(); // UTF8로 컨버팅 int nAllocLen = WideCharToMultiByte (CP_UTF8, 0, strSaveData, -1, NULL, 0, NULL, NULL); CHAR * pBuffer = new CHAR [nAllocLen + 1]; memset (pBuffer, 0, nAllocLen); WideCharToMultiByte (CP_UTF8, 0, strSaveData, -1, pBuffer, nAllocLen + 1, NULL, NULL); // 파일로 저장 CFile file; file.Open (strFilePath, CFile::modeCreate | CFile::mo.. 2011. 3. 22.
[개발/VC++] 응용 프로그램 구성이 올바르지 않기 때문에 ... VC++ 개발을 하면서... 난감한 상황들이 한 두번이 아니다. 그 중 간단한 MFC 프로그램을 작성하는데 가상머신에서 실행하려니 에러가 난다. "응용 프로그램 구성이 올바르지 않기 때문에 이 응용 프로그램을 시작하지 못했습니다. 이 문제를 해결하려면 응용 프로그램을 다시 설치하십시오." 이런 에러가 난다. 좀 당황스럽다. VC++이 설치 되어 있지 않는 곳에서 실행하려면 도대체 무엇을 해줘야 하는가. 델파이에서는 런타임 라이브러리 팩키지 포함 옵션만 체크하면 문제가 없었는데 VC++에서는 그런 옵션이 없다... 알아보니 마이크로소프트에서는 manifest 관리를 위하여 debug/release 모드와 VC++버전별로 dll 파일을 별도로 하고 있다. 그런데... 이것을 함께 묶을 수 있다거나 함께 배포.. 2011. 3. 21.
[개발/MFC] 스트링 형변환 문자관련 함수 MBCS(multi-byte character set) : ASCII 코드 문자열을 쓰는 함수 WCS(wide character string) : 유니코드 문자열을 쓰는 함수 함수 제일 뒤에 ASCII를 나타내는 A와 Wide Character를 나타내는 W를 붙여서 구분함. 예) GetCurrentDirectoryA ... 예외) cout, wcout LPCTSTR(Long Pointer Constant TCHAR String) 여기서 TCHAR 라는 것은 typedef 유니코드가 설정되어 있으면 2바이트로(wchar_t) 아니면 기존 char 방식인 1바이트로(char) 한다는 것을 의미. LPSTR : 8비트 윈도우 캐릭터 스트링(string) 포인터 문자. LPCSTR : LPSTR.. 2011. 3. 19.
[개발/VC++] 실행중인 IE의 URL 구하기 IE 의 URL을 구하는 것은 생각보다 쉽습니다. 좋은 예제파일이 함께 있어서 올려봅니다. 따라해 보세요. 실행중인 IE의 URL 구하기 // URL을 추출합니다. ASSERT(m_spSHWinds != NULL); long nCount = m_spSHWinds->GetCount(); IDispatchPtr spDisp; for (long i = 0; i Item(va); SHDocVw::IWebBrowser2Ptr spBrowser(spDisp); if (spBrowser != NULL) m_ctrlUrlList.AddString(spBrowser->GetLocationURL()); } 출.. 2011. 3. 11.
[개발/VC++] 익스플로러에서 새창이 생성될때 그 창의 포인터를 얻는 방법 익스플로러에서 새창이 생성될때 그 창의 포인터를 얻는 방법 익스플로러에서 새창이 생성되면 Newwindow2이벤트가 일어납니다. 새로 생성된 익스플로러창의 포인터를 얻는 방법이 있나요? 제가 만든 브라우저가 포함된 다이얼로그 폼으로 Set하면 됩니다. 그러나 일반적으로 생성되는 새창의 포인터를 얻고 싶습니다. 즉, IWebBrowser2의 포인터를 얻고 싶습니다. 그 이유는 현재창에 이벤트를 sink시키고 새로운 창이 생기면 그 창도 이벤트를 sink시키려고 하는데 새로운 창의 IWebBrowser2포인터를 얻어 올 수가 없어요.. 그래서, 브라우저 인스턴스를 만들고 그 브라우저의 IWebBrowser2포인터의 Get_Application()함수를 이용하여 ppDisp에 넘겼는데 새로운창도 뜨고, 인스턴.. 2011. 3. 11.
[개발/VC++] IE 보호 모드에서 비보호 모드 프로세스 실행 IE 보호 모드에서 비보호 모드 프로세스 실행 UAC 환경(Windows Vista, Windows 7)의 IE7, IE8 보호모드에서 동작하는 ActiveX에서 실행 파일을 실행할 경우(브로커 프로세스) 비보호 모드로 열린다는 보안 경고창이 나온다. 이 문제를 해결하려면 아래와 같이 자동 권한 상승 정책을 레지스트리에 등록해주어야 한다. {347DAD60-9849-4921-89B6-16FA1B7936CC}는 임의의 GUID값이다. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{347DAD60-9849-4921-89B6-16FA1B7936CC}] "AppName"="실행 파일명" "AppPath"=".. 2011. 3. 11.
반응형