ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。这个到底是怎么回事呀?就这句Dim oApp As New Excel.
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.UnauthorizedAccessException: 拒绝访问。
ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 <identity impersonate="true"/> 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。
若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。
源错误:
行 150:
行 151: Public Sub writeexcel()
行 152: Dim oApp As New Excel.Application()
行 153: Dim oBooks As Excel.Workbooks = oApp.Workbooks
行 154: Dim oBook As Excel.Workbook = oBooks.Add
源文件: test.aspx.vb 行: 152
真正的问题是:
在asp中下面操作能正常运行:
<%@ LANGUAGE="VBSCRIPT" %>
<%
response.write "Hello!!!!!"
'on error resume next
dim objExcel
set objExcel=Server.CreateObject("AutoExcel.Excel")
if err<>0 then
response.write "Object create error."
end if
aa=objExcel.process(1,"test01", "D:\test\bbs0.xls", "199803月份会计报表", "工业","D:\test01\20037291238456689.xls", "192.168.2.16", "sa", "123")
if err<>0 then
response.write "Excel process error."
end if
response.write aa
%>
组件AutoExcel主要是对excel操作
而换成asp.net也是同样的代码,可返回是excel没安装,我想可能是权限问题,就直接在.net中操作excel,可也是不行
.net中的调用组件的代码如下:
Private Function shengchengExcel() As String
writeexcel()
Dim objExcel
Dim aa
objExcel = Server.CreateObject("AutoExcel.Excel")
aa = objExcel.process(1, "test01", "D:\test\bbs0.xls", "199803月份会计报表", "工业", "D:\test\test01\20037291238456689.xls", "192.168.2.16", "sa", "123")
Response.Write(aa)
End Function
返回的结果显示组件调用excel不成功!