myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Grundlagen von C# » Wie kann ich bereits geöffneter Konsoleninstanz per Drag&Drop neue Argumente übergeben?
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Wie kann ich bereits geöffneter Konsoleninstanz per Drag&Drop neue Argumente übergeben?

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
ma_fo
myCSharp.de-Mitglied

Dabei seit: 10.09.2020
Beiträge: 6
Entwicklungsumgebung: Visual Studio
Herkunft: Bayern


ma_fo ist offline

Wie kann ich bereits geöffneter Konsoleninstanz per Drag&Drop neue Argumente übergeben?

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo,
Ich habe ein Konsolen Programm dem ich via Drag and Drop Datein übergebe und diese in einer txt Datei dokumentiere.
Bisher habe ich das Programm nur einmal aufgefruden.

Wie kann ich bei einem zweiten aufruf die übergebenen Dateipfade quen/hinten an hängen?

Gruß
16.09.2020 15:36 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
T-Virus T-Virus ist männlich
myCSharp.de-Mitglied

Dabei seit: 17.04.2008
Beiträge: 1.598
Entwicklungsumgebung: Visual Studio, Codeblocks, Edi
Herkunft: Nordhausen, Nörten-Hardenberg


T-Virus ist offline Füge T-Virus Deiner Kontaktliste hinzu

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Wenn du pro Durchlauf die Pfade lokal speicherst, z.B. in einer Textdatei, dann kannst du die neuen doch einfach an die Datei anhängen.
Dann musst du diese nur einmal auslesen und hast alle Pfade.

Hier wäre aber auch der use Case interessant.
Ggf. kann man auch einen anderen Ansatz überlegen.

T-Virus
16.09.2020 15:48 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.735
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ansonsten sollte  "Nur eine Instanz pro Anwendung" featuring IPC passend sein (am besten  meine aktualisierte Version benutzen).

Beachte, daß du eine neue GUID (z.B. vom VS im "Tools"-Menü) erzeugen läßt (und verwendest ;-).
16.09.2020 17:26 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
ma_fo
myCSharp.de-Mitglied

Dabei seit: 10.09.2020
Beiträge: 6
Entwicklungsumgebung: Visual Studio
Herkunft: Bayern

Themenstarter Thema begonnen von ma_fo

ma_fo ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ich wollte die übergebenen Pfade eingentlich nicht in einem txt File speichern.
Kann aber auch das args[] nicht erweitern, fällt miir gerade so auf.

Workflow sieht wie folgt aus.

Dateien via Drag and Drop auf die Konsole.exe
Dateipfade im args[] werden stück für stück abgearbeitet.
Pro Dateipfad wird eine txt erstellt.
Konsolenfenster schließt automatisch.

Wenn ich nun bevor sich das Fenster schließt neue Dateien auf die Exe ablege dann würde ich gerne diese in das args[] einfügen und nicht eine neue Instanz der Konsole öffnen.

Ich hoffe ich habe nun mehr Klarheit reinbrignen können

Gruß
17.09.2020 09:29 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Spook Spook ist männlich
myCSharp.de-Mitglied

Dabei seit: 28.10.2008
Beiträge: 220
Entwicklungsumgebung: VS2019
Herkunft: Esslingen a.N.


Spook ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo ma_fo,

du wirst wohl nicht darum herumkommen die Argumentliste von neuen Instanzen an die laufende zu übertragen. Th69 hat dazu ja bereits eine mögliche Lösung gepostet (Stichwort IPC).
Ich würde in der primären Instanz eine Queue anlegen und dort die eigenen Einträge einfügen und diese in einer Schleife abarbeiten. Weitere Instanzen übertragen ihre Argumentliste an die primäre Instance, die ebenfalls in die Queue eingefügt werden. Ist die Queue leer beendet sich das Programm.

Grüße
spooky
17.09.2020 09:45 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
ma_fo
myCSharp.de-Mitglied

Dabei seit: 10.09.2020
Beiträge: 6
Entwicklungsumgebung: Visual Studio
Herkunft: Bayern

Themenstarter Thema begonnen von ma_fo

ma_fo ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Jo das ist mir auch so gekommen dass ich erstmal das Programm umschreiben muss.
Dazu muss ich mir eben mehr Gedanken machen.
Bis dahin läuft es dann parallel ^^
17.09.2020 09:50 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum
Antwort erstellen


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 26.09.2020 07:16