drang and drop
-
ich glaub schon. ich hatte mal nen beispiel runtergeladen mit dem man id3-tags auslesen konnte, und das war konsole + drang and drop.
nur irgendwie is es verschwunden.
-
Erklär mal genau den Vorgang:
Nimmst du die mp3-Datei und schiebst sie (vermutlich im Explorer) auf das Icon deines Programms oder startest du erst dein Programm und ziehst dann die mp3-Datei auf das Fenster mit deinem Programm?
-
Ich glaube, er meint auf das Icon!
mp3-datei via drang and drop auf mein konsolen-proggi schiebt, dieses sich öffnet
Es soll sich ja öffnen!
-
Dann ist die Sache ganz einfach. Die Datei wird als Übergabeparameter verwendet, d. h. das hier ist gefragt:
int main(int argc, char *argv[]) { int i; for(i = 0; i < argc; ++i) { printf("%s\n", argv[i]); //ANSI-C // cout << argv[i] << endl; //C++ } scanf("%i", &i); //Nur damit das Fenster nicht gleich wieder zu geht ;) // cin >> i; //C++-Variante }
Wenn man nun irgendeine Datei auf das compilierte Programm schiebt, dann sollten zwei Zeilen ausgegeben werden. Einmal der Pfad und Programmname des aufgerufenen eigenen Programms und als zweites der Pfad und Dateiname der Datei, die auf das Programm geschoben wurde.
-
man KÖNNTE doch mithilfe der Registry für einen best. dateityp ein eigenes programm schreiben, welches mithilfe von rechtsklick geöffnet werden kann (wie "öffnen mit..:")...
bsp: winzip, winrar, Antivirenscanner,.... (bei rechtsklick auf datei)
-
@chille07
es war aber nach drag und drop gefragt...
-
Ich hoffe, ich kann damit helfen:
int main(int argc, char* argv[]){ char* datei=0; printf("%s\n", argv[1]); // Hier steht der Dateiname beim Ziehen auf das Icon drin // wenn nichts auf das Icon gezogen wurde: (null) scanf("%s", datei); printf("%s", datei); // Hier steht der Dateiname beim Ziehen auf die Konsole drin // wenn nichts auf die Konsole gezogen wurde: (null) }
-
@c++-core
hat AJ schon drei threads vorher gepostet.. doppelposts werden hier nicht gefordert!
-
Aber man schaue sich seine Beschreibung zu scanf(); an...
-
Und was sieht man dann? Ich will nur vermeiden, dass ständig system(...) verwendet wird.
Und wenn du schon was doppelt postest, dann bitte richtig. Mit deinem Programm kommt man an einem Programmabsturz gar nicht vorbei.
Eine Bitte:
Wenn du noch kein Buch über C(++) hast, dann kauf dir bitte eins und lern erstmal damit (auch wenn du schon eines hast!), bevor du hier ständig die simpelsten Sachen frägst, die man mit 5 Min. suchen lösen kann und dann auch noch "Lösungen" postest, die mehr Probleme schaffen als lösen.