注册 登录
编程论坛 ASP技术论坛

为什么copy文件时一直提示没有权限?

关小彤 发布于 2008-12-13 20:32, 978 次点击
错误类型:
Microsoft VBScript 运行时错误 (0x800A0046)
没有权限
/a/flower/Admin/Manage_backup.asp, 第 90 行

红色字体是90行
源代码
<table cellpadding="2" cellspacing="1" border="0" width="650" align="center" class="a2">
  <tr>
    <td class="a1" height="25" align="center"><strong>备份数据库</strong>
        <%
if request("action")="Backup" then
call backupdata()
else
%></td>
  </tr>
  <tr class="a4">
    <td align="center"><table width="550" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <form method="post" action="Manage_backup.asp?action=Backup">
          <td><br>
                <table width="80%" border="0" align="center" cellpadding="0" cellspacing="2">
                  <tr>
                    <td height="25"><strong>备份企业网站数据文件</strong>[需要FSO权限]</td>
                  </tr>
                  <tr>
                    <td height="22"> 当前数据库路径</td>
                  </tr>
                  <tr>
                    <td height="22"><input type=text size=50 name=DBpath value="<%=db%>"></td>
                  </tr>
                  <tr>
                    <td height="22"> 备份数据库目录[如目录不存在,程序将自动创建]</td>
                  </tr>
                  <tr>
                    <td height="22"><input type=text size=50 name=bkfolder value=../data_backupzmkm></td>
                  </tr>
                  <tr>
                    <td height="22">备份数据库名称[如备份目录有该文件,将覆盖,如没有,将自动创建]</td>
                  </tr>
                  <tr>
                    <td height="22"><span style="color: #FF0000">
                      <input type=text size=30 name=bkDBname value=<%=now%>>
                      <br>
                      *数据库的备份的文件名是以系统时间定的 这样可以保证每个客户的数据可以保留一段时间</span></td>
                  </tr>
                  <tr>
                    <td height="22"><div align="center">
                        <input name="submit" type=submit value="确定">
                    </div></td>
                  </tr>
                  <tr>
                    <td height="22"><br>
                        <br>
                      本程序的默认数据库文件为<%=db%><br>
                      您可以用这个功能来备份您的法规数据,以保证您的数据安全!<br>
                      注意:所有路径都是相对与程序空间根目录的相对路径</td>
                  </tr>
                  <tr>
                    <td height="22">&nbsp;</td>
                  </tr>
              </table></td>
        </form>
      </tr>
    </table>
        <%end if%>
        <%
sub backupdata()
Dbpath=request.form("Dbpath")
Dbpath=server.mappath(Dbpath)
bkfolder=request.form("bkfolder")
bkdbname=request.form("bkdbname")
Set Fso=server.createobject("scripting.filesystemobject")
if fso.fileexists(dbpath) then
If CheckDir(bkfolder) = True Then
fso.copyfile dbpath,bkfolder& "\"& bkdbname
else
MakeNewsDir bkfolder
fso.copyfile dbpath,bkfolder& "\"& bkdbname
end if
response.write "备份数据库成功,您备份的数据库路径为" &bkfolder& "\"& bkdbname
Else
response.write "找不到您所需要备份的文件。"
End if
end sub
'------------------检查某一目录是否存在-------------------
Function CheckDir(FolderPath)
folderpath=Server.MapPath(".")&"\"&folderpath
Set fso1 = CreateObject("Scripting.FileSystemObject")
If fso1.FolderExists(FolderPath) then
'存在
CheckDir = True
Else
'不存在
CheckDir = False
End if
Set fso1 = nothing
End Function
'-------------根据指定名称生成目录---------
Function MakeNewsDir(foldername)
Set fso1 = CreateObject("Scripting.FileSystemObject")
Set f = fso1.CreateFolder(foldername)
MakeNewsDir = True
Set fso1 = nothing
End Function
%>
1 回复
#2
anlige2008-12-13 22:04
打开文件的fso权限~
1