вывод vbscript в текст при запуске wndows - PullRequest
0 голосов
/ 20 марта 2020

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

1 Ответ

0 голосов
/ 23 марта 2020

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

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

становится

DesktopDirectory = WshShell.SpecialFolders("Desktop")
FilePath = DesktopDirectory & "\test.txt"
...