AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Createmutex / Windows 7 / 64bit Problem
Thema durchsuchen
Ansicht
Themen-Optionen

Createmutex / Windows 7 / 64bit Problem

Ein Thema von Mavarik · begonnen am 10. Nov 2009 · letzter Beitrag vom 11. Nov 2009
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#1

Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 09:14
Hallo Zusammen...

Ich habe einen Servicedienst mit Adminrechten geladen...

Dieser Dienst holt sich ein Mutex mit:

Delphi-Quellcode:
  ServiceGeladen := CreateEvent(nil,true,true,ServiceDa);
  SetEvent(ServiceGeladen);
Ein anderes Programm soll abfragen ob der Service geladen ist mit:

Delphi-Quellcode:
  Geladen := CreateMutex(nil, true,ServiceDa);

  if Geladen = 0
    then begin
Bisher (unter Vista 32Bit) funktionierte das prima so...
Hat jemand ne Idee woran es liegt, dass es jetzt nicht mehr läuft?
- 64 Bit?
- Windows 7
- sonstiges...

Grüsse Mavarik

PS.: Lasterror = 0 Gelanden = 256
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#2

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 10:56
Das Erste ist ein eigentlich ein Event, d.h. das sind zwei völlig verschiedene Objekte.

Also, du kannst Events verwenden, statt Mutexes, musst aber dieselbe Funktion (CreateMutex <-> CreateEvent) nutzen. Schau dir die Doku in der MSDN dazu genau an.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 11:07
Oh Cool ist mir nicht aufgefallen...

Komisch, dass es unter Vista so funktioniert..

Aber auch wenn ich bei beiden den CreateEvent verwende erhalte ich nicht das gewünschte Ergebiss

Sollte nicht GetLastError = ERROR_ALREADY_EXISTS sein?

Grüsse
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#4

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 11:28
Muss da vielleicht auch das berühmte "GLOBAL\" vor?
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 11:45
Zitat von wicht:
Muss da vielleicht auch das berühmte "GLOBAL\" vor?
Was - wo - vor?

Warum zeigt sich erst unter Windows 7 das Problem oder liegt es an 64 Bit...?

Wie gesagt unter Vista 32 läuft es...

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#6

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 11:48
War mehr ins blaue geraden .. Naja der Mutex bekommt ja einen Namen, und der Name sollte dann nicht "asdf" sein, sondern "GLOBAL\asdf". Kannst ja mal versuchen, keine Ahnung ob es hilft.
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 12:08
Zitat von wicht:
War mehr ins blaue geraden .. Naja der Mutex bekommt ja einen Namen, und der Name sollte dann nicht "asdf" sein, sondern "GLOBAL\asdf". Kannst ja mal versuchen, keine Ahnung ob es hilft.
Wenn ich GLOBAL\ davor setze läßt sich der Mutex nicht erzeugen...

Aber auch alle anderen Events klappen unter W7_64 nicht mehr...

Wo ist der Trick..?

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#8

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 12:45
Ich habe folgendes gefunde zu "Global"

Link <- hier steht "Global\\"

Funktioniert aber auch nicht...
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#9

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 14:07
für Global\xxx benötigt man das CreateGlobalPrivilege, was z.B. Admin haben.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#10

Re: Createmutex / Windows 7 / 64bit Problem

  Alt 10. Nov 2009, 14:16
Zitat von Dezipaitor:
für Global\xxx benötigt man das CreateGlobalPrivilege, was z.B. Admin haben.
CreateGlobalPrivilege aus "Deiner" API?

Ich habe es mit "InitializeSecurityDescriptor" versucht... wollte leider auch nicht...


Frank
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz