1.建立基於對話框的EXE文件
2.在StdAfx.h中添加
#include <afxdb.h>
#include <afxtempl.h>
3.在××Dlg.h中 添加 :
#include <ODBCINST.H>
#import "C:\Program Files\Common Files\System\ado\msado15.dll" rename("EOF", "adoEOF")
using namespace ADODB;
typedef BOOL(WINAPI * SQLCONFIGDATASOURCE_FUNCTION)(HWND, WORD, LPCSTR, LPCSTR);
4.在××Dlg.cpp BtnClick()中添加:
HINSTANCE h=::LoadLibrary("ODBCCP32.DLL");
::SQLCONFIGDATASOURCE_FUNCTION pConfigDataSource=0;
pConfigDataSource=(SQLCONFIGDATASOURCE_FUNCTION)GetProcAddress(h,"SQLConfigDataSource");
//使用動態路徑設置odbc數據源
char sDirectory[256];
::GetCurrentDirectory(256,sDirectory);
strcat(sDirectory,"\\Student.mdb");
char ss[256]="DSN=studb0DBQ=";
strcat(ss,sDirectory);
ss[9]=0; //區分前後子字符串
int length=strlen(ss);
ss[length]=0; //因爲該參數以雙結束符結尾
BOOL res=pConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)", ss);
::FreeLibrary(h);//釋放動態連接庫資源