我正在尝试在HTML中使用VBScript将文本写入将成为powershell脚本的内容。我这样做是为了避免将我的HTA静态编码到这些powershell脚本的位置。
我的问题变成了Powershell的"
(
和)
一个例子,我只是不确定如何包装角色以保持VBS的快乐。
Dim filesys, filetxt
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Set filesys = CreateObject("Scripting.FileSystemObject")
Set filetxt = filesys.OpenTextFile("c:\Temp\somefile.txt", ForAppending, True)
filetxt.WriteLine ("Param([Parameter(Mandatory=$true)]")
filetxt.WriteLine ("[string]$Str)")
filetxt.WriteLine ("# Create the IE com object")
filetxt.WriteLine ("$ie = new-object -comobject InternetExplorer.Application")
filetxt.WriteLine ("#Navigate to www.")
filetxt.WriteLine ("$ie.navigate("http://www.page.com")")
答案 0 :(得分:2)
假设最后一行是您唯一的问题,您可以通过将引号加倍或使用Chr(34)以编程方式插入它们来转义引号。
filetxt.WriteLine ("$ie.navigate(""http://www.page.com"")")
filetxt.WriteLine ("$ie.navigate(" & Chr(34) & "http://www.page.com" & Chr(34) & ")")