Deutsch
Forum

Lokale Gruppen listen

 
Hallo Profaner...

Ich suche nach einer Möglichkeit alle Gruppen eines Systems in einer ChoiceBox aufzulisten. Hat jemand eine Idee - einen Link???
 
07.06.2005  
 



Habs - glaube ich - schon. Schreibe morgen Code...
 
07.06.2005  
 



OK, hier der Quelltext:
KompilierenMarkierenSeparieren
DEF @NetQueryDisplayInformation(7) !"Netapi32","NetQueryDisplayInformation"
DEF @NetApiBufferFree(1) !"Netapi32","NetApiBufferFree"
DEF @NetLocalGroupEnum(7) !"Netapi32","NetLocalGroupEnum"
Declare GU_LISTE&,Indexzähler&,GU_BUFFER_P#,GU_BUFFER_A#,GU_BUFFER#
Declare NT_Fehler&,Entry_COUNT#
Declare E_READ&,E_TOTAL&,resumehandle&
DEF @WideCharToMultiByte(8) !"kernel32","WideCharToMultiByte"
DEF @CopyMemory(3) !"kernel32","RtlMoveMemory"
Windowstyle 31
Windowtitle "User und Gruppen listen"
Window 0,0-640,440
DIM Entry_COUNT#,4
DIM GU_BUFFER_P#,4
DIM GU_BUFFER_A#,1000
DIM GU_BUFFER#,1000
LET GU_LISTE&=@CREATECHOICEBOX(%HWND,"",10,100,200,200)
LET NT_Fehler&=$EA
LET Resumehandle&=0
LET Indexzähler&=0

While NT_Fehler&=$EA

    Clear Entry_COUNT#,GU_BUFFER_P#,GU_BUFFER_A#,GU_BUFFER#
    LET NT_Fehler&=@NetLocalGroupEnum(0,0,GU_BUFFER_P#,-1,@ADDR(E_READ&),@ADDR(E_TOTAL&),@ADDR(Resumehandle&))

    IF @or(NT_Fehler&=$EA,NT_Fehler&=0)

        While Indexzähler&<E_READ&

            @CopyMemory(GU_BUFFER#,@Long(GU_BUFFER_P#,0)+Indexzähler&*4,4)
            @WideCharToMultiByte(0,0,@Long(GU_BUFFER#,0),-1,GU_BUFFER_A#,1000,0,0)
            @AddChoice(GU_LISTE&,@String$(GU_BUFFER_A#,0))
            LET INDEXZÄHLER&=INDEXZÄHLER&+1

        wend

        @NetApiBufferFree(@Long(GU_BUFFER_P#,0))

    endif

wend

LET NT_Fehler&=$EA
LET Indexzähler&=0

While NT_Fehler&=$EA

    Clear Entry_COUNT#,GU_BUFFER_P#,GU_BUFFER_A#,GU_BUFFER#
    LET NT_Fehler&=@NetQueryDisplayInformation(0,3,Indexzähler&,1,-1,Entry_COUNT#,GU_BUFFER_P#)

    IF @or(NT_Fehler&=$EA,NT_Fehler&=0)

        @CopyMemory(GU_BUFFER#,@Long(GU_BUFFER_P#,0),20)
        LET Indexzähler&=@Long(GU_BUFFER#,16)
        @WideCharToMultiByte(0,0,@Long(GU_BUFFER#,0),-1,GU_BUFFER_A#,1000,0,0)
        @AddChoice(GU_LISTE&,@String$(GU_BUFFER_A#,0))
        @NetApiBufferFree(@Long(GU_BUFFER_P#,0))

    endif

wend

LET NT_Fehler&=$EA
LET Indexzähler&=0

While NT_Fehler&=$EA

    Clear Entry_COUNT#,GU_BUFFER_P#,GU_BUFFER_A#,GU_BUFFER#
    LET NT_Fehler&=@NetQueryDisplayInformation(0,1,Indexzähler&,1,-1,Entry_COUNT#,GU_BUFFER_P#)

    IF @or(NT_Fehler&=$EA,NT_Fehler&=0)

        @CopyMemory(GU_BUFFER#,@Long(GU_BUFFER_P#,0),24)
        LET Indexzähler&=@Long(GU_BUFFER#,20)
        @WideCharToMultiByte(0,0,@Long(GU_BUFFER#,0),-1,GU_BUFFER_A#,1000,0,0)
        @AddChoice(GU_LISTE&,@String$(GU_BUFFER_A#,0))
        @NetApiBufferFree(@Long(GU_BUFFER_P#,0))

    endif

wend

Dispose Entry_COUNT#
Dispose GU_BUFFER#
Dispose GU_BUFFER_A#
Dispose GU_BUFFER#

While 0=0

    Waitinput

Wend


Ich brauche dringend ein paar Tests aud NT/2000/XP. Wer hilft mir?
 
08.06.2005  
 



$ea?

Kleiner Tip: 1 ist schneller als 0=0.

Salve.
 
08.06.2005  
 



Hallo IF...

Hast Recht - ist ein Relikt aus alten Basiczeiten. Läufts?
 
08.06.2005  
 



Ja es funzt.
 
08.06.2005  
 



Hallo IF...

Besten Dank! Hab gerade herausgefunden, wie man die Größe jedes beliebigen Speicherbereichs herausfinden kann, ohne XProfan zu besitzen => fehlte mir noch für PrivAktivate...
 
08.06.2005  
 




CB
Läuft auch tadellos unter WinNT!

LG,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
08.06.2005  
 



Danke Christian!
 
08.06.2005  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.732 Betrachtungen

Unbenanntvor 0 min.
W.L.06.06.2017

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

unbekannt (6x)
iF (2x)
CB (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie