Hola
Tengo una aplicación que muestra un digamos "listado de documentos" que el usuario puede abrir con un simple click.
Para "abrir" un documento/fichero, se copia el fichero al directorio temporal del usuario y posteriormente se abre con ShellExecute.
Código Delphi
[-]
ShellExecute(Self.Handle, nil, PChar(tmpFileName),'', '',SW_SHOWNORMAL);
Ahora bien, el usuario sigue trabajando y sigue abirendo, minimizando, ... vamos que llena la pantalla, y más pronto que tarde vuelve a intentar abrir un documento que ya está abierto y "tapado" por muchos otros ...
Lo que yo quería es poder "traer al frente" el documento abierto, y no tener que "abrir" una nueva copia.
Buscando he encontrado la función ShowWindowAsync.
Código Delphi
[-]
ShowWindowAsync(HWND_ventana, SW_MAXIMIZE);
Pero hace falta el handle de la ventana que se genera al llamar a ShellExecute.
¿Cómo podría obtener este handle?, y si no es posible ¿de qué otra forma podria hacerlo?
Muchas gracias de antemano.
Un Saludo