En Delphi He utilizado ShellExecute durante años para iniciar (y, opcionalmente, esperar) otras aplicaciones. Ahora bien, necesito que una de estas aplicaciones aparezca en uno de mis formularios de la aplicación Delphi. He intentado el siguiente código como una prueba simple para abrir el Bloc de notas (que sí lo hace) y para mostrar el resultado dentro de PAnel1 en mi formulario (que no es así). ¿Puede una persona amable ponerme en el camino correcto? Gracias Cómo copiar a otra aplicación y hacer que aparezca en formato delphi
var
Rec : TShellExecuteInfo;
wnd : HWnd;
const
AVerb = 'open';
AParams = '';
AFileName = 'Notepad.exe';
ADir = '';
begin
FillChar(Rec, SizeOf(Rec), #0);
Rec.cbSize := SizeOf(Rec);
Rec.fMask := SEE_MASK_NOCLOSEPROCESS;
Rec.lpVerb := PChar(AVerb);
Rec.lpFile := PChar(AfileName);
Rec.lpParameters := PChar(AParams);
Rec.lpDirectory := PChar(Adir);
Rec.nShow := sw_Show;
ShellExecuteEx(@Rec);
wnd := Windows.FindWindow('Notepad', nil);
Windows.SetParent(Wnd, PAnel1.Handle);
end;
¿Qué desea hacer con el menú principal del Bloc de notas? – Alex