C# SEHException外部组件引发了异常
我正在使用VS2010和MS Access 2010。还安装了Microsoft Access数据库引擎2010。操作系统版本为Windows 7 Enterprise,带有64位操作系统 下面是我得到异常的代码。我还粘贴了堆栈轨迹C# SEHException外部组件引发了异常,c#,.net,C#,.net,我正在使用VS2010和MS Access 2010。还安装了Microsoft Access数据库引擎2010。操作系统版本为Windows 7 Enterprise,带有64位操作系统 下面是我得到异常的代码。我还粘贴了堆栈轨迹 DCXManagerTableAdapters.AppDefaultOptionTableAdapter dataAdapter = new DCXManagerTableAdapters.AppDefaultOptionTableAdapter(); dataA
DCXManagerTableAdapters.AppDefaultOptionTableAdapter dataAdapter = new DCXManagerTableAdapters.AppDefaultOptionTableAdapter();
dataAdapter.Connection.ConnectionString = DB.ConnectionString;
if (dataAdapter.Connection.State == ConnectionState.Closed)
{dataAdapter.Connection.Open();} \* Here i am getting exception
内部异常:System.Runtime.InteropServices.SEHException
(0x80004005):外部组件已引发异常。在
System.Data.OleDb.DataSourceWrapper.InitializeAndCreateSession(OleDbConnectionString
constr、SessionWrapper和SessionWrapper)位于
System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString
施工,OLEDB连接)在
System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions
选项、DbConnectionPoolKey poolKey、对象poolGroupProviderInfo、,
DbConnectionPool池,DbConnection owningObject)位于
System.Data.ProviderBase.DbConnectionFactory.CreateConnection(DbConnectionOptions
选项、DbConnectionPoolKey poolKey、对象poolGroupProviderInfo、,
DbConnectionPool池,DbConnection owningConnection,
DbConnectionOptions(用户选项)位于
System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection
owningConnection、DbConnectionPoolGroup poolGroup、DbConnectionOptions
用户选项)位于
System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection
owningConnection、TaskCompletionSource1重试、DbConnectionOptions
用户选项、DbConnectionInternal oldConnection、DbConnectionInternal&
连接)在
System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection
外部连接,数据库连接工厂连接工厂,
TaskCompletionSource
1重试,数据库连接选项用户选项)位于
System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection
外部连接,数据库连接工厂连接工厂,
TaskCompletionSource`1重试,DbConnectionOptions用户选项)位于
System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection
outerConnection,DbConnectionFactory连接工厂)位于
System.Data.OleDb.OleDbConnection.Open()位于
中的Branson.DataAccess.Providers.GraphTabProvider.GetAppDefaultOption()
D:\BRANSON-SVN\Solution\BRANSON.DataAccess\Providers\GraphTabProvider.cs:line
180位于Branson.Controller.GraphTabController.GetAppDefaultOption()处
在里面
D:\BRANSON-SVN\Solution\BRANSON.Controller\GraphTabController.cs:line
37在Branson.DCXManager.App.OnStartup(StartupEventArgs e)的
D:\BRANSON-SVN\Solution\BRANSON.DCXManager\BRANSON.DCXManager\App.xaml.cs:line
174 at System.Windows.Application.b___1(未使用的对象)at
System.Windows.Threading.ExceptionWrapper.InternalRealCall(委托
回调,对象args,Int32 numArgs)位于
MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(对象
源,委托方法,对象参数,Int32 numArgs,委托
捕手)
如果此连接曾经工作并已停止,则可能是由于文件的句柄打开所致 您需要确保没有其他进程持有access文件或excel文件的句柄 您可以使用Process Explorer轻松地完成此操作,这是一个调试应用程序,它是Sysinternals套件的一部分 您可以在此处下载Process Explorer作为独立应用程序:
该错误似乎与打开与数据库的连接有关。你的连接字符串是什么?你知道吗?