问题1 语句如下:
/////////////////////////////////////////////
Dim DS As System.Data.DataSet
Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
Dim MyConnection As System.Data.OleDb.OleDbConnection MyConnection = New System.Data.OleDb.OleDbConnection( _
"provider=Microsoft.Jet.OLEDB.4.0; " & _
"data source=D:\HRWeb\JBF\UpLoad\TEMP.XLS; " & _
"Extended Properties=Excel 8.0;")
MyCommand = New System.Data.OleDb.OleDbDataAdapter( _
"select * from [Sheet1$]", MyConnection) DS = New System.Data.DataSet
MyCommand.Fill(DS)
MyCommand.Dispose()
MyConnection.Close()
MyConnection.Dispose()*************出现如下错误************
“/JBF”应用程序中的服务器错误。
--------------------------------------------------------------------------------
未指定的错误
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误------------------------------------------
问题2
目的和问题1是一样的 在ODBC里建了一个系统DSN: MyExcelOpen 用 Microsoft Excel Driver (*.xls)
在 设计环境是如果用 ODBC数据控件,是可以预览的到数据的,但在 执行时还是会出错
语句如下: Dim MyOdbcConnection As New System.Data.Odbc.OdbcConnection
Dim MyOdbcSelectCommand As New System.Data.Odbc.OdbcCommand
Dim MyOdbcDataAdapter As New System.Data.Odbc.OdbcDataAdapter
Dim myExcelDataTable As New System.Data.DataTable
CType(myExcelDataTable, System.ComponentModel.ISupportInitialize).BeginInit()
MyOdbcConnection.ConnectionString = "PageTimeout=5;FIL=excel 8.0;" & _
"MaxBufferSize=2048;DSN=MyExcelOpen;" & _
"DefaultDir=D:\HRWeb\JBF\UpLoad;" & _
"DBQ=D:\HRWeb\JBF\UpLoad\temp.xls;" & _
"DriverId=790"
MyOdbcSelectCommand.CommandText = "select * from [Sheet1$]"
MyOdbcSelectCommand.Connection = MyOdbcConnection
MyOdbcDataAdapter.SelectCommand = MyOdbcSelectCommand
MyOdbcDataAdapter.Fill(myExcelDataTable)
'关闭环境
MyOdbcSelectCommand.Dispose()
MyOdbcDataAdapter.Dispose()
MyOdbcConnection.Close()
MyOdbcConnection.Dispose()
*************出现如下错误************
“/JBF”应用程序中的服务器错误。
--------------------------------------------------------------------------------
ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。 ERROR [IM006] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败 ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.Odbc.OdbcException: ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。 ERROR [IM006] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败 ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。
**************************************************************************
上述错误都是在 fill 这句时出现的
不知道是不是在IIS设置方面的问题 还是 权限方面 的问题
搜遍贴子,还是没有找到解决办法。
/////////////////////////////////////////////
Dim DS As System.Data.DataSet
Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
Dim MyConnection As System.Data.OleDb.OleDbConnection MyConnection = New System.Data.OleDb.OleDbConnection( _
"provider=Microsoft.Jet.OLEDB.4.0; " & _
"data source=D:\HRWeb\JBF\UpLoad\TEMP.XLS; " & _
"Extended Properties=Excel 8.0;")
MyCommand = New System.Data.OleDb.OleDbDataAdapter( _
"select * from [Sheet1$]", MyConnection) DS = New System.Data.DataSet
MyCommand.Fill(DS)
MyCommand.Dispose()
MyConnection.Close()
MyConnection.Dispose()*************出现如下错误************
“/JBF”应用程序中的服务器错误。
--------------------------------------------------------------------------------
未指定的错误
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误------------------------------------------
问题2
目的和问题1是一样的 在ODBC里建了一个系统DSN: MyExcelOpen 用 Microsoft Excel Driver (*.xls)
在 设计环境是如果用 ODBC数据控件,是可以预览的到数据的,但在 执行时还是会出错
语句如下: Dim MyOdbcConnection As New System.Data.Odbc.OdbcConnection
Dim MyOdbcSelectCommand As New System.Data.Odbc.OdbcCommand
Dim MyOdbcDataAdapter As New System.Data.Odbc.OdbcDataAdapter
Dim myExcelDataTable As New System.Data.DataTable
CType(myExcelDataTable, System.ComponentModel.ISupportInitialize).BeginInit()
MyOdbcConnection.ConnectionString = "PageTimeout=5;FIL=excel 8.0;" & _
"MaxBufferSize=2048;DSN=MyExcelOpen;" & _
"DefaultDir=D:\HRWeb\JBF\UpLoad;" & _
"DBQ=D:\HRWeb\JBF\UpLoad\temp.xls;" & _
"DriverId=790"
MyOdbcSelectCommand.CommandText = "select * from [Sheet1$]"
MyOdbcSelectCommand.Connection = MyOdbcConnection
MyOdbcDataAdapter.SelectCommand = MyOdbcSelectCommand
MyOdbcDataAdapter.Fill(myExcelDataTable)
'关闭环境
MyOdbcSelectCommand.Dispose()
MyOdbcDataAdapter.Dispose()
MyOdbcConnection.Close()
MyOdbcConnection.Dispose()
*************出现如下错误************
“/JBF”应用程序中的服务器错误。
--------------------------------------------------------------------------------
ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。 ERROR [IM006] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败 ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.Odbc.OdbcException: ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。 ERROR [IM006] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败 ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。
**************************************************************************
上述错误都是在 fill 这句时出现的
不知道是不是在IIS设置方面的问题 还是 权限方面 的问题
搜遍贴子,还是没有找到解决办法。
解决方案 »
- XMLHttpReq.readyState为空或不是对象,大家帮忙看下啊。急`````
- 如何给lable赋值,转换成动态的可在后台编程的样式?
- [求助]单击gridview1的单元格,然后在gridview2中显示详细信息
- style="WIDTH: 430px和width="430"是不是重复的啊,为什么要重复写啊
- 百度帖吧的这种文件用.net怎么做??
- 怎样在ASP.nte中做一个日历???
- .Net有没有提取aspx文件的工具
- 模板列中的textbox怎么取值
- IndexOf返回结果时是从0开始还是从1开始?
- 如何获取若干天以前的时间
- 电子印章技术?
- 为什么我用using System.Data.OracleCilent时,在Data后面没有OracleCilent???
ERROR [HY000] [Microsoft][ODBC Excel Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x940 Thread 0x180 DBC 0x5f65f14 Excel'。 ERROR [IM006] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败 ERROR [HY000] [Microsoft][ODBC Excel Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x940 Thread 0x180 DBC 0x5f65f14 Excel'。 ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。 ERROR [HY000] [Microsoft][ODBC Excel Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x940 Thread 0x180 DBC 0x5f65f14 Excel'。 ERROR [HY000] [Microsoft][ODBC Excel Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x940 Thread 0x180 DBC 0x5f65f14 Excel'。 ERROR [HY000] [Microsoft][ODBC Excel Driver] 磁盘或网络错误。
http://www.connectionstrings.com/OLEDB连接字符MSDN帮助里也有的在线等......
你的web有没有权限访问D:\HRWeb\JBF\UpLoad\TEMP.XLS ?
连接一般用相对路径,用server.mappath()转换一下成绝对路径,本来对web不是很了解,本子上又没有装IIS,没法测试,你把Temp.xls换到你的虚拟目录下试试看
1、在代码打开时间内,此文件是否被打开(比如打开查看它)
2、在代码打开之前,有无其他代码打开此文件而对象未关闭?
3、你的MDAC 太低
4、如果上述处理方法均不能,没有办法了,请重新安装系统。
2、在将这个文件夹指定为IIS里面的匿名访问用户可以访问(就是那个IUSER_Machine的用户)。因为JET在启动的时候会创建一个mdb(或xls)的复本,它首先将这个复本通过检索环境变量中的TMP和(或)TEMP来创建在他们指定的目录下面,如果没有这两个环境变量,这个临时文件将被创建在WinNt(操作系统的目录)下面,通常这个目录是没有对IUSER_用户开放的。
但我觉得问题不这么简单,很可能是数据提供者的问题,如果你的odbc版本不符合vs.net的需要,数据访问会出类似的问题,可以下载个新版本支持dotnet的odbc驱动看看。
另外可以参考下:
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpref/html/frlrfsystemdataodbcodbcexceptionclasstopic.asp
与
http://support.microsoft.com/default.aspx?scid=kb;zh-cn;821958
加了一句identity impersonate="true"
把这一句删除掉,一切OK......高兴啊,结贴喽!!!!