вывод vbscript в текст при запуске wndows

Я ищу 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 в окнах, он показывает все эхо, которое я установил для отладки, но не создает выходной файл и не записывает в него текст, но также он читает его как существующий, я не уверен, почему


person Oimar Daif    schedule 20.03.2020    source источник
comment
Можете ли вы попробовать, сохранив его в заранее определенном месте, например C: \ temp, и посмотреть, работает он или нет   -  person user5612655    schedule 20.03.2020
comment
@ user5612655 сделал это на самом деле (с моего рабочего стола), он отлично работает   -  person Oimar Daif    schedule 20.03.2020
comment
если он работает нормально с другой папкой, возможно, это связано с созданием файла в этой папке, чем скрипт, разрешения или что-то в этом роде.   -  person user5612655    schedule 20.03.2020
comment
true, при выводе на рабочий стол работает нормально. Благодарность   -  person Oimar Daif    schedule 23.03.2020


Ответы (1)


vbscript не может записывать текст в папку автозагрузки, однако следующие изменения

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

стали

DesktopDirectory = WshShell.SpecialFolders("Desktop")
FilePath = DesktopDirectory & "\test.txt"
person Oimar Daif    schedule 23.03.2020