ConvertStringSecurityDescriptorToSecurityDescriptor

Aus API-Wiki
Wechseln zu: Navigation, Suche

Die Funktion ConvertStringSecurityDescriptorToSecurityDescriptor konvertiert einen SECURITY_DESCRIPTOR in Textform in die binäre Form. Um die binäre Form wieder in einen SECURITY_DESCRIPTOR der Textform zurückzuwandeln kann die Funktion ConvertSecurityDescriptorToStringSecurityDescriptor verwendet werden.

<<syntaxhighlight lang="vb">> Private Declare Function ConvertStringSecurityDescriptorToSecurityDescriptorA Lib "ADVAPI32.dll" ( _

   ByVal StringSecurityDescriptor As String, ByVal StringSDRevision As Long, _
   ByRef lpSecurityDescriptor As Long, ByRef lpSecurityDescriptorLen As Long) As Long

Private Declare Function ConvertStringSecurityDescriptorToSecurityDescriptorW Lib "ADVAPI32.dll" ( _

   ByVal StringSecurityDescriptor As Long, ByVal StringSDRevision As Long, _
   ByRef lpSecurityDescriptor As Long, ByRef lpSecurityDescriptorLen As Long) As Long

</<syntaxhighlight lang="vb">>

Parameter

StringSecurityDescriptor

[in] bezeichnet einen Zeiger auf die Textform eines Security Descriptor

StringSDRevision

[in] Der einzig erlaubte Wert ist SDDL_REVISION_1

lpSecurityDescriptor

[out] bezeichnet eine Variable, welche den Zeiger auf den SECURITY_DESCRIPTOR in binärer Form aufnehmen kann. Um den zurückgegebenen Speicher wieder freizugeben muss die Funktion LocalFree benutzt werden.

lpSecurityDescriptorLen

[out] bezeichnet eine Variable, welche die Größe des SECURITY_DESCRIPTOR in seiner binären Form beschreibt.

Rückgabe

Wenn die Funktion erfolgreich war, so ist der Rückgabewert ungleich 0. Andernfalls ist ein Fehler aufgetreten, die Fehlernummer kann mit Err.LastDLLError ermittelt werden. <<syntaxhighlight lang="vb">>Const ERROR_UNKNOWN_REVISION As Long = 1305& Const ERROR_NONE_MAPPED As Long = 1332& Const ERROR_INVALID_PARAMETER As Long = 87& </<syntaxhighlight lang="vb">>

Hinweise

Die Funktion steht auch als UNICODE Version auf NT basierenden Systemen zur Verfügung und sollte auf diesen auch benutzt werden.

Beispiel

<<syntaxhighlight lang="vb">></<syntaxhighlight lang="vb">>

Betriebssystem

Die API-Funktion ist unter folgenden Betriebssystemen funktionsfähig:

  • Windows 2000 oder höher

Verwandte Funktionen

Weblinks

MSDN Library: ConvertStringSecurityDescriptorToSecurityDescriptor