Zum Inhalt springen

Pfadübergabe an die Kommadozeile


Audi

Empfohlene Beiträge

Hallo habe eine Problemstellung bei der Pfade von angeklickten Dateien, an die Kommandozeile übergeben werden sollen, von dort soll dann eine Parameterübergabe über _argc und argv erfolgen.

Die Übergabe kann auch direkt über den Explorer erfolgen, sie muss nicht über die Kommandozeile erfolgen wie beschrieben.

Wie soll ich dieses Problem lösen?

Ist sollch eine Aufgabe überhaubt zu lösen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Es sollen Pfade von Datein, die ich anklicke entweder in der Kommandozeile ausgeben werden (damit ich sie später verarbeiten kann), oder direkt über den Explorer, in mein Programm einfliesen.

Diese weden dann verarbeitet.

Wie soll ich dieses Problem lösen?

Ist sollch eine Aufgabe überhaubt zu lösen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Es sollen Pfade von Datein, die ich anklicke entweder in der Kommandozeile ausgeben werden
Die du wo anklickst? Im Windows-Explorer? Einzel- oder Doppelklick? Ich verstehe immer noch nicht, was du vorhast.

Wie soll ich dieses Problem lösen?

Ist sollch eine Aufgabe überhaubt zu lösen?

Es bringt überhaupt nichts, wenn du dich wiederholst.

Beschreib doch bitte mal genau und im Detail, was passieren soll.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja hab ich, über die Registry.

Meine Güte, lass dir doch nicht alles einzeln aus der Nase ziehen. Allmählich verliere ich die Lust.

Was genau hast du in der Registry eingetragen, und was genau landet in deinem Programm in argc und argv? Wird dein Programm überhaupt aufgerufen?

Wenn du keine detaillierten Informationen zur Verfügung stellst, kann man dir nicht helfen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe ein Programmdumy im Kontextmenü erstellt (Nero), um zu testen wie es mit dem Eintrag in der Registry und dem Kontextmenü funzt(Pfad C:\\Programme\Nero\NeroXY\nero.exe), das "Programm" selbst habe ich nicht und werde es nicht haben (macht jemand anderes), ich muss nur ne main mit argc und argv erstellen, die die Parameter von den markierten Ordnern beim aufruf "meines Programms" übergeben bekommt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe einen neuen Kontextmenüeintrag erstellt (Notepad),

der Pfad des Notepads heißt: C:\Windows\Notepad.exe

Jetzt möchte ich:

1. Ordner die gebraucht werden markieren

2. Rechtsklick und im Kontextmenü benötigtes Programm starten z.B Notepad

(3. In der Kommandozeile werden die Pfade der einzelnen Ordner aufgeführt)

4. Parameter übergabe an ein Programm z.B Editor

5. Im Editor werden alle Pfade aus der Kommandozeile aufgeführt

So ungefähr solls funzen.

Besser kann ich es nicht erklären.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du willst quasi Dateien in einem Ordner iterieren, und die mit dem Notepad öffnen?

Wieso den Umweg über die cmd gehen?

Übergib den Pfad (Ordner/Datei) doch einfach an eine selbstgeschriebene Exe, in der du entweder gleich die Datei ausführst mit einem Programm oder alle Dateien einzeln durchgehst.

Alternativ geht das natürlich auch mit einer Batch. :rolleyes:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe einen neuen Kontextmenüeintrag erstellt (Notepad),

der Pfad des Notepads heißt: C:\Windows\Notepad.exe

Wenn du prüfen willst, ob und wie die Namen der ausgewählten Dateien im Programm aufschlagen, solltest du ein Programm benutzen, bei dem du genau das kontrollieren kannst. Schreib dir ein Programm, das seine Startargumente auf der Konsole ausgibt, und häng das in das Kontextmenü.
Link zu diesem Kommentar
Auf anderen Seiten teilen

Was du bisher nicht erklären konntest, ist dann wohl, dass du nicht möchtest, dass dein Programm bei mehreren markierten Objekte mehrfach gestartet wird?

Dann musst du einen Context Menu Handler erstellen.

Eine Dokumentation dazu findest du hier:

Creating Context Menu Handlers

Beachte aber, dass du dazu einigermaßen fit in COM sein solltest.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was du bisher nicht erklären konntest, ist dann wohl, dass du nicht möchtest, dass dein Programm bei mehreren markierten Objekte mehrfach gestartet wird?

Richtig

Dann musst du einen Context Menu Handler erstellen.

Eine Dokumentation dazu findest du hier:

Creating Context Menu Handlers

Beachte aber, dass du dazu einigermaßen fit in COM sein solltest.

Danke bis dahin, werde es ausprobieren!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...