MFC 재배포 DLL
간단한 MFC용 ODBC을 배포하려고 하는데 필요한 DLL을 확인해보았습니다.
프로젝트 형식은 [Win32]-[Win32 콘솔 응용 프로그램]이고
템플릿 마법사(응용 프로그램 설정)에서 추가 옵션에 '미리 컴파일된 헤더'에 체크 및
공용 헤더 파일 추가 대상에 'MFC' 에 체크하였습니다.
미리 컴파일된 헤더(PCH) 헤더 파일인 stdafx.h에 TODO 부분에
- #include <afxdb.h> // MFC ODBC
를 추가하고
main함수가 있는 cpp 파일에
- CDatabase db;
BOOL res = db.OpenEx(TEXT("~~~~)); // ~~~~부분에는 ODBC 연결 문자열이 들어갔습니다.
if(res) {
db.ExecuteSQL(TEXT("Insert into ABBA.dbo.user_info (id, name) values ('1', 'value');"));
}
를 하여 Insert문을 수행하였습니다.
Release 모드에서 빌드를 하고(속성의 C/C++의 '코드 생성'부분의 런타임 라이브러리는 /MD로 되어 있습니다.)
런타임 라이브러리 사용 지정 방법은 MSDN의 /MD, /MT, /LD (Use Run-Time Library)를 참고하세요.
필요한 DLL들
mfc90u.dll - MFC의 CDatabase 클래스를 사용했기 때문에 DLL에서 사용할 수 있게
msvcr90.dll - /MD 옵션으로 코드생성을 하게 되면 C Run-Time 라이브러리로 이 DLL이 필요합니다.
(참고로 VS 2008에서 개발을 할 때의 경우입니다. VS 2005라면 90대신 80이라는 숫자가 붙습니다)
MSDN의 C Run-Time Libraries를 보면 표준 C++ 라이브러를 사용했을 경우에 msvcp90.dll 이 필요하다고 하네요.
배포할 DLL은 어디서 구하나?
VS2008을 설치할 때 경로를 바꾸지 않았다면
C:\Program Files\Microsoft Visual Studio 9.0\VC\redist 에 배포용 파일이 있다.
x86기반과 amd64, 디버그용 배포하지 말아야할 카테고리 3가지 폴더 아래 파일이 있다.
네이트온의 배포 DLL
NATEON 4.0.10.4(1481)을 기준으로 아래와 같은 dll 파일들이 배포가 된다.
(위치 : C:\Program Files\NATEON\BIN)
DIR 한 목록
2005-06-28 오전 10:14 356,352 MWDatabase.dll
2005-06-28 오전 10:14 286,773 MSVCRT.DLL
2005-10-07 오전 02:17 258,352 unicows.dll
2005-10-18 오전 06:20 118,272 t2embed.dll
2006-12-01 오후 10:03 626,688 msvcr80.dll
2006-12-01 오후 10:03 548,864 msvcp80.dll
2007-03-02 오후 08:34 61,440 NateOnHook40u.dll
2007-04-04 오후 11:18 126,976 NateMessengerApiActiveX.dll
2008-08-06 오후 04:35 61,541 XecureCSP.dll
2008-08-06 오후 04:35 393,302 XecureCrypto.dll
2008-08-06 오후 04:35 41,059 XecureIO.dll
2009-08-03 오후 01:15 77,824 NateOnUnhandledExceptionFilter.dll
2009-10-19 오후 05:14 278,528 CKAppEx.dll
2010-05-07 오후 01:49 159,744 libCommonDlg_DLL.dll
2010-05-07 오후 01:49 1,052,672 NateOnResDLL_KOR.dll
2010-05-07 오후 01:49 438,272 SLDB.dll
2010-05-07 오후 01:49 561,152 SRControl.dll
18개 파일 6,087,811 바이트
msvcr80.dll과 msvcp80.dll을 보면 VS 2005로 개발된 것을 알 수 있다.
'개발자의 기록 노트 > C++ MFC' 카테고리의 다른 글
[STL] Vector 사용 예제 (0) | 2012.06.03 |
---|---|
[MFC] 공부중 (0) | 2012.06.02 |
Function Calling Conventions (0) | 2011.12.17 |
구조체 패딩 비트에 대해서. struct padding bit (0) | 2011.08.20 |
[MFC] 알아두면 유용한 형변환 (0) | 2011.06.30 |
[C/C++]유용한 #pragma directive (0) | 2011.05.21 |