SonnejaColonia
10-09-2005, 20:53
Hallo alle zusammen,
in meinem Code passier etwas seltsames. Ich versuche aus einem vorhanden absoluten Dateinamen char path[256] = "C:\path\file.ext" nur den Pfad "C:\path\" zu extrahieren. Dafür verwende ich strtok und "\\" den backslash als Delimiter.
char* token;
token = strtok(path,"\\")
CString dllDir = "";
while(token != NULL)
{
strcat(dllDir.GetBuffer(dllDir.GetLength()),token) ;
strcat(dllDir.GetBuffer(dllDir.GetLength()),"\\");
token = strtok(NULL,"\\");
}
Ich habe mir die Zwischenergebnisse im Debugger angesehen und kann sehen, dass alle token anständig ausgelesen werden. Jedoch hört er nicht rechtzeitig auf.
Nach der Dateiendung kommt ja kein backslash mehr .. weiß jemand was ich falsch mache? Mir würde jeder Hinweis helfen.
Vielen Dank
SonnejaColonia
in meinem Code passier etwas seltsames. Ich versuche aus einem vorhanden absoluten Dateinamen char path[256] = "C:\path\file.ext" nur den Pfad "C:\path\" zu extrahieren. Dafür verwende ich strtok und "\\" den backslash als Delimiter.
char* token;
token = strtok(path,"\\")
CString dllDir = "";
while(token != NULL)
{
strcat(dllDir.GetBuffer(dllDir.GetLength()),token) ;
strcat(dllDir.GetBuffer(dllDir.GetLength()),"\\");
token = strtok(NULL,"\\");
}
Ich habe mir die Zwischenergebnisse im Debugger angesehen und kann sehen, dass alle token anständig ausgelesen werden. Jedoch hört er nicht rechtzeitig auf.
Nach der Dateiendung kommt ja kein backslash mehr .. weiß jemand was ich falsch mache? Mir würde jeder Hinweis helfen.
Vielen Dank
SonnejaColonia