| |

Fortgeschrittene ProgrammierungDaten/Variablen zwischen einer mehrfach gestarteten Anwendung übertragen? | |  | Autor: kr0k0f4nt | Datum: 01.08.06 17:47 |
| Hallo alle zusammen,
Ich habe ein Problem, das ich zwar im prinzip schon gelöst habe, aber ich irgendwie glaube das es doch einfacher gehen muss.
Also ich arbeite an einem Programm das eine Art Jobliste haben soll. Dh. ich will das man ein paar Dateien und Ordner im Explorer markiert und dann via Kontext mein Programm aufrufen kann, welches sich dann Präsentiert mit einer Liste der Dateien/Verzeichnise die man gewählt hat.
Realisiert hab ich das nun soweit in dem in in die Registry im Classes Root unter * und Directory ein Shell\Programmname\command Schlüssel angelegt habe und dann mein "Programm.exe %1" als Standardwert. Nun kann ich also ein paar Ordner und Dateien anwählen und im Kontext taucht mein Programm auf. Führe ich es nun aus, hab ich das Problem das Windows für jedes der gewählten Objekte eine Programm instanz aufruft. Vielleicht liegt ja hier schon mein Fehler?
Ich hab dann halt weiter programmiert und mit App.PrevInstance festgestellt ob schon eine Instanz läuft, das erste Programm wurde somit quasi Chef und die anderen die nun aufgehen sollten nun irgendwie ihren erhalten Pfad aus Command$ dem ersten mitteilen. Ich finde aber keinen, in meinen Augen, wirklich guten Weg.
Mir wäre da einerseits die Idee gekommen via WinSock und Localhost die Daten so als Server Client zu übermitteln, was aber eigentlich blödsinn ist. Dann hab ich nun die Idee gehabt das die anderen Programme, wenn sie merken es läuft schon die Hauptinstanz einfach eine Textdatei erstellen, diese Sperren und dort ihren Pfad ablegen und die anderen Programme solange probieren auch auf die Datei zuzugreifen bis alle dort Ihren Pfad abgelegt hab. Anschließen liest die erste Instanz diese Daten ein.
Um festzustellen wann wirklich schluss ist, muss die erste Anwendung ihre Windowhandler oder ProzessID hinterlegen und jede weitere Anwendung fragt dann ob es noch andere anwendungen gibt und ob es vielleicht doch nur noch die Hauptinstanz ist, wenn ja schreibt er halt auch irgendwo was hin wo die Hauptinstanz guckt.
Das wäre nun meine, sehr umständliche Lösung. Ich kann mir aber nicht vorstellen das es wirklich so geht. Da muss es doch was einfacheres geben ... hat jemand vielleichte eine Idee? Bitte helft mir
Mfg
Martin Stähle
You can't solve it, it's not a problem, its reality! |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevCommand 4.0 
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) TOP Entwickler-Paket 
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR...
Jetzt nur 979,00 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|