성공적인 프로젝트를 위한 다국어 리소스 준비-1 DarkKaiser, 2007년 7월 17일2023년 9월 6일 출처 : 데브피아 석재헌님의 글http://www.devpia.com/Forum/BoardView.aspx?no=7281&ref=7281&page=2&forumname=vc_lec&stype= 1. 다국어 리소스 국내뿐만 아니라 해외에서도 널리 쓰이는 소프트웨어가 되기 위해서는 주체가 누구든지 로컬라이징(Localizing-이하 ‘지역화’)을 해 주든지 과정이 필요합니다. 이 때 개발자가 만든 프로그램이 이러한 지역화에 준비되어 있지 않으면, 개발자 뿐만 아니라 많은 사람들이 피곤하게 됩니다. (특히, 개발자만 죽어나는 경향이 있습니다.) 그러나, 다국어 리소스에 Continue Reading
웹페이지의 MFC 컨트롤을 패키지로 만드는 방법 DarkKaiser, 2007년 7월 17일2023년 9월 6일 Activex를 CAB 파일로 만들때 필요한 inf파일 작성법 http://support.microsoft.com/default.aspx?scid=kb%3Bko%3BKR167158 Continue Reading
오피스 파일 구별하기 DarkKaiser, 2007년 7월 17일2023년 9월 4일 /* Word Document (*.doc) : {00020906-0000-0000-C000-000000000046} */ static const GUID CLSID_WORD = { 0x00020906, 0x0, 0x0, { 0xC0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x46 }}; /* Excel Worksheet (*.xls) : {00020820-0000-0000-C000-000000000046} */ static const GUID CLSID_EXCEL = { 0x00020820, 0x0, 0x0, { 0xC0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, Continue Reading
Web으로부터 ActiveX 컨트롤을 다운받아서 실행하는 VC 예제 DarkKaiser, 2007년 7월 17일2023년 9월 6일 VC에서도 Internet Explorer처럼 웹에서 ActiveX를 다운로드 받아서 실행(ocx, cab)시키는 방법이 있더군요. 기본적으로 IBindStatusCallback을 사용하여 다운로드를 진행하고 CoGetClassObjectFromURL()함수를 이용하여 ClassFactory를 얻어오게 되어있습니다. 다운로드가 완료되면 CWnd::CreateControl()을 이용하여 CWnd에 Attatch되는군요. urlobj.zip Continue Reading
URL을 파싱하자 DarkKaiser, 2007년 7월 17일2023년 9월 6일 1. 요약 AfxParseURL()을 이용하여 URL을 파싱할 수 있다. 2. 본문 AfxParseURL()은 URL을 파싱하기위한 MFC 함수입니다. 사용법은 AfxParseURL의 인자로 URL의 문자열을 입력하면 서버와 프로토콜과 포트를 파싱해서 넘겨줍니다. BOOL AFXAPI AfxParseURL( LPCTSTR pstrURL, DWORD& dwServiceType, CString& strServer, CString& strObject, INTERNET_PORT& nPort ); 여기까지만 하면 너무 허전하죠… 그래서 MFC를 쓰지않는 프로그램에서는 이런 기능을 Continue Reading
VC++6 VC.NET용 STL 에러 메시지 해독기의 빠른 설치 가이드 DarkKaiser, 2007년 7월 17일2023년 9월 6일 VC++6_VC.NET용_STL_에러_메시지_해독기의_빠른_설치가이드.zip Continue Reading
new가 실패했을때의 처리 DarkKaiser, 2007년 7월 17일2023년 9월 6일 데브피아 김용현님의 글 보통 프로그래밍을 할때 new에 대한 실패 처리는 해주지 않고 코딩을 합니다. 문자열이나 new 를 쓰지 않는 어플리케이션은 없다고 해도 틀린말은 아니고 다음과 같은 코드는 일반적으로 많이 쓰이는 코드 입니다.char* szName = new char[128]; new 에 대한 에러 처리는 하지 않습니다. 만일, 아주 큰 new 를 많이 해야 Continue Reading
STL 제네릭 알고리즘 정리 DarkKaiser, 2007년 7월 17일2023년 9월 6일 accumulate() 기본적으로, 컨테이너의 요소들을 세 번째 인수로 지정한 초기값에 모두 더합니다. 기본 덧셈을 오버라이딩하기 위해 이항 연산을 넘길 수 있습니다. #include <numericiresult = accumulate(ia, ia + 9, 0); iresult = accumulate(ilist.begin(), ilist.end(), 0, plus<int()); adjacent_difference() 기본적으로 주어진 열 내에서 인접하는 각 요소의 차이를 값으로 하는 새로운 열을 생성합니다. Continue Reading
MS VC++6.0 프로젝트를 svn에 넣을 때 ignore 시킬 파일들 DarkKaiser, 2007년 7월 17일2023년 9월 4일 MS VC++6.0 프로젝트를 svn에 넣을 때 ignore (무시) 시킬 파일들 목록 아래의 파일들은 프로젝트를 열거나 컴파일 하면 자동으로 생성되는 파일이므로 svn 에 추가해줄 필요가 없다. */Debug */Release *.aps *.ncb *.opt *.plg *.scc *.clw *.positions *. obj *.idb *.res *.pch *.trg *.exp *.tlb *.[Tt]mp *.~* *.[Bb][Aa][Kk] *.tlh *.tli *_i.c *_p.c dlldata.c Continue Reading
Developer Studio 파일 확장자 설명 DarkKaiser, 2007년 7월 17일2023년 9월 4일 APS 리소스 파일에 대한 바이너리 파일. App Studio에서 리소스 파일을 로딩하는데 사용된다.(로딩 속도 향상) BSC 소스 브라우저 정보 파일(Browser database file). 이 파일은 BSCMAKER.EXE를 실행할 때 SBR파일로부터 생성된다. CLW 클래스위저드 상태 파일. 클래스위저드를 사용하여 추가되는 메시지 핸들링 함수 등과 관련된 정보들이 포함된다. DSP 메이크 파일(MAK)과 동일한 목적의 파일로 VC++5.0에서 사용한다. Continue Reading