Einzelnen Beitrag anzeigen

Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#11

Re: Mehrfaches einbinden von DLL verhindern.

  Alt 18. Aug 2008, 15:23
Zitat von OldGrumpy:
Dazu böte es sich an, einfach das USB-Device (ich vermute mal es wird eh per CreateFile geöffnet?) einfach exklusiv zu öffnen und fertig.
Leider nicht. Die Geräte werden über eine weitere DLL angesprochen ...


Zitat von brechi:
warum denn nicht:

Delphi-Quellcode:
  mHandle := CreateMutex(nil, True, 'bineinetolleDLL');

  if GetLastError = ERROR_ALREADY_EXISTS then
  begin
    CreateMessageDialog('Application already running!', mtWarning, [mbOk]).ShowModal;
    Halt;
  end;
Der Referenzzähler einer DLL ist lokal für jedes Programm.

Gibt so viele Möglicheiten, warum denn nen Mutex nehmen?
Das funktioniert in sofern, dass das doppelte Öffnen Erkannt wird und die Medlung angezeigt wird. Allerdings wird die Anwendung nicht geschlossen, sondern läuft parallel zu der ersten weiter. Wie kann ich es in der DLL bewerkstelligen, dass die Anwendung beendet wird?
  Mit Zitat antworten Zitat