asp.net 中将dataset中数据导入EXCEL中遇到拒绝访问的问题

knightufp 2003-04-15 07:33:36
代码如下:
Dim xlApp As New Excel.Application()
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim rowIndex, colIndex As Integer
rowIndex = 1
colIndex = 0
xlBook = xlApp.Workbooks().Add(True)
xlSheet = xlBook.Worksheets("sheet1")


提示Dim xlApp As New Excel.Application()出错


异常详细信息: System.UnauthorizedAccessException: 拒绝访问。

未授权此 ASP.NET 进程访问所请求的资源。出于安全原因,默认的 ASP.NET 进程标识为“{machinename}\ASPNET”,它只具有有限的特权。请考虑授予该 ASP.NET 进程标识访问此资源的权限。

若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”以添加“{machinename}\ASPNET”用户。突出显示此 ASP.NET 帐户,在“允许”列中选中“写”框。


...全文
181 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
knightufp 2003-04-17
  • 打赏
  • 举报
回复
对无语兄的建议深表感谢
您在另一篇回复中提到如果硬盘格式是NTFSS的话上面的作法就不能成功
而我在按照您的做法修改后
又在dcomcfg中修改了EXCEL组件的几个权限后
可以实现了
但是又遇到另一个问题
aspnet_wp.exe 进程我在任务管理器无法杀掉
而在做上述更改之前是可以杀掉的
另外再问一下无语兄
我的应用程序后台数据库是oracle 8。16
经常会出现这样的错误提示:


System.Data.OleDb.OleDbException: 未指定的错误:E_FAIL(0x80004005) at System.Data.OleDb.OleDbCommand.ProcessResults(Int32 hr) at System.Data.OleDb.OleDbCommand.InitializeCommand(CommandBehavior behavior, Boolean throwifnotsupported) at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior) at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) at CF12K.logind.isvalide(String uname, String passwd) in D:\wwwroot\CF12K\logind.aspx.vb:line 102


不要意思,有点长
而我杀死aspnet_wp.exe进程后,在执行应用,则错误消失
不知道无语兄是不是遇到过这样的问题
是什么原因造成的?
非常感谢
gOODiDEA 2003-04-16
  • 打赏
  • 举报
回复
修改C:\WINNT\Microsoft.NET\Framework\v1.0.3705\CONFIG\Machine.config文件ProcessModel段中的UserName, 把Machine改成SYSTEM.
类似于
<processModel enable="true" timeout="Infinite" idleTimeout="Infinite" shutdownTimeout="0:00:05" requestLimit="Infinite" requestQueueLimit="5000" restartQueueLimit="10" memoryLimit="60" webGarden="false" cpuMask="0xffffffff" userName="SYSTEM" password="AutoGenerate" logLevel="Errors" clientConnectedCheck="0:00:05" comAuthenticationLevel="Connect" comImpersonationLevel="Impersonate" responseRestartDeadlockInterval="00:09:00" responseDeadlockInterval="00:03:00" maxWorkerThreads="25" maxIoThreads="25"/>
xupc 2003-04-15
  • 打赏
  • 举报
回复
若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”以添加“{machinename}\ASPNET”用户。突出显示此 ASP.NET 帐户,在“允许”列中选中“写”框。

你有按上面的这样做吗,
我也碰到过,按上面这样做,将存放Excel的那个文件的权限改为Everyone都可以控制.
knightufp 2003-04-15
  • 打赏
  • 举报
回复
不是这个原因了
http://expert.csdn.net/Expert/topic/1584/1584839.xml?temp=.4132044
共同研究一下
谢谢关注
sincere1314 2003-04-15
  • 打赏
  • 举报
回复
colIndex should be 1

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧