【发布时间】:2012-01-19 23:59:37
【问题描述】:
我已经尝试了一个星期来让它工作,但没有运气。我已经完全剥离了我的 vb.net 2008 windows 服务,只创建一个 vbs 文件并使用进程启动它。有人可以帮忙吗?我要死在这里了。 vbs 文件创建并有效。我可以手动执行它,windows服务就是不会运行它!!我在 Windows 7 机器上,该进程被编译并安装为 32 位进程。它也作为本地系统安装。
在进程尝试执行后,我创建了一个文本文件并且它成功了。所以,我知道服务没有崩溃。
有什么想法吗?
干杯, J
Dim TextFile As New StreamWriter("C:\LRQuadrant\" & "john" & ".vbs")
'Create the VBS file - won't work in .Net
TextFile.WriteLine("Set WshShell = WScript.CreateObject(""WScript.Shell"")")
TextFile.WriteLine("ScenFile = """ & "john" & """")
TextFile.WriteLine("Set LRE = WScript.CreateObject (""WLRun.LrEngine"")")
TextFile.WriteLine("WScript.Sleep 5000")
TextFile.WriteLine("if LRE.Scenario.IsOpened then")
TextFile.WriteLine("While LRE.Scenario.IsActive")
TextFile.WriteLine("Wscript.Sleep 10000")
TextFile.WriteLine("Wend")
TextFile.WriteLine("end if")
TextFile.WriteLine("LRE.Scenario.Open ScenFile, SAVE_CURRENT")
TextFile.WriteLine("DateString = Year(Date) &
Right(""0"" & Month(Date), 2) &
Right(""0"" & Day(Date), 2) &""_""&
Right(""0"" & Hour(Now),2) & Right(""0"" &
Minute(Now),2)")
TextFile.WriteLine("ResultDir = ""C:\LRQuadrant\""")
TextFile.WriteLine("LRE.Scenario.ResultDir = ResultDir")
TextFile.WriteLine("If LRE.Scenario.Start = 0 Then")
TextFile.WriteLine("While LRE.Scenario.IsActive")
TextFile.WriteLine("Wscript.Sleep 10000")
TextFile.WriteLine("Wend")
TextFile.WriteLine("end if")
TextFile.WriteLine("if Not LRE.Scenario.IsResultsCollated then")
TextFile.WriteLine("LRE.Scenario.CollateResults")
TextFile.WriteLine("end if")
TextFile.WriteLine("while not LRE.Scenario.IsResultsCollated")
TextFile.WriteLine("Wscript.Sleep 10000")
TextFile.WriteLine("wend")
TextFile.WriteLine("LRE.CloseController()")
TextFile.Close()
Threading.Thread.Sleep(1000)
Process.Start("C:\LRQuadrant\john.vbs")
Dim TextFile2 As New StreamWriter("C:\LRQuadrant\bugger.txt")
TextFile2.WriteLine("hello")
TextFile2.Close()
【问题讨论】:
标签: vb.net service process vbscript