Italia
Foro

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

    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 Dimensione jedes beliebigen Speicherbereichs herausfinden kann, ohne XProfan zu besitzen => fehlte mir noch per 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  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

1.718 Views

Untitledvor 0 min.
W.L.06.06.2017

Themeninformationen

Dieses Thema hat 3 subscriber:

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


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


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