17. november 2004 - 19:54Der 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
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
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.
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?
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
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..
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
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..
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.
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.