Y4H1KO Posted November 6, 2011 Report Share Posted November 6, 2011 Eaw galera queria ver se mim ajudavam com uma coisa aki eu estou tentando criar um programa que abra um outro programa mais que o o programa externo fique dentro do meu form so tem um problema queria que ele ficasse centralizadouso esse codigovarfNotepadHandle:HWND;linha2,linha4,linha5:string;beginlinha2:='nome do executavel' ;linha4:='ip';linha5:='porta';WinExec(pchar(ExtractFilePath(Application.ExeName) +linha2+' connect /u'+linha4+' /p'+linha5),sw_normal);fNotepadHandle := Windows.FindWindow( 'janela', nil ); Windows.SetParent( fNotepadHandle, Handle );end;e queria que quando eu fexar o programa externo minha aplicação fexasse Quote Link to comment Share on other sites More sharing options...
0 Jhonas Posted November 7, 2011 Report Share Posted November 7, 2011 Oi Y4H1KO ou seria perobaferr ( forum active ) ... rso programa externo fique dentro do meu form so tem um problema queria que ele ficasse centralizadoe queria que quando eu fexar o programa externo minha aplicação fexasseexemplo:procedure TForm1.Button1Click(Sender: TObject); var Prog: string; ProgC: PAnsiChar; Handle: THandle; rect: TRect; begin Prog := 'c:\calc.exe'; ProgC:= PAnsiChar(Prog); Handle := FindWindow(nil, 'Calculadora'); if Handle > 0 then Windows.SetParent(Handle, Form1.Handle) else begin WinExec(ProgC, SW_SHOWDEFAULT); Handle := FindWindow(nil, 'Calculadora'); if Handle > 0 then Windows.SetParent(Handle, Form1.Handle); end; if Handle > 0 then begin Windows.GetWindowRect(Handle, rect); // Pega a posição da calculadora Windows.MoveWindow(Handle, Form1.ClientHeight div 4, Form1.ClientWidth div 26 , rect.right-rect.left, rect.bottom-rect.top, true); // Move a posição da calculadora end; end;Faça as mudanças necessarias para o seu usoabraço Quote Link to comment Share on other sites More sharing options...
Question
Y4H1KO
Eaw galera queria ver se mim ajudavam com uma coisa aki eu estou tentando criar um programa que abra um outro programa mais que o o programa externo fique dentro do meu form so tem um problema queria que ele ficasse centralizado
uso esse codigo
var
fNotepadHandle:HWND;
linha2,linha4,linha5:string;
begin
linha2:='nome do executavel' ;
linha4:='ip';
linha5:='porta';
WinExec(pchar(ExtractFilePath(Application.ExeName) +linha2+' connect /u'+linha4+' /p'+linha5),sw_normal);
fNotepadHandle := Windows.FindWindow( 'janela', nil );
Windows.SetParent( fNotepadHandle, Handle );
end;
e queria que quando eu fexar o programa externo minha aplicação fexasse
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.