Español
Stammtisch & Café

ConvertStringSidToSid.

 


Descripción:

ConvertStringSidToSid wandelt una String-SID en un SID Struktur en. Diese Función hay sólo bajo Windows2000/XP. Der erhaltene Speicherbereich muß con LocalFree otra vez freigegeben voluntad.




Deklaration:

DEF @ConvertStringSidToSid(2) !ADVAPI32,ConvertStringSidToSidA




Parámetro:

1.Parámetro: Adresse uno Cuerdas oder Bereichsvariable con un String, el el String-SID enthält.
2.Parámetro: Ausreichend dimensionierte Bereichsvariable, el el SID Struktur aufnimmt.



Rückgabewert:

0 en Erfolg, ansonsten una Fehlercode.


Beispiele:

KompilierenMarcaSeparación
Def @RegOpenKeyEx(5) !"ADVAPI32","RegOpenKeyExA"
Def @RegEnumKey(4) !"ADVAPI32","RegEnumKeyA"
Def @RegCloseKey(1) !"ADVAPI32","RegCloseKey"
DEF @ConvertStringSidToSid(2) !"ADVAPI32","ConvertStringSidToSidA"
DEF @LookupAccountSid(7) !"ADVAPI32","LookupAccountSidA"
Def @RegEnumValue(8) !"ADVAPI32","RegEnumValueA"
DEF @LocalFree(1) !"KERNEL32","LocalFree"
Windowstyle 31
Windowtitle "String-SID in Accountnamen umwandeln"
Window 0,0-640,440
declare ergebnis#,Error&,Handle&,Key$,Zähler%,SID#,SID$,Fehler&,SYSTEM$
Declare Ergebnis#,ACCOUNT_NAME#,SIZE_ACCOUNT#,Domain#,SIZE_DOMAIN#,SID_NAME_USE#
Declare VALUESIZE#,Typ#,Wert#,Buffersize#,Zähler&
dim Ergebnis#,261--Länge des zu erwartenden Namens
DIM SID#,4
DIM ACCOUNT_NAME#,256
DIM SIZE_ACCOUNT#,4
DIM Domain#,256
DIM SIZE_DOMAIN#,4
DIM SID_NAME_USE#,4
DIM TYP#,4
DIM Wert#,261
DIM Buffersize#,4
DIM VALUESIZE#,4
Key$=""
 $80000003=HKEY_USERS   $F003F = KEY_ALL_ACCESS
Error&=@RegOpenKeyEx($80000003,addr(Key$),0,$F003F,addr(Handle&))
PRINT "OpenKey (0=OK) : ",Error&
LET Zähler%=0

whilenot Error&

    Error&=@RegEnumKey(Handle&,Zähler%,Ergebnis#,261)

    IF Error& =0

        PRINT @string$(Ergebnis#,0)
        LET SID$=@string$(Ergebnis#,0)
        CLEAR SID#
        LET FEHLER&=@ConvertStringSidToSid(@ADDR(SID$),SID#)

        IF Fehler&<>0

            Clear SID_NAME_USE#
            Clear ACCOUNT_NAME#
            Clear Domain#,SYSTEM$
            Long SIZE_ACCOUNT#,0=255
            LONG SIZE_DOMAIN#,0=255
            LET FEHLER&=@LookupAccountSid(@ADDR(System$),@LONG(SID#,0),ACCOUNT_NAME#,SIZE_ACCOUNT#,Domain#,SIZE_DOMAIN#,SID_NAME_USE#)
            @LocalFree(@LONG(SID#,0))

            IF @AND(FEHLER&=1,@STRING$(ACCOUNT_NAME#,0)<>"")

                ADDSTRING @STRING$(ACCOUNT_NAME#,0)+": "+SID$

            ENDIF

        ENDIF

    endif

    inc Zähler%
    endwhile @RegCloseKey(Handle&)
    LET Key$="SoftwareMicrosoftWindowsCurrentVersionGroup PolicyGroupMembership"
     $80000001=HKEY_CURRENT_USER   $F003F = KEY_ALL_ACCESS
    Error&=@RegOpenKeyEx($80000001,addr(Key$),0,$F003F,@addr(Handle&))
    PRINT ""
    Let Zähler&=0

    whilenot Error&

        LONG BUFFERSIZE#,0=261
        LONG VALUESIZE#,0=261
        Clear Ergebnis#,TYP#,Wert#
        Error&=@RegEnumValue(Handle&,Zähler&,Ergebnis#,VALUESIZE#,0,TYP#,Wert#,Buffersize#)

        IF Error&=0

            IF @or(@LONG(TYP#,0)=$2,@LONG(TYP#,0)=$1)

                PRINT @string$(Ergebnis#,0)+"="+@string$(WERT#,0)
                LET SID$=@string$(WERT#,0)
                CLEAR SID#
                LET FEHLER&=@ConvertStringSidToSid(@ADDR(SID$),SID#)

                IF Fehler&<>0

                    Clear SID_NAME_USE#
                    Clear ACCOUNT_NAME#
                    Clear Domain#,SYSTEM$
                    Long SIZE_ACCOUNT#,0=255
                    LONG SIZE_DOMAIN#,0=255
                    LET FEHLER&=@LookupAccountSid(@ADDR(System$),@LONG(SID#,0),ACCOUNT_NAME#,SIZE_ACCOUNT#,Domain#,SIZE_DOMAIN#,SID_NAME_USE#)

                    IF @AND(FEHLER&=1,@STRING$(ACCOUNT_NAME#,0)<>"")

                        ADDSTRING @STRING$(ACCOUNT_NAME#,0)+": "+SID$

                    ENDIF

                ENDIF

            endif

        endif

        LET Zähler&=Zähler&+1
        endwhile @RegCloseKey(Handle&)
        dispose Ergebnis#
        Dispose SID#
        Dispose ACCOUNT_NAME#
        Dispose SIZE_ACCOUNT#
        Dispose Domain#
        Dispose SIZE_DOMAIN#
        Dispose SID_NAME_USE#
        Dispose TYP#
        Dispose Wert#
        Dispose Buffersize#
        Dispose VALUESIZE#
        @Listbox$(
class=s3>"SID como Accountname y como SID-String",1)

[keywords:2a2fd3ff2b]
SID Mostrar String umwandeln Registry
[/keywords:2a2fd3ff2b]
 
23.05.2005  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.232 Views

Untitledvor 0 min.
rquindt06.12.2015

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie