Namespaces für WIA-Treiber

Alle Dienste werden in Sitzung Null ausgeführt. Anwendungen können jedoch in einer anderen Sitzung ausgeführt werden. Jede Sitzung verfügt über einen eigenen Namespace. Daher ist ein benanntes Objekt, das in einer Sitzung erstellt wurde, in der Regel nicht für eine Komponente in einer anderen Sitzung sichtbar.

Die Lösung für dieses Problem besteht darin, sicherzustellen, dass beide Komponenten denselben Namespace verwenden. Die einfachste Möglichkeit hierfür ist die Verwendung des globalen Namespace. Wenn beispielsweise eine gebündelte Komponente auf ein Gerät außerhalb von WIA zugreifen würde, kann es ein Mutex-Objekt namens MyDeviceLock verwenden, um den Zugriff mit seinem WIA-Treiber zu synchronisieren. Um den Mutex-Namen im globalen Namespace zu platzieren, sollte er als "Global\MyDeviceLock" bezeichnet werden. Der Mutex " Global\MyDeviceLock " ist sowohl für den Treiber als auch für die Anwendung sichtbar, unabhängig davon, in welchen Sitzungen sie ausgeführt werden, da beide angeben, dass der Name zum globalen Namespace gehört.

Weitere Informationen finden Sie in der Microsoft Windows SDK-Dokumentation unter "Kernel-Objekt-Namensräume".