2009-08-11 5 views

Antwort

8

Versuchen Sie folgendes:

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

Sie werden ShellAPI auf Ihre verwendet Klausel hinzufügen müssen.

10

Aufbauend auf Mason Wheeler sagte: Sie auch in einem Verzeichnis als Argument übergeben können, das Fenster zu einem Nicht-Standard-Speicherort zu öffnen, zu erhalten:

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

Nun, wenn Sie brauchen, um einige wählen bestimmte Datei im Explorer ich habe die folgende Funktion, die ich verwenden

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

und Sie können es nennen:

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

EDIT: Wie bereits erwähnt ShellAPI muss

+1

sehr cool, ich habe das vorher nicht gesehen – JosephStyons

+0

Funktioniert das, wenn die Datei nicht in C: \ ?? – Zeina

+0

Ja, es funktioniert mit jedem gültigen Windows-Pfad – zz1433

Verwandte Themen