MP3s mit Leerstellen abspielen mit mciSendString
-
[b]Syntax[/b] DWORD WINAPI GetShortPathName( __in LPCTSTR lpszLongPath, __out LPTSTR lpszShortPath, __in DWORD cchBuffer ); Parameters [i]lpszLongPath[/i] The path string. The function retrieves the short form of this path. In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "\\?\" to the path. For more information, see Naming a File. [i]lpszShortPath[/i] A pointer to a buffer to receive the null-terminated short form of the path that lpszLongPath specifies. [i]cchBuffer[/i] The size of the buffer that lpszShortPath points to, in TCHARs.ok bin noch nicht sehr gut in c++ von daher wäre ein Beispielcode, der GetShortPathName verwendet, sehr hilfreich. Danke im voraus
-
pfad = "\"mu sik\\M et al\\test.mp3\"";
-
bitte mit erklärung....
funzt aber auch nicht^^
-
sorry
pfad = "musik\\Metal\\test.mp3"; string szCommand = "\\" + open " + pfad + "\\";
-
string szCommand = "\\" + "open " + pfad + "\\";
-
so jetzt aber!
string szCommand = "\"" + "open " + pfad + "\"";
-
sorry bin besoffen ich kriegs nicht richtig hin
-
...aha....!
sieht aber nicht so aus als obs auf ne lösung für mein problem hinausläuft...
wenn zb die datei dort liegt:
[b]musik\\Metal\\artist - song.mp3[/b]muss ich das irgendwie so machen:
[b]char dateiname_lang[100]="artist - song.mp3"; char dateiname_kurz[100]; char play[4]="play"; [i]// müsste eigentlich [ ..="play "; ] da sonst -> pla[u]ym[/u]usik\\Metal\\artist - song.mp3[/i] GetShortPathName(dateiname_lang, dateiname_kurz,255); strcat(play,dateiname_kurz); [i]// play = "play " + "musik\\Metal\\artist - song.mp3"[/i] mciSendString(play, NULL, 0, NULL);[/b]das lässt sich zumindest mal compilieren, aber getShortPathName funktioniert anscheinend mit strings nicht (mit denen ich aber arbeite^^).
-
http://c-plusplus.net/forum/viewtopic-var-t-is-39378.html
Die dort vorgestellte Funktion funktioniert mit Leerzeichen
-
na das ist doch mal was...
ich weiß zwar nicht genau wieso es klappt, denn auch wenn ich den code teilweise übernehme klappts mit meinem eigenen nicht hmm... ich probiers morgen (bzw Montag) weiter...
vielen dank "..........." für deine Bemühungen!!!!
-
Der "Trick" dabei ist, dass der Pfad mit Gänsefüßchen (<-lange nicht mehr gesagt/geschrieben :)) ummantelt wird.
-
Ich glaube, ich habs verstanden. Demnach müsste das "geheimnis" in dem
\"%\"liegen?!
wsprintf(cmd,"play \"%s\"",path); [i] // cmd = "play ..." + der pfad[/i] mciSendString(cmd,NULL,NULL,NULL) [i]// dann wird cmd abgespielt....[/i]
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Blackout1911 schrieb:
Demnach müsste das "geheimnis" in dem
\"%\"liegen?!
Genau!
(Soll ja keine Frage unbeantwortet bleiben :)).
-
Badestrand schrieb:
Blackout1911 schrieb:
Demnach müsste das "geheimnis" in dem
\"%\"liegen?!
Genau!
(Soll ja keine Frage unbeantwortet bleiben :)).Danke!
(Soll ja keine Antwort unbedankt bleiben :)).