获得异常“未指定的错误”执行期间。 [英] Getting exception "unspecified error" during execution.
问题描述
我正在使用Access 2007.
我在执行期间遇到异常未指定的错误。
_ConnectionPtr m_pcon;
尝试 {
_bstr_t conStr = _T( Provider = Microsoft.Jet.OLEDB.4.0; Data Source = \d:\\bank.mdb \);
hr = m_pcon->打开(conStr,L ,L ,adConnectUnspecified);
} catch (_ com_error& ce){
MessageBox(ce.ErrorMessage());
}
我的尝试:
1.尝试更改连接字符串但无效。
_ bstr_t conStr = _T( Provider = Microsoft。 Jet.OLEDB.4.0;数据源= d:\\bank.mdb);
2。文件bank.mdb存在于D盘中。
3. stdafx.h有oledb连接的以下附加声明
#includeatlbase.h
#importC:\ Windows \winsxs \ x86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.1.7601.22012_none_0ebfc67ce80861b4 \ msdandc.dllno_namespace rename(EOF,ADOEOF )
请建议如何解决这个问题。
有一个分号丢失了连接字符串的结尾。
试试这个(在这里使用宽字符串以避免转换,因为BSTR
类型在内部使用宽字符串):
_bstr_t conStr = LProvider = Microsoft.Jet.OLEDB.4.0; Data Source = d:\\\\ nk.mdb;;
I am using Access 2007.
I am Getting exception "Unspecified Error" during execution.
_ConnectionPtr m_pcon;
try {
_bstr_t conStr = _T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"d:\\bank.mdb\"");
hr = m_pcon->Open(conStr, L"",L"",adConnectUnspecified);
} catch(_com_error& ce) {
MessageBox(ce.ErrorMessage());
}
What I have tried:
1. Tried changing the connection string but won't help.
_bstr_t conStr = _T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\bank.mdb");
2. File bank.mdb is present in D drive.
3. stdafx.h having the following additional statements for oledb connection
#include "atlbase.h"
#import "C:\Windows\winsxs\x86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.1.7601.22012_none_0ebfc67ce80861b4\msado15.dll" no_namespace rename("EOF", "ADOEOF")
Please suggest how to fix this issue.
There is a semicolon missing at the end of your connect string.
Try this (using a wide string here to avoid conversions because theBSTR
type uses wide strings internally):
_bstr_t conStr = L"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\bank.mdb;";
这篇关于获得异常“未指定的错误”执行期间。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!