Avatar billede rwj_defcon1 Nybegynder
06. september 2006 - 10:35 Der er 12 kommentarer

.Net 2.0 og Process.Start()

Hej alle.

Jeg har et problem med at System.Diagnostics.Process.Start("program","args");

Dengang jeg brugte .Net 1.1 var der ikke nogle problemer, men med 2.0 sker det engang imellem at processen til start starter op, men processen der startede går i stå.

Eksempel:

MesssageBox.Show("Før start");
System.Diagnostics.Process.Start("program","args");
MesssageBox.Show("Efter start"); //Her kommer den ikke til engang imellem

I et sådan tilfælde bliver jeg nødt til at stoppe programmer via Joblisten. ... Det startede program kører altid fint og det hjælper ikke at stoppe det for at få hovedprocessen til at virke.

Nogle der har haft ligende problem og/eller ved hvad man kan gører ved det?
Avatar billede dr_chaos Nybegynder
06. september 2006 - 10:48 #1
prøv lige med noget kode i denne stil:
bool blnWaitForExit=true;
//run in process without showing dialog window:
    ProcessStartInfo psi = new ProcessStartInfo();
    //psi.CreateNoWindow = true;
    psi.WindowStyle = ProcessWindowStyle.Hidden;
    psi.FileName = strFileName;
    psi.Arguments = strArguments;

Process p = System.Diagnostics.Process.Start(psi);

if (blnWaitForExit)
p.WaitForExit();
Avatar billede rwj_defcon1 Nybegynder
06. september 2006 - 13:27 #2
>> psi.CreateNoWindow = true;
Denne har jeg prøvet, men der skal gå mere tid før jeg er sikker på om den wirker

>> psi.WindowStyle = ProcessWindowStyle.Hidden;
Denne vil jo skjule processen.. Det skal jeg ikke

>> p.WaitForExit();
Denne gør jo at man skal vente på den startede process stopper, og det er ikke det jeg ønsker. Desuden vil jeg jo heller ikke nå til denne del af koden da det er .Start(..) der stoppes ved

Jeg prøver, men da fejlen er random skal der gå noget tid før jeg kan verificerer at fejlen er forsvundet.
Avatar billede dr_chaos Nybegynder
06. september 2006 - 13:41 #3
kan det være fordi processen kører når du forsøger at starte den ?
Avatar billede rwj_defcon1 Nybegynder
06. september 2006 - 13:47 #4
Nej... Det er hjemmesider (IE), pdf (Adobe) osv, og disse kan der kører flere af den samme.. og det sker ikke kun når der allerede kører noget...
Avatar billede dr_chaos Nybegynder
06. september 2006 - 14:08 #5
ok jeg troede at det et windows program, du lavede.
Hvad er formålet med at starte adobe på serveren ?
Avatar billede rwj_defcon1 Nybegynder
06. september 2006 - 15:07 #6
Det er et windows program som starter andre programmer PDF, Urls, Word-dokumenter, ect.
Avatar billede dr_chaos Nybegynder
06. september 2006 - 16:53 #7
ah så forstår jeg hvad du mener med hjemmesider
Avatar billede arne_v Ekspert
06. september 2006 - 17:30 #8
prøv evt. at læse fra den process du starter
Avatar billede rwj_defcon1 Nybegynder
06. september 2006 - 19:09 #9
>prøv evt. at læse fra den process du starter

Jeg er ikke med på hvad du mener med dette.
Avatar billede arne_v Ekspert
06. september 2006 - 19:14 #10
p.StandardOutput og p.StandardError

check også p.ExitCode
Avatar billede arne_v Ekspert
05. oktober 2006 - 03:04 #11
rwj ?
Avatar billede arne_v Ekspert
10. december 2006 - 00:50 #12
??
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester