Avatar billede rasseren Nybegynder
17. november 2004 - 19:54 Der er 15 kommentarer og
1 løsning

C# program skal køre som dæmon

Hej..

Jeg har lavet et lille program som bare består af en simpel form.
Problemet er, at når jeg kører programmet tager det mellem 1-2 sekunder at loade, og det er for meget.
Derfor tænkte jeg på om man ikke kunne loade programmet under opstart af windows, og så bare lave et lille biprogram (eller noget), som så sørger for at loade formen i det første program.

En anden måde kunne også være, at det allerede eksisterende program går ud og tjekker ved opstart om programmet allerede kører, og hvis det gør, så loade formen...

Jeg ved det ikke, men jeg håber i forstår min pointe
Avatar billede a1a1 Novice
17. november 2004 - 20:45 #1
du kan lave et program der kører nede ved uret (ligesom uret) ;o)
Avatar billede rasseren Nybegynder
17. november 2004 - 21:08 #2
Ja, den er jeg med på... Men hvordan får jeg den til at vågne igen rent kodemæssigt?
Den skal vågne enten ved at køre programmet igen, eller ved at køre et lille andet program...

Formen skal loades ved at køre en exefil (eller noget tilsvarende).. gerne med parametre
Avatar billede burningice Nybegynder
17. november 2004 - 22:36 #3
well... du kan lave dit program hvor man kan bruge switches til

altså, f.eks

program.exe /systray <- så loader dit program men gemmer sig nede ved uret
program.exe <- hvis programmet kører i forvejen skal din form bare vises, ellers skal programmet startes og formen vises

til dit systray-ikon (nede ved uret) kan du så også gøre det, at man f.eks. kan dobbelklikke på det og på den måde få vist formen.
Avatar billede repsak Nybegynder
18. november 2004 - 09:43 #4
du kan bruge ngen.exe toolet for at optimere loadtiden
Avatar billede rasseren Nybegynder
18. november 2004 - 11:43 #5
cyberfessor: Hvordan vil du helt præcist gøre sådan, at det er den samme program.exe instans den kører igen, og ikke bare endnu et program (således at der kører to program.exe på samme tid). Den skal jo køre videre med det der allerede er loadet i hukommelsen...

repsak: Kan du evt. give mig lidt mere info om det tool du omtaler?
Avatar billede burningice Nybegynder
18. november 2004 - 12:13 #6
ngen gør det at din IL-code bliver compilet under installationen og ikke første gang programmet starter. Hvis du har problemer med lang loadetid hver gang, så får du ikke noget ud af at bruge ngen.

Det er forholdsvis nemt at finde ud af om dit program kører i forvejen. Den simple måde er at kigge efter om der kører en process med samme navn som den process du er ved at starte. Der står et eksempel med det her

http://www.c-sharpcorner.com/FAQ/Create1InstanceAppSC.asp
Avatar billede rasseren Nybegynder
18. november 2004 - 17:01 #7
Jeg har fået lavet noget test med koden fra det link du sendte mig, og jeg kan godt få det til at du... MEN.. Jeg synes ikke det er helt optimalt :-S
Grunden til det er, at jeg ikke snakker direkte med programmet. Jeg tjekker om programmet kører, og hvis det gør, gør jeg det aktivt. Men det tager faktisk lige så lang tid, som hvis jeg bare kørte programmet.

Jeg har fået lavet et lille ikon ved siden af uret, som hele tiden ligger i hukommelsen. Når jeg klikker på ikonet, loader formen super hurtigt!

Nu mangler jeg så at kunne sende et signal ind i programmet, så jeg kan få den respektive Form i programmet til at loade..
Avatar billede Syska Mester
18. november 2004 - 23:45 #8
Hvis man må spørge, hvad er det som ikke må tage 1-2 sekunder at loade? synes nu ikke det er så lang tid igen, men det kommer selvf an på hvad det drejer sig om
Avatar billede rasseren Nybegynder
19. november 2004 - 14:40 #9
Det er et lille vindue som skal dukke op midt på skærmen, når jeg klikker på en en angivet genvej (lidt alla ALT+TAB). Det er møg irriterende at det kan tage op til en ca. 3 sekunder... Den skal jo helst være der lige idet man klikker på genvejen..
Avatar billede burningice Nybegynder
22. november 2004 - 17:35 #10
rasseren>> hvor i din kode laver du tjekket om programmet kører i forvejen?

Du kan jo lave det direkte i din Main, så du ikke behøver at skulle vise nogen form hvis det er unødvendigt.
Avatar billede burningice Nybegynder
22. november 2004 - 17:35 #11
vise = loade... hvis du laver dit "kører-mit-program"-tjek i din form skal den jo loades først, og det kan tage unødig lang tid
Avatar billede rasseren Nybegynder
25. november 2004 - 16:16 #12
Jeg gør det allere i main..
Avatar billede burningice Nybegynder
25. november 2004 - 19:35 #13
ja.. så er der ikke så meget at gøre... det virker underligt at det skal tage 2 sekunder før den begynder at udføre kode i Main(), men hvis dit tjek blive lavet som det aller aller første, og det stadigvæk tager lang tid at udføre, så er du lidt på herrens mark.
Avatar billede rasseren Nybegynder
26. november 2004 - 12:59 #14
æv bæv... Men takker for hjælpen.. Jeg må jo bare prøve at rode lidt med det... Jeg følger op på denne tråd, hvis jeg finder en perfekt løsning!
Avatar billede rasseren Nybegynder
26. november 2004 - 13:00 #15
prøver lige igen...
Avatar billede rasseren Nybegynder
26. november 2004 - 13:01 #16
kan tydeligvis ikke helt hitte ud af det her :-S
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