【发布时间】:2019-09-27 16:43:40
【问题描述】:
我正在尝试更新旧的 c++ MFC 程序,而当我尝试创建 DSN 时,SQLConfigDataSource 会导致未处理的异常。错误消息说:
0x00007FFC97D89129 (KernelBase.dll) 处的未处理异常: 0x0000087A(参数:0xFFFFFFFF887A0001、0x0000000000000053)
代码运行正常,功能正常,但我似乎无法摆脱这个错误。
int mlen;
char* szDesc = new char[256];
sprintf_s(szDesc, 256, "DSN=%s?DBQ=%s?FIL=MicrosoftAccess?",
IV_DATABASE_NAME, // DSN name
sDBPath); // full file name for accdb file
mlen = strlen(szDesc);
for (int i = 0; i < mlen; i++) {
if (szDesc[i] == '?')
szDesc[i] = '\0';
}
SQLConfigDataSource(NULL, ODBC_ADD_DSN,
"Microsoft Access Driver (*.mdb, *.accdb)",
(LPCSTR)szDesc);
delete szDesc;
【问题讨论】:
标签: c++ sql ms-access mfc odbc