PDA

Ver la Versión Completa : Abrir carpeta con explorer


lmpadron
06-12-2011, 23:28:32
hola amigos

Sin querer he hecho dos preguntas en este post (http://www.clubdelphi.com/foros/showthread.php?t=76941) por lo que antes de que me respondan voy a separarlas

Necesito que se abra el explorador de windows en una carpeta espedifica, para ello uso

ShellExecute(NULL,"open",ExtractFileDir(OpenDialog1->FileName),NULL,"",SW_SHOWNORMAL);

sin embargo me da estos errores

[C++ Error] Unit3.cpp(130): E2034 Cannot convert 'AnsiString' to 'const char *'
[C++ Error] Unit3.cpp(130): E2342 Type mismatch in parameter 'lpFile' (wanted 'const char *', got 'AnsiString')

Gracias de entemano por su ayuda

thecidmx
07-12-2011, 00:29:09
estas intentando abrir un directori o un archivo??, por q si es un archivo el error esta en ExtractFileDir(OpenDialog1->FileName), el cual es de manera string, y no de la forma char., lo q tienes q usar es cnvertir la cadena a char, y podria funcionar.

ecfisa
07-12-2011, 00:35:51
Hola Impadron.

Usando FileName, también tenes que pasarle la aplicación a ejecutar:

ShellExecute(Handle,
"open", // Acción
"explorer.exe", // Aplicación
ExtractFilePath(OpenDialog1->FileName).c_str(), // Ruta
"",
SW_SHOWNORMAL);



Saludos.