Ich denke, die beiden Funktionen geben dasselbe Kernel-Handle zurück. Und ich schreibe ein Testprogramm, um meine Ansicht zu beweisen:
In meinem Programm erstelle ich ein Kernel-Handle mit dem Namen '_MYTEST'.
hHandle1 = CreateMutex(NULL, false, _T("_MYTEST"));
dann starte ich einen Thread und öffne das Handle oben in diesem Thread mit folgendem Code:
hHandle2 = OpenMutex(MUTEX_ALL_ACCESS, false, _T("_MYTEST"));
Wenn ich das Programm ausführe, stelle ich fest, dass die beiden Rückgabewerte nicht gleich sind! Der Wert von hHandle2 ist 4 größer als der Wert von hHandle1. Gibt es irgendwelche Probleme in meinem Code? Wenn nicht, warum sind die beiden Werte nicht gleich?