Eksekvering af Batch jobs fra C# Windows Service
Hejsa.Jeg kører nogle store .cmd/.bat filer fra min C# kode, som er en Windows Service.
Setuppet er meget stort, men kort fortalt så modtager denne windows service en kommando via en Socket forbindelse og udfører så en bestemt handling alt efter hvilken kommando den modtager.
Det virker alt sammen fint nok, men jeg har et par spørgsmål ang. batch kørsler:
1. Jeg kan sætte redirectstandardoutput og redirectstandarderror til TRUE. Så kan jeg godt læse consol outputtet fra standardoutput egenskaben efter min consol applikation er afsluttet.
Men nu er det sådan at de batch filer jeg skal køre laver nogle ret hæftige operationer som kan tage 30 - 60 minutter.
Jeg ville gerne løbende kunne trække outputtet. Bare hvert minut eller lign.
Er der nogen som ved om man kan det, og i så fald kan give et eksempel herpå?
2. Hvis jeg ikke sætter de har utræks egenskaber, men bare kører .bat filen ganske alm. (Stadig fra min C# kode selfølgelig), så reagerer jobbet på en måde og kører helt som det skal. Men så snart jeg sætter redirectstandardoutput osv, så kan det finde på at fejle nogle steder.
Jeg kender ikke så meget til de konkrete .bat filer som skal køres, og de er meget advancerede og derfor alt for svære at forklare her, men tænkte på om der er nogen forskel som man skal være opmærksom på når man sætter redirectstandardoutput og UseShellExecute til true?
Er der nogle miljø variabler som ikke er tilgængelige eller er der andre forskelle?
Mvh.
Lasse