2009-08-11 18 views

Respuesta

8

Prueba esto:

ShellExecute(Application.Handle, nil, 'explorer.exe', nil, nil, SW_NORMAL); 

que necesitará añadir a su ShellAPIutiliza cláusula.

10

Sobre la base de lo que Mason Wheeler dijo: también puede pasar en un directorio como argumento, para obtener la ventana para abrir a una ubicación no predeterminada:

uses 
    ShellAPI; 

... 

    ShellExecute(Application.Handle, 
    nil, 
    'explorer.exe', 
    PChar('c:\'), //wherever you want the window to open to 
    nil, 
    SW_NORMAL  //see other possibilities by ctrl+clicking on SW_NORMAL 
    ); 
22

Bueno, en caso de tener que seleccionar algunas archivo en particular en el explorador he la siguiente función que utilizo

procedure SelectFileInExplorer(const Fn: string); 
begin 
    ShellExecute(Application.Handle, 'open', 'explorer.exe', 
    PChar('/select,"' + Fn+'"'), nil, SW_NORMAL); 
end; 

y se le puede llamar:

SelectFileInExplorer('C:\Windows\notepad.exe'); 

EDIT: Como hay que añadir mencionado ShellAPI a su lista de usos

+1

muy bien, no lo he visto antes de – JosephStyons

+0

¿Esto funcionará si el archivo no estuviera en C: \ ?? – Zeina

+0

Sí, funcionará en cualquier ruta válida de Windows – zz1433

Cuestiones relacionadas