Einzelnen Beitrag anzeigen

Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#7

Re: Kein doppelter Programstart aber Fenster in den Vordergr

  Alt 2. Jan 2004, 12:40
Mit SetWindowPos ändere ich doch auch die Fensterkoordinaten und -größe.
Hier jetzt der aktuelle Code der Unit:
Delphi-Quellcode:
unit CopyVertragRunOnce;

interface

implementation

uses windows, Dialogs, sysutils, Forms;

var
  mHandle: THandle; // Mutexhandle
  hWindow: HWND;

Initialization
  mHandle := CreateMutex(nil, True, PChar(Application.Title));
  // 'xxxxx' Der Anwendungsname ist hier einzutragen
  if GetLastError = ERROR_ALREADY_EXISTS then begin
    // Anwendung läuft bereits
    hWindow := FindWindow('TApplication', 'CopyVertrag');
// BringWindowToTop(hWindow);
    SetForegroundWindow(hWindow);
// showMessage('Anwendung läuft bereits!!!!!');
    // Wenn du deine Meldung willst, mach die Klammern weg
    Halt;
  end;

finalization // ... und Schluß
  if mHandle <> 0 then
    ReleaseMutex(mHandle);
end. {Dieter Hirt}
  Mit Zitat antworten Zitat