# C++ Parameterübergabe an Programm



## HackerNeo (7. September 2007)

Tag Leutz,

habe folgendes Problem:

möchte mein geschriebenes programm gern mit mehr als nur einer datei starten, d.h. wenn ich mehrere dateien markieren und diese mit dem prgramm ausführe, sollen alle dateipfade übergeben werden. weiiß jetz nicht wie ich das machen soll. ich bekomme nur immer den dateinamen übergeben, den ich in der markierten liste rechts angeklickt habe. argv liefert mir also nur dieses eine parameter. wie machen windowsprogramme denn bitte sowas. ich möchte die datei ungern so oft aufrufen, wie ich dateien habe.

bin für jede hilfe dankbar.

gruss christian


----------



## Sinac (7. September 2007)

```
int main(int argc, char *argv[])
```
Die ersten Variable enthält die Anzahl der übergebenen Paramter, das Zweite ist ein Array mit den einzelnen Argumenten.

Greetz...
Sinac


----------



## HackerNeo (7. September 2007)

ja soweit war ich schon. wenn ich dann mehrere dateien markiere und rechtsklick mache und dann die datei ausführe, listet mir das programm nur den pfad des programms selber auf und den pfad der datei, die ich als letztes im markierten bereich mit rechts angeklickt hatte. sonst wäre das ja ganz einfach mit argv. geht aber nicht......hmm


----------



## deepthroat (7. September 2007)

HackerNeo hat gesagt.:


> ja soweit war ich schon. wenn ich dann mehrere dateien markiere und rechtsklick mache und dann die datei ausführe, listet mir das programm nur den pfad des programms selber auf und den pfad der datei, die ich als letztes im markierten bereich mit rechts angeklickt hatte. sonst wäre das ja ganz einfach mit argv. geht aber nicht......hmm


Das Problem ist nicht dein Programm, das ist eine Limitierung beim Explorer. Der Explorer übergibt nur die zuletzt gewählte Datei an dein Programm - da kannst du nichts machen.

Verwende doch einfach Drag'n'Drop und es funktioniert.

Gruß


----------



## HackerNeo (7. September 2007)

hmm dann verstehe ich aber nciht, warum das andere programm ohne weiteres machen. wie z.B. Notepad oderso


----------



## deepthroat (7. September 2007)

HackerNeo hat gesagt.:


> hmm dann verstehe ich aber nciht, warum das andere programm ohne weiteres machen. wie z.B. Notepad oderso


Bei mir funktioniert das nicht. Mein Notepad wird nur einmal geöffnet.

Aber es ist wirklich kein C/C++ Problem.

Gruß


----------



## HackerNeo (10. September 2007)

irgendwie muss aber doch ne möglichkeit existieren, das zu realisieren, was ich vorhabe. 

Kann mir nicht irgendjemand helfen

der Benutzer soll einfach dateien markieren können und diese in bsplw. in eine Datenbank einfügen können.......

Hilfe!!


----------



## Sinac (10. September 2007)

Eventuell könntest du das Ganze über die "Senden an..." Funktion des Explorers realisieren.


----------



## HackerNeo (10. September 2007)

klingt interessant, bloß wie komme ich daran? hab keine ahnung wo das in der registrierung steht


----------



## Sinac (10. September 2007)

Das habe ich auch nicht, aber in 2 Sekunden hätte Google auch dir die Antwort geliefert 
http://www.google.de/search?client=...y&sourceid=opera&ie=utf-8&oe=utf-8&lr=lang_de


----------



## HackerNeo (10. September 2007)

hehe lol ja da hätte ich auch drauf kommen können wa....:suspekt:


----------

