私はこの問題を解決するために1週間は払っていますが、運がないようにしています。私はvb.net 2008のWindowsサービスを完全に削除して、vbsファイルを作成し、プロセスを使用して起動しました。誰かが助けてくれますか?私はここで死んでいる。 vbsファイルが作成され、有効です。私はそれを手動で実行することができます、Windowsサービスはそれを実行しません!私はWindows 7マシン上にあり、プロセスは32ビットプロセスとしてコンパイルされインストールされています。ローカルシステムとしてもインストールされます。vb.net 2008 - Windowsサービスでvbsが実行されない
プロセスが実行しようとすると、テキストファイルが作成され、正常に実行されました。だから、私はサービスがクラッシュしていないことを知っている。
アイデア?
乾杯、 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()
システムフォルダは常にパスに含まれている必要があります。あなたは間違いなくここに値をハードコーディングしてはいけません**。 –