【发布时间】:2021-09-20 19:51:10
【问题描述】:
我有一个 vbscript 来执行一个 powershell 脚本。 powershell 脚本只是将结果附加到文件中。 然后在powershell脚本执行完成后返回vbscript。 vbscript 将读取文件的内容并将其显示在控制台上。 不幸的是,powershell 无法生成 vbscript 读取的结果文件。
如果我将行更改为 ErrCode = objShell.run("powershell.exe -file writeFile.Ps1", 0), powershell 脚本可以生成结果文件。 但是 vbscript 永远无法正确显示结果文件的内容,或者它已损坏。 如果我从记事本打开结果文件,我可以正确查看内容。 你知道背后的问题是什么吗?
这里是源代码:
readFile.vbs 的源代码:\
resultFile = "writeFile.Ps1.txt"
set objShell = CreateObject("WScript.Shell")
ErrCode = objShell.run("powershell.exe -nologo -command writeFile.Ps1", 0)
Set objReadFile = CreateObject("Scripting.FileSystemObject")
Set strLines = objReadFile.OpenTextFile(resultFile, 1)
Do While Not strLines.AtEndOfStream
strLine = strLines.ReadLine()
WScript.Echo strLine
Loop
Set objReadFile = Nothing
writeFile.Ps1的源代码:
$ResultFilePath = "writeFile.Ps1.txt"
If (Test-Path $ResultFilePath) {
Remove-Item $ResultFilePath
}
Get-Date | out-file $ResultFilePath
Exit 0
谢谢。
【问题讨论】:
标签: powershell vbscript