uses ShellApi; procedure ExecuteAndSendText(Appli: string; Text: string); var Wnd: HWND; begin ShellExecute(Application.Handle, 'open', PChar(Appli), nil, nil, SW_SHOWNORMAL); Sleep(20); Wnd := FindWindow('notepad', nil); if Wnd <> 0 then begin Wnd := FindWindowEx(Wnd, 0, 'Edit', nil); SendMessage(Wnd, WM_SETTEXT, 0, Integer(PChar(Text))); SendMessage(Wnd, EM_SETSEL, Length(Text) - 1, Length(Text) - 1); end; end;
ExecuteAndSendText('Notepad', Memo1.Text);
ExecuteAndSendText('C:\WINDOWS\NOTEPAD.EXE', Memo1.Text);
ExecuteAndSendText('C:\Program Files\Notepad++', Memo1.Text);
Sleep(100)
memo1.lines.savetofile, ensuite j'ouvre notepad++ avec ShellExecute et je crée un autre bouton qui permet de réinitialiser le fichier ouvert grâce au memo2.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionmemo1.Lines.SaveToFile('mem.tmp'); ShellExecute(Handle, 'open','Notepad','mem.tmp',nil, SW_SHOWNORMAL);
procedure TForm.FormClose(Sender: TObject; var Action: TCloseAction); begin deletefile('mem.tmp'); end;
memo1.Lines.SaveToFile('mem'); ShellExecute(Handle, 'open','Notepad','mem',nil, SW_SHOWNORMAL); sleep(50); deletefile('mem');
procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute(Handle, 'Open', PChar('Notepad++.exe'), PChar('toto.txt'), nil, SW_SHOWDEFAULT); end;