quarta-feira, 16 de fevereiro de 2011

Executar o Windows Explorer em uma pasta específica


Veja nesta dica um código simples, capaz de abrir via programação o Windows Explorer, iniciando-o em uma pasta específica. Para compilar, é necessário acrescentar ao uses a unit ShellApi, e codificar a seguinte função:

function ExecExplorer(OpenAtPath: string; OpenWithExplorer,
  OpenAsRoot: Boolean): Boolean;
var
  s: string;
begin
  if OpenWithExplorer then
  begin
    if OpenAsRoot then
      s := ' /e,/root,"' + OpenAtPath + '"'
    else
      s := ' /e,"' + OpenAtPath + '"';
  end
  else
    s := '"' + OpenAtPath + '"';

  result := ShellExecute(
    Application.Handle,
    PChar('open'),
    PChar('explorer.exe'),
    PChar(s),
    nil,
    SW_NORMAL) > 32;
end;
Para testar, podemos fazer, por exemplo:

  ExecExplorer('C:\Temp', True, True);

Nenhum comentário:

Postar um comentário