Ver Mensaje Individual
  #1  
Antiguo 02-01-2006
[Gunman] [Gunman] is offline
Miembro
 
Registrado: dic 2004
Ubicación: Pedreguer.
Posts: 355
Reputación: 20
[Gunman] Va por buen camino
Abrir una carpeta con el explorador de windows

He buscado por los foros y he encontrado diferentes soluciones, pero ninguna me funciona. He intentado probar cantidad de combinaciones con ShellExecute, pero nada.
Miro la declaración de ShellExecute:
Código Delphi [-]
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
  Directory: PChar; ShowCmd: Integer): HINST; stdcall;
En hWnd pongo el Handle del formulario: MainFrm.Handle, en Operation pongo 'open', en FileName le meto 'explorer.exe', en parameters pongo las opciones: '/n,/e', en Directory pongo el directorio que quiero abrir: FileName y finalmente en ShowCmd le indico SW_SHOWNORMAL. Todo esto está en una Acción de un TActionManager:
Código Delphi [-]
procedure TMainFRM.ExploreActExecute(Sender: TObject);
var
  FileName: PAnsiChar;
begin
  if (ExplorerList.ItemIndex >= 0) and
     (Copy(ExplorerList.Selected.SubItems[3],1,1) = 'D') then
  FileName := PChar(IncludeTrailingPathDelimiter(CurrLocalPath) +
              IncludeTrailingPathDelimiter(ExplorerList.Selected.Caption))
  else
  FileName := PChar(IncludeTrailingPathDelimiter(CurrLocalPath));

  ShellExecute(MainFrm.Handle,'open','explorer.exe','/e',FileName,SW_SHOWNORMAL);
end;

Pero esto no funciona, me abre el explorador de windows, pero no en la carpeta seleccionada, sino en C.

He probado sin ponerle el 'open', hace lo mismo, he probado de quitarle 'explorer.exe' y lo abre en una ventana del explorador normal (sin el árbol de directorios), no funciona.
Alguien sabe como puedo solucionar mi problema? Uso WinXP Pro, no se si el problema reside en esto, creo que no...
__________________
l2prog.co.nr
Responder Con Cita