ShellExecute(nil,nil,PChar('c:\myProgram'),1,nil,SW_MAXIMIZE);
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var MonitorIndex: Integer;
begin
if ParamCount > 1 then
begin
MonitorIndex = StrToIntDef(Params(1), 0);
self.left := Screen.monitors[MonitorIndex].left;
self.top := Screen.monitors[MonitorIndex].top;
self.Height := Screen.monitors[MonitorIndex].Height;
self.Width := Screen.monitors[MonitorIndex].Width;
end;
end;
Mit dem vierten Parameter von Shellexecute kannst du zusätzliche Parameter an dein Programm mitgeben.
Im obigen Beispiel 1 für Monitor 2.
Im FormCreate von der MainForm guckst du, ob du einen Paramter zum Aufruf hattest und zeigst dann
deine Form auf dem Monitor auf dem die Anzeige gewünscht ist.
Edit:
Zitat von
taaktaak:
Die Hinweise mit FormCreate() kann ich (in diesem Zusammenhang) nicht so recht nachvollziehen.
Nur weil er selbst das so gerne aufrufen wollte, hab ich für diesen Weg eine Lösung geschrieben.