Einzelnen Beitrag anzeigen

DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#7

AW: Single Instanz mit Extras, hier findet man ein Beispiel

  Alt 23. Nov 2018, 11:52
Nicht ganz.

Delphi-Quellcode:
if Window=0 then begin
    Application.Initialize;
    Application.MainFormOnTaskbar := True;
    Application.CreateForm(TMainForm, MainForm);
    Application.Run;
  end else begin
 //////////////////////////////////////////////////////////////////////////
    FillChar(CopyDataStruct, Sizeof(CopyDataStruct), 0);
    for i := 1 to ParamCount do begin
      Arg := ParamStr(i);
      CopyDataStruct.cbData := (Length(Arg)+1)*SizeOf(Char);
      CopyDataStruct.lpData := PChar(Arg);
      SendMessage(Window, WM_COPYDATA, 0, NativeInt(@CopyDataStruct));
    end;
    SetForegroundWindow(Window);
  end;
Da wo die Kommentarzeile ist. Dort prüfe ich alle übergebenen Parameter auf Gültigkeit.
Wenn mein Programm den Parameter close unterstützt dann prüfe ich hier, ob close in der Übergabe drin ist. Wenn nicht, wird dieser fehlerhafte Parameter garnicht erst ans Hauptprogramm weitergegeben.
  Mit Zitat antworten Zitat