KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a service that sometimes calls a batch file. The batch file takes 5-10 seconds to execute: System.Diagnostics.Process proc = new System.Diagnostics.Process(); // Declare New Process proc.StartInfo.FileName = fileName; proc.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; proc.StartInfo.CreateNoWindow = true; proc.Start(); proc.WaitForExit(); The file does exist and the code works when I run the same code in-console. However when it runs inside the service, it hangs up at WaitForExit() . I have to kill the batch file from the Process in order to continue. (I am certain the file exists, as I can see it in the processes list.) How can I fix this hang-up? Update #1: Kevin's code allows me to get output. One of my batch files is still hanging. "C:\EnterpriseDB\Postgres\8.3\bin\pg_dump.exe" -i -h localhost -p 5432 -U postgres -F p -a -D -v -f "c:\backupcasecocher\backupdateevent2008.sql" -t "\"public\".\"dateevent\"" "DbTest" The other batch file is: "C:\EnterpriseDB\Postgres\8.3\bin\vacuumdb.exe" -U postgres -d DbTest I have checked the path and the postgresql path is fine. The output directory does exist and still works outside the service. Any ideas? Update #2: Instead of the path of the batch file, I wrote the "C:\EnterpriseDB\Postgres\8.3\bin\pg_dump.exe" for the proc.StartInfo.FileName and added all parameters to proc.StartInfo.Arguments . The results are unchanged, but I see the pg_dump.exe in the process window. Again this only happens inside the service. Update #3: I have run the service with a user in the administrator group, to no avail. I restored null for the service's username and password Update #4: I created a simple service to w
Tags (comma-separated)
Save Edits
Cancel