0

我正在寻找执行以下任务的 vbscript

脚本任务

  1. 在计算机启动时执行,
    执行方式是放在windows的启动文件夹中 C:\Documents and Settings\Admin\Start Menu\Programs\Startup

  2. 如果输出文本文件存在,写下一些文本并退出

  3. 如果文本文件不存在,那么它会回显完整的目标

代码如提供,任何帮助将不胜感激

'create txt.vbs
'vbscript
Set WshShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
CurrentDirectory = objFSO.GetAbsolutePathName(".")
FilePath = CurrentDirectory & "\test.txt"

Existcode = objFSO.FileExists(FilePath)
' wscript.echo "FileExists code:" & Existcode

if Existcode = False then
    Existcode = objFSO.FileExists(FilePath)
    'for debugging
    wscript.echo "file not exist" & vbCrLf _
    & "FileExists code:" & Existcode

    Set objFile = objFSO.CreateTextFile(FilePath,True)
    strtext = "file created:" & vbCrLf & chr(34) & "New Line" & chr(34)
    objFile.Write strtext & vbCrLf
    objFile.Close
else
    'for debugging
    wscript.echo "file exist" & vbCrLf _
    & "FileExists code:" & Existcode & vbCrLf & vbCrLf _
    & FilePath & vbCrLf _
    & CurrentDirectory & vbCrLf
end if
wscript.echo "end"

当通过单击它执行时,无论是通过批处理文件,脚本都可以正常工作,并且输出符合预期

虽然它是startup由 Windows 从文件夹执行的,但它显示了我为调试而设置的所有回显,但没有创建输出文件,也没有写入其中的文本,而且它读取它存在我不知道为什么

4

1 回答 1

0

vbscript 无法将文本写入启动文件夹,但更改如下

CurrentDirectory = objFSO.GetAbsolutePathName(".")
FilePath = CurrentDirectory & "\test.txt"

变得

DesktopDirectory = WshShell.SpecialFolders("Desktop")
FilePath = DesktopDirectory & "\test.txt"
于 2020-03-23T08:54:13.757 回答