Avatar billede neverwho Nybegynder
25. august 2005 - 21:36 Der er 10 kommentarer

2 instancer skal arbejde sammen

Jeg har en instans af et form, som modtager en parameter ved opstart.
Er det muligt hvis jeg åbner en ny form med en parameter at smide denne parameter over i den i forvejen åbne form og lukke denne (ikke initialisere denne)

jeg har læst en del om singleton, men har ikke kunnet finde svaret der :(
Avatar billede arne_v Ekspert
25. august 2005 - 21:39 #1
Hvis den anden form har en reference til den første form så kan den anden form
kalde en metode på den første form
Avatar billede neverwho Nybegynder
25. august 2005 - 21:46 #2
kan du hjælpe mig lidt mere?

"namespace Snup"
Avatar billede neverwho Nybegynder
25. august 2005 - 21:46 #3
hvordan laver jeg referencen?
Avatar billede arne_v Ekspert
25. august 2005 - 21:47 #4
den kan kommer over i constructor til den anden form

den kan kommer over via en property setter i den anden form

eller den kunne fiskes fra static / singleton
Avatar billede neverwho Nybegynder
25. august 2005 - 21:50 #5
måske jeg er halvvejs så :D

[STAThread]
        static void Main(string[] args)
        {
            Process ThisProcess = Process.GetCurrentProcess();

            Process [] AllProcesses = Process.GetProcessesByName(ThisProcess.ProcessName);

            if (AllProcesses.Length > 1)
            {
                MessageBox.Show(ThisProcess.ProcessName + " is already running",
                    ThisProcess.ProcessName, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                Application.Run(new Form1(args));
            }
        }

kan dog ikke lige finde ud af hvordan jeg får den smidt videre :(
Avatar billede arne_v Ekspert
25. august 2005 - 21:53 #6
Application.Run(new Form1(args));

->

Form1 f1 = new Form1(args);
Application.Run(f1);
Form2 f2 = new Form2(f1);

f.eks.
Avatar billede neverwho Nybegynder
25. august 2005 - 21:58 #7
jeg tror jeg har formuleret mig forkert :(

jeg er ikke selv herre over åbning af instanserne, forstået på den måde at der åbnes et hver gang man trykker på et mailto link i i.e.

derfor skal den anden instans finde ud af om der eksistere en i forvejen og smide args over i den eksisterende, og derefter afslutte (som det fremgår af forrige tråd) hvor den skriver at den allerede eksistere og derefter slutter, eller åbner en instans.

håber det giver en bedre forståelse af hvad jeg ønsker!
Avatar billede arne_v Ekspert
25. august 2005 - 22:07 #8
så du vil via browser starte en instans af applikationen

og ved et forsøg på at starte en ny instans af applikation vil du i stedetfor
kalde noget kode i den første kørende applikation

?

det lyder umiddelbart vanskeligt !
Avatar billede neverwho Nybegynder
25. august 2005 - 22:10 #9
jeg tænkte det kunne lade sig gøre da man kan se hvilke processer der kører, og så måske på en eller anden måde fange den og skrive til den, men det kan man måske slet ikke?

jeg var bare blevet træt af outlook åbner en ny mail for hvert klik, så tænkte at man kunne lave en simpel app der bare tager dem en efter en og tilføjer til "to" feltet :o)

hvis du siger man ikke kan så tror jeg dig, du har vist god erfaring inden for dette... :o)
Avatar billede arne_v Ekspert
25. august 2005 - 22:22 #10
jeg sagde ikke "umuligt" men "vanskeligt"

og ihvertfald langt over min viden
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