当前位置:  开发笔记 > 后端 > 正文

vbscript:fso.opentextfile权限被拒绝

如何解决《vbscript:fso.opentextfile权限被拒绝》经验,为你挑选了1个好方法。

在我的代码段中,当我编写文件名脚本时,它在以下行给我一个权限被拒绝:

Set objTextFile = objFSO.OpenTextFile(strDirectory & strFile, ForAppending, True)

这是脚本

'output log info
Function OutputToLog (strToAdd)  
    Dim strDirectory,strFile,strText, objFile,objFolder,objTextFile,objFSO
    strDirectory = "c:\eNet"
    strFile = "\weeklydel.bat"
    'strText = "Book Another Holiday"
    strText = strToAdd

    ' Create the File System Object
    Set objFSO = CreateObject("Scripting.FileSystemObject")

    ' Check that the strDirectory folder exists
    If objFSO.FolderExists(strDirectory) Then
       Set objFolder = objFSO.GetFolder(strDirectory)
    Else
       Set objFolder = objFSO.CreateFolder(strDirectory)
       'WScript.Echo "Just created " & strDirectory
    End If

    If objFSO.FileExists(strDirectory & strFile) Then
       Set objFolder = objFSO.GetFolder(strDirectory)
    Else
       Set objFile = objFSO.CreateTextFile(strDirectory & strFile)
       'Wscript.Echo "Just created " & strDirectory & strFile
    End If

    set objFile = nothing
    set objFolder = nothing
    ' OpenTextFile Method needs a Const value
    ' ForAppending = 8 ForReading = 1, ForWriting = 2
    Const ForAppending = 2

    Set objTextFile = objFSO.OpenTextFile(strDirectory & strFile, ForAppending, True)

    ' Writes strText every time you run this VBScript
    objTextFile.WriteLine(strText)
    objTextFile.Close
End Function

我已经分配了vbscript域管理员权限.有任何想法吗?

提前致谢



1> BenAlabaster..:

我不认为这与文件权限本身有关.它与您使用以下方式创建文件的事实有关:

Set objFile = objFSO.CreateTextFile(strDirectory & strFile)

这会创建文件...并带有对该文件的引用(objFile)

然后在销毁引用之前不要关闭文件

...
'Missing objFile.Close here
Set objFile = nothing
Set objFolder = nothing
...

因此,您正在销毁引用但将文本流保留在内存中,从而锁定您的文件.

然后,当文件已经"打开"时,您正在尝试重新打开该文件.这是一个有点长的啰嗦,你已经在创建文件后得到了一个引用 - 直接写入它会更容易,而不是在创建另一个之前销毁引用.

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有