|
|
|
GUID steht für Global
Unique Identifier (globale eindeutige
Identifikation) und wird für das von Microsoft
entwickelte COM-Objekt
(Component
Object Model) benötigt. Jedes neue COM-Objekt, das offiziell
publiziert wird, bekommt
eine solche GUID, die weltweit einzigartig ist, also
nur einmal existiert,
und von sonst keinem anderem Objekt benutzt wird. Dadurch ist es möglich jedes Objekt anhand seiner GUID zu identifizieren
|
Auch DirectX basiert auf
diesem COM-Modell, nur sind
diese GUID's meistens in DirectX
für Visual Basic nicht sichtbar. Hin und wieder
tauchen sie aber doch auf, dann aber eher als Zeichenketten
(Strings) wie als numerische Werte.
|
Mit
dem Programm VBGuidGen.exe der DirectX-SDK
(\Samples\Multimedia\VBSamples\DXMisc\Bin) kann eine neue GUID
generiert werden. Das Programm erstellt eine neue
eindeutige GUID, die mit dem Copy-Button kopiert
wird. Diese GUID muss nur noch in das Visual Basic
Programm eingefügt werden. Nicht vergessen, die
GUID muss zwischen { } sein.
|
GUIDs
können auch während der Laufzeit mit der DirectX7.CreateNewGuid-Methode
generiert
werden.
|
Eine
definierte GUID könnte z.B. wie folgt in einem DirectPlay-Programm verwendet werden: |
|
|
Const
guidApp = "{AC330441-9B71-11D2-9AAB-0020781461AC}"
Call
SessionData.SetGuidApplication(guidApp) |
|
|
Einige
DirectX Methoden liefern einen Datentyp, der eine
GUID beinhaltet. Auch diese GUID's haben das gleiche Format
wie die im obigen Beispiel.
|
In DirectX sind einige GUIDs für verschiedene
Eigenschaften vordefiniert, da einige der DirectX
Methoden eine solche vordefinierte GUID erwarten.
Man kann nun eine solche GUID, wie im Beispiel gezeigt,
als String verwenden. Einfacher jedoch ist die Verwendung
einer vordefinierten GUID. Bei der DirectInput.CreateDevice-Methode
z.B. erlaubt sie uns einen Device für
ein Eingabegerät zu erstellen.
|
Hier ist die Verwendung der vordefinierten GUID "GUID_SysKeyboard"
einfacher, als die Angabe der aktuellen GUID im Format
String.
|
|
|