Tengo el siguiente método que recibe la ruta larga de un archivo X,
y que necesito convertir a su ruta corta:
cpp
AnsiString __fastcall TForm1::ShortPath(AnsiString ruta){ char *shortPath=(char*)alloca(ruta.Length()+1); GetShortPathName(ruta.c_str(),shortPath,ruta.Length()+1); return AnsiString(shortPath); }
Pero resulta que teniendo esta ruta:
C:\Share_JP\Prueba1\New Folder\abc.txt
Me devuelve el valor como se muestra en la figura que adjunto, entonces con ese valor resuelto
tengo otro método que intenta abrir tal archivo y alli sucede un error, porque el valor devuelto
de ruta corta es así (según la imagen adjunta):
X¿\f@Üm
Y de allí me muestra el mensaje de error que tal ruta no existe!
Entonces de alli la orientación que necesito para resolver este problema.
Saludos y gracias