Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  9 993
Hei..

Har begynt å leke meg litt i C# og skal lage et program som installerer ting silent. Har brukt bat filer som gjør dette tidligere. Men nå tengte jeg det var på tide med en liten oppdatering Det jeg har gjort i C# til nå er og kjøre ting fra bat filene enda. eks:

Kode

if (checkedListBox1.CheckedItems.Contains("FlashPlayer"))
                Process.Start("flash.bat");
Som dermed åpner bat filen

Kode

@echo off 
ECHO Installerer Flash Player 8! Venligst vent...
ECHO.
".\Applications\flash_player_8.exe" /s
Må da være mulig og komme utenom de fuckings bat filene. Noen forslag?
Trigonoceps occipita
vidarlo's Avatar
Donor
No kan ikkje eg C#, men du kan vel gjerne gjere Process.Start("kommando"); direkte?
Trådstarter
Får ikke det til og fungere heller.. prøvde f.eks dette:

Kode

           if (checkedListBox1.CheckedItems.Contains("AvgFree"))
                Process.Start("avg75free_432a861.exe /HIDE /DONT_START_APPS /NO_WELCOME /NO_AVGW_STARTUP /QUIT_IF_INSTALLED");
Fungerer fint fra bat filen
Trigonoceps occipita
vidarlo's Avatar
Donor
Kva feilmelding får du? Har du kjørt en strace og sett kor det tryna? Har du prøvd med absoulutt path?
Syntaxen hvis du skal ha med argumenter etter selve kommandoen er:

Kode

Process.Start(string filename, string arguments)
Så da skulle du vel hatt noe liknende dette:

Kode

Process.Start("avg75free_432a861.exe", "/HIDE /DONT_START_APPS /NO_WELCOME /NO_AVGW_STARTUP /QUIT_IF_INSTALLED");
prøv det...
Trådstarter
Den tryner jo når den linjen skal utføres.. Får ikke noe error men: System.ComponentModel.Win32Exception {"System finner ikke angitt fil"}

Kjører jeg

Kode

 
            if (checkedListBox1.CheckedItems.Contains("AvgFree"))
                Process.Start("avg75free_432a861.exe");
starter den avg setup men da ikke silent så klart..

EDIT: Så mld din litt sent Recruit men det så ut til og funke takker så mye.. er vel ikke noe lett måte og få opp en form for varsling om at det og det nå blir instalert og er ferdig?
Sist endret av X-It; 6. februar 2007 kl. 22:36.
Har du installeringsfila i samme mappe som exe-fila som kjøres?
Det er vanligvis i
Mine Dokumenter\Visual Studio\Projects\NavnPåProsjekt\NavnPåProsjekt\bin\Debug
hvis du bruker Visual Studio da...
Sist endret av Recruit; 6. februar 2007 kl. 22:36.
Trådstarter
Se edit over Recruit
Ikke enkel, men det går fint an. Du må da lage et Process objekt, med en Event Handler til når det avsluttes. Når Event Handleren kjøres vises for eksempel en MessageBox...
Trådstarter
hmm.. Ja jeg får vel prøve og lese meg frem til det da men takk for hjelpen i alle fall..