Forum: PC-Programmierung Win32 Konsolen-Anwendung: Parameter per Drag&Drop


von Werner (Gast)


Lesenswert?

Hallo,
ich habe heute unter Windows ein Programm zum Generieren von md5 
Prüfsummen gebraucht, und bin dabei auf dieses Programm gestoßen:
http://www.pc-tools.net/win32/md5sums/

Mann kann per Drag&Drop im Windows Explorer auf die exe schieben, und 
für diese Datei wird dann die Prüfsumme generiert.

Mich würde interessieren wie das Programm dieses Drag&Drop auswertet. 
Wird dort der Dateiname übergeben? Oder schon die reinen Daten (quasi 
wie mit einer Pipe, wobei ich nicht weiß ob das bei sehr großen Dateien 
noch funktioniert).
Scheint zumindest etwas Windows spezifisch zu sein, oder könnte man das 
auch allgemein in einem C-Programm mittels argc/argv lösen?

Gruß

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Das Programm wird mit der Datei als Parameter aufgerufen.

von Klaus W. (mfgkw)


Lesenswert?

In der Textdatei dazu steht:
1
Besides the normal command line usage (see examples above), MD5sums
2
can also be easily added to the windows shell. Use Windows Explorer
3
to access your user profile directory (one level up from the "Start
4
Menu" directory). Locate the "SendTo" folder and create a shortcut
5
inside it to "md5sums -p" (pause before returning).
6
7
If you have trouble locating your user profile directory, try this
8
at the command prompt: echo %userprofile%
9
10
After adding MD5sums to the SendTo folder, you can select one or
11
more files on the desktop (or in any other folder), and right-click
12
to "Send To" md5sums. Each selected file will be processed.

Bei einem sendto-Programm wird einfach der Name der zu
bearbeitenden Datei (die im Explorer ausgewählt ist) per
Programmargument übergeben.

von Werner (Gast)


Lesenswert?

Ah, das Drag&Drop funktioniert ja wirklich ganz einfach über argc/argv.

Wie würde man das unter Windows denn machen, wenn ich ein Programm A 
habe, das eigentlich Daten in eine Datei schreibt (Dateiname wird als 
Argument übergeben), ich aber die Daten nicht in die Datei schreiben 
will sondern direkt an Programm B weiterleiten will?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.