编写ASP时 Microsoft VBScript 运行时错误 (0x800A0046)

来源:百度知道 编辑:UC知道 时间:2024/06/28 12:49:19
错误类型:
Microsoft VBScript 运行时错误 (0x800A0046)
没有权限
/Mis/hr/report/ReportToExcel.asp, 第 44 行

下面是ReportToExcel.asp:(人事工资创建一个excel工资表)

<!--#include file="../../adovbs.inc"-->
<%
Public Sub ReportToExcel(TmpMonth)
'提取数据库中工资统计表的此月份记录
Dim cmd,rs
Set cmd= Server.CreateObject("ADODB.Command")
Set rs = Server.CreateObject("ADODB.RECORDSET")
'设置cmd的ActiveConnection属性,指定与其关联的数据库连接
cmd.ActiveConnection = Conn
cmd.CommandText = "CreateSalaryReport"
cmd.CommandType = adCmdStoredProc
'创建存储过程参数
cmd.Parameters("@@iM") = TmpMonth
cmd.Execute '执行存储过程
SqlStmt = "SELECT * FROM TmpTable ORDER BY 员工编号"
rs.Open SqlStmt,Conn,1,3
Irowcount = 0
Do While Not rs.EOF
'记录总数
Irowcount = Irowcount + 1
rs.MoveNext()
Loop
'如果记录为空,则退出程

你的文件系统应该是NTFS的,需要进行安全设置才能进行写入操作,
将你需要生成excel文件的文件夹,右键——属性——安全——添加,输入:everyone——点确定,在列表中选中everyone,在下面的选项中把“写入”这项的允许打上钩,确定,这样你就可以用上面的代码来在这个文件夹下面创建一个文件了!
另外如果你右键——属性后,没有看到“安全”这个选项,那么随便打开一个文件夹,上面菜单栏,工具——文件夹选项——查看,将下面的“使用简单文件共享”的钩去掉后就可以进行上面的安全设置了!

Set myfile = fs.CreateTextFile(filename,true) 没有权限

你在这个文件夹下面没有生成该文件的权限

你可能使用了NTFS文件系统,需要修改权限