Lister les ressources réseaux (EnumNetworkResources)

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Lister les ressources réseaux (EnumNetworkResources)

Message par Cls »

Je viens de corriger un code trouvé sur le forum Anglais. Il permet de lister toutes les ressources réseaux disponibles. J'ai testé au boulot : résultat il faut un paquet de temps pour que toutes les ressources soient listées... Patience donc ;)

Code : Tout sélectionner

; '==============================================================================
; '  Network Resource List.
; '  Enumerate all of the networks and network resources available to the
; '  current machine.
; ' 
; ' Code initial :  ABBKlaus, fweil
; ' Corrigé par : Cls
; ' Références : http://www.purebasic.fr/english/viewtopic.php?f=12&t=10300
; '==============================================================================
#Window_Main = 0
#Gadget_ListIcon = 0

Global s.s

Procedure EnumAll(*nr.NETRESOURCE)
  ;Dim n.NETRESOURCE(255)
  
  Entries = -1
  nSize = SizeOf(NETRESOURCE) * 255
  n = AllocateMemory(nSize)
  s = s + "  "
  ec = WNetOpenEnum_(#RESOURCE_GLOBALNET, #RESOURCETYPE_ANY, #Null, *nr, @hEnum)
  If hEnum
      ec = WNetEnumResource_(hEnum, @Entries, n, @nSize)
      Debug "Nb entrée : " + Str(Entries)
      For x = 1 To Entries
        
        *nNr.NETRESOURCE = n + (x-1)*SizeOf(NETRESOURCE)

        Response.s = ""
        Select *nNr\dwScope
          Case #RESOURCE_CONNECTED
            Response = Response + "#RESOURCE_CONNECTED" + Chr(10)
          Case #RESOURCE_GLOBALNET
            Response = Response + "#RESOURCE_GLOBALNET" + Chr(10)
          Case #RESOURCE_REMEMBERED
            Response = Response + "#RESOURCE_REMEMBERED" + Chr(10)
          Default
            Response = Response + "dwScope unknown" + Chr(10)
        EndSelect
        Select *nNr\dwType
          Case #RESOURCETYPE_ANY
            Response = Response + "#RESOURCETYPE_ANY" + Chr(10)
          Case #RESOURCETYPE_DISK
            Response = Response + "#RESOURCETYPE_DISK" + Chr(10)
          Case #RESOURCETYPE_PRINT
            Response = Response + "#RESOURCETYPE_PRINT" + Chr(10)
          Default
            Response = Response + "dwType unknown" + Chr(10)
        EndSelect
        Select *nNr\dwDisplayType
          Case #RESOURCEDISPLAYTYPE_DOMAIN
            Response = Response + "#RESOURCEDISPLAYTYPE_DOMAIN" + Chr(10)
          Case #RESOURCEDISPLAYTYPE_GENERIC
            Response = Response + "#RESOURCEDISPLAYTYPE_GENERIC" + Chr(10)
          Case #RESOURCEDISPLAYTYPE_SERVER
            Response = Response + "#RESOURCEDISPLAYTYPE_SERVER" + Chr(10)
          Case #RESOURCEDISPLAYTYPE_SHARE
            Response = Response + "#RESOURCEDISPLAYTYPE_SHARE" + Chr(10)
          Default
            Response = Response + "dwDisplayType unknown" + Chr(10)
        EndSelect
        Select *nNr\dwUsage
          Case #RESOURCEUSAGE_CONNECTABLE
            Response = Response + "#RESOURCEUSAGE_CONNECTABLE" + Chr(10)
          Case #RESOURCEUSAGE_CONTAINER
            Response = Response + "#RESOURCEUSAGE_CONTAINER" + Chr(10)
          Default
            Response = Response + "dwUsage unknown" + Chr(10)
        EndSelect
        LocalName.s = ""
        If *nNr\lpLocalName
            LocalName = PeekS(*nNr\lpLocalName)
          Else
            LocalName = ""
        EndIf
        RemoteName.s = ""
        If *nNr\lpRemoteName
            RemoteName = PeekS(*nNr\lpRemoteName)
          Else
            RemoteName = ""
        EndIf
        Response = LocalName + Chr(10) + RemoteName + Chr(10) + Response
        Comment.s = ""
        If *nNr\lpComment
            Comment = PeekS(*nNr\lpComment)
            Response = Response + Comment + Chr(10)
        EndIf
        Provider.s = ""
        If *nNr\lpProvider
            Provider = PeekS(*nNr\lpProvider)
            Response = Response + Provider + Chr(10)
        EndIf
        
        AddGadgetItem(#Gadget_ListIcon, -1, Response)
        
        If (*nNr\dwUsage And #RESOURCEUSAGE_CONTAINER)
          EnumAll (*nNr)
          
        EndIf

      Next
      s = Left(s, Len(s) -2)
      WNetCloseEnum_(hEnum)
  EndIf
  
  Debug "FIN"
EndProcedure

;
; Main starts here
;
  Quit = #False
  WindowXSize = 800
  WindowYSize = 320
  If OpenWindow(#Window_Main, 0, 0, WindowXSize, WindowYSize, "MyWindow",#PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered)
      AddKeyboardShortcut(0, #PB_Shortcut_Escape, #PB_Shortcut_Escape)
      If CreateGadgetList(WindowID(#Window_Main))
          SetGadgetFont(#PB_Default, LoadFont(0, "Verdana", 7))
          ListIconGadget(#Gadget_ListIcon, 10, 10, WindowXSize - 20, WindowYSize - 20, "Local name", 40, #PB_ListIcon_GridLines | #PB_ListIcon_FullRowSelect)
          AddGadgetColumn(#Gadget_ListIcon, 1, "Remote name", 120)
          AddGadgetColumn(#Gadget_ListIcon, 2, "Scope", 120)
          AddGadgetColumn(#Gadget_ListIcon, 3, "Type", 120)
          AddGadgetColumn(#Gadget_ListIcon, 4, "Display type", 120)
          AddGadgetColumn(#Gadget_ListIcon, 5, "Usage", 120)
          AddGadgetColumn(#Gadget_ListIcon, 7, "Comment", 120)
          AddGadgetColumn(#Gadget_ListIcon, 8, "Provider", 120)
      EndIf
      
      CreateThread(@EnumAll(), #Null)
      
      Repeat
        Select WaitWindowEvent()
          Case #PB_Event_CloseWindow
            Quit = #True
          Case #PB_Event_Menu
            Select EventMenu()
              Case #PB_Shortcut_Escape
                Quit = #True
            EndSelect
          Case #PB_Event_Gadget
            Select EventGadget()
            EndSelect
          Case #WM_SIZE
            WindowXsize = WindowWidth(#Window_Main)
            WindowYSize = WindowHeight(#Window_Main)
            ResizeGadget(#Gadget_ListIcon, 10, 10, WindowXSize - 20, WindowYSize - 20)
          Default
        EndSelect
      Until Quit
  EndIf
End
gnozal
Messages : 832
Inscription : mar. 07/déc./2004 17:35
Localisation : France
Contact :

Re: Lister les ressources réseaux (EnumNetworkResources)

Message par gnozal »

Cls a écrit :Je viens de corriger un code trouvé sur le forum Anglais. Il permet de lister toutes les ressources réseaux disponibles.
çà serait sympa de poster la correction aussi sur le forum anglais, non ?
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Lister les ressources réseaux (EnumNetworkResources)

Message par Kwai chang caine »

Bonjour les copains :D

Oulala deux cadors sur le meme post...KCC il en profite pour poser une question ...

Mon roi FLYPE, il avait poser ce super code qui parle sensiblement de la meme chose....
Et je n'etait pas arrivé a le convertir en v4 a cette epoque.

Si ça peut servir a "quinquin".....et si ce "quinquin" il peut le reposer en V4...ce serait l'amerique

Et la pas besoin de le reposer sur le forum US...car il est cocorico le flypounet :D
Non GNOZAL, je rigole...., avec PB pas de frontieres on est tous des freres, et meme ceux qui veulent pas traduire leur doc en français :wink: :lol: :lol: :lol: :lol:

Code : Tout sélectionner

;- 
;- WNetEnumRessource : List LAN ressources 
;- For Purebasic 3.93 and Windows NT 
;- 
;- By Flype, May 2005 
;- 

#Shell32 = "\Shell32.dll" 

#EOL = Chr (10) 

#IcoNetwork = 14 ; Index of icon in the Shell32.dll 
#IcoDomain = 18 
#IcoServer = 164 
#IcoShare = 158 
#IcoGeneric = 158 
#IcoPrint = 230 

;- 
;- Shell32.dll Icons 
;- 

SystemPath.s = Space ( #MAX_PATH ) 
GetSystemDirectory_ (SystemPath, #MAX_PATH ) 
Ressource.s = SystemPath+ #Shell32 

nIcon = ExtractIconEx_ (Ressource,-1,0,0,0) 
Dim hIcon.l(nIcon) 
ExtractIconEx_ (Ressource,0,0,@hIcon(0),nIcon) 

;- 
;- Procedures Network / LAN 
;- 

Enumeration ; #TYPE_ 
  
   #TYPE_LIST ; EnumNetWork() for ListIconGadget() 
   #TYPE_TREE ; EnumNetWork() for TreeIconGadget() 
  
EndEnumeration 

Structure NETRESOURCE_BUFFER 
  item.NETRESOURCE[100] ; <-- Predefined maximum items 
EndStructure 

Procedure.l EnumNetworkEx(Gadget.l,Type.l,*item.NETRESOURCE) 
  
   If WNetOpenEnum_ ( #RESOURCE_GLOBALNET , #RESOURCETYPE_ANY , #Null ,*item,@hEnum) <> #NO_ERROR 
     ProcedureReturn #False 
   EndIf 
  
  hBuf.NETRESOURCE_BUFFER 
  
  iBuf.l = -1 
  lBuf.l = SizeOf (NETRESOURCE_BUFFER) 
  
   Repeat 
    
     ZeroMemory_ (hBuf,lBuf) 
    
     Select WNetEnumResource_ (hEnum,@iBuf,hBuf,@lBuf) 
      
       Case #ERROR_NO_MORE_ITEMS : Break 
        
       Case #NO_ERROR 
        
         For i = 0 To iBuf - 1 
          
           If hBuf\item[i]\lpLocalName : LocalName$ = PeekS (hBuf\item[i]\lpLocalName) : EndIf 
           If hBuf\item[i]\lpRemoteName : RemoteName$ = PeekS (hBuf\item[i]\lpRemoteName) : EndIf 
           If hBuf\item[i]\lpComment : comment$ = PeekS (hBuf\item[i]\lpComment) : EndIf 
           If hBuf\item[i]\lpProvider : Provider$ = PeekS (hBuf\item[i]\lpProvider) : EndIf 
          
          line$ = RemoteName$ + #EOL + LocalName$ + #EOL + Provider$ + #EOL + comment$ 
          
           Select hBuf\item[i]\dwScope 
             Case #RESOURCE_GLOBALNET : line$ + #EOL + "GLOBALNET" 
             Case #RESOURCE_CONNECTED : line$ + #EOL + "CONNECTED" 
             Case #RESOURCE_REMEMBERED : line$ + #EOL + "REMEMBERED" 
           EndSelect 
          
           Select hBuf\item[i]\dwDisplayType 
             Case 6 : line$ + #EOL + "NETWORK" : image = hIcon( #IcoNetwork ) 
             Case #RESOURCEDISPLAYTYPE_DOMAIN : line$ + #EOL + "DOMAIN" : image = hIcon( #IcoDomain ) 
             Case #RESOURCEDISPLAYTYPE_SERVER : line$ + #EOL + "SERVER" : image = hIcon( #IcoServer ) 
             Case #RESOURCEDISPLAYTYPE_GENERIC : line$ + #EOL + "GENERIC" : image = hIcon( #IcoGeneric ) 
             Case #RESOURCEDISPLAYTYPE_SHARE : line$ + #EOL + "SHARE" : image = hIcon( #IcoShare ) 
           EndSelect 
          
           Select hBuf\item[i]\dwType 
             Case #RESOURCETYPE_ANY : line$ + #EOL + "ANY" 
             Case #RESOURCETYPE_DISK : line$ + #EOL + "DISK" 
             Case #RESOURCETYPE_PRINT : line$ + #EOL + "PRINT" : image = hIcon( #IcoPrint ) 
           EndSelect 
          
           Select hBuf\item[i]\dwUsage 
             Case hBuf\item[i]\dwUsage | #RESOURCEUSAGE_CONNECTABLE : line$ + #EOL + "CONNECTABLE" 
             Case hBuf\item[i]\dwUsage | #RESOURCEUSAGE_CONTAINER : line$ + #EOL + "CONTAINER" 
           EndSelect 
          
           Select Type 
             Case #TYPE_LIST 
               AddGadgetItem (Gadget,-1,line$,image) 
               If hBuf\item[i]\dwUsage & #RESOURCEUSAGE_CONTAINER 
                EnumNetworkEx(Gadget,Type,hBuf\item[i]) 
               EndIf 
             Case #TYPE_TREE 
               AddGadgetItem (Gadget,-1,RemoteName$,image) 
               If hBuf\item[i]\dwUsage & #RESOURCEUSAGE_CONTAINER 
                OpenTreeGadgetNode(Gadget) 
                EnumNetworkEx(Gadget,Type,hBuf\item[i]) 
                CloseTreeGadgetNode(Gadget) 
               EndIf 
           EndSelect 
          
         Next 
        
     EndSelect 
    
  ForEver 
  
   If WNetCloseEnum_ (hEnum) = #NO_ERROR 
     ProcedureReturn #True 
   EndIf 
  
EndProcedure 
Procedure.l EnumNetwork(Gadget.l,Type.l,RemoteName.s) 
  
   ClearGadgetItemList (Gadget) 
  
   If RemoteName <> "" 
    
    item.NETRESOURCE 
    item\lpRemoteName = @RemoteName 
    
   EndIf 
  
   ProcedureReturn EnumNetworkEx(Gadget,Type,item) 
  
EndProcedure 

;- 
;- Example 
;- 

w = 600 
h = 300 

If OpenWindow (0,0,0,w,h, #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_ScreenCentered , "WNetEnumResource" ) 
  
   If CreateGadgetList ( WindowID ()) 
    
     ListIconGadget (0,0,0,0,0, "RemoteName" ,200, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection ) 
     TreeGadget (1,0,0,0,0, #PB_Tree_AlwaysShowSelection ) 
     SplitterGadget (2,5,5,w-10,h-10,1,0, #PB_Splitter_Vertical ) 
    
     SetGadgetState (2,300) 
     ChangeListIconGadgetDisplay (0,3) 
     AddGadgetColumn (0,1, "LocalName" ,80) 
     AddGadgetColumn (0,2, "Provider" ,180) 
     AddGadgetColumn (0,3, "Comment" ,140) 
     AddGadgetColumn (0,4, "Scope" ,80) 
     AddGadgetColumn (0,6, "DisplayType" ,75) 
     AddGadgetColumn (0,5, "Type" ,75) 
     AddGadgetColumn (0,7, "Usage" ,100) 
    
    EnumNetwork(0, #TYPE_LIST , "" ) ; "WORKGROUP" or "\\MYCOMPUTER" 
    EnumNetwork(1, #TYPE_TREE , "" ) ; or "\\MYCOMPUTER\SharedDocs\" 
    
     Repeat 
       Select WaitWindowEvent () 
         Case #PB_Event_CloseWindow : Break 
         Case #PB_Event_SizeWindow : ResizeGadget (2,-1,-1, WindowWidth ()-10, WindowHeight ()-10) 
         Case #PB_Event_Gadget 
       EndSelect 
    ForEver 
    
   EndIf 
  
EndIf 
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
zaphod
Messages : 135
Inscription : dim. 07/déc./2008 9:32

Re: Lister les ressources réseaux (EnumNetworkResources)

Message par zaphod »

en pb 4.4b5 :

Code : Tout sélectionner

;- 
;- WNetEnumRessource : List LAN ressources 
;- For Purebasic 4.4b5 and Windows NT 
;- 
;- By Flype, May 2005 
;- 

#Shell32 = "\Shell32.dll" 

#EOL = Chr (10) 

#IcoNetwork = 14 ; Index of icon in the Shell32.dll 
#IcoDomain = 18 
#IcoServer = 164 
#IcoShare = 158 
#IcoGeneric = 158 
#IcoPrint = 230 

;- 
;- Shell32.dll Icons 
;- 

SystemPath.s = Space ( #MAX_PATH ) 
GetSystemDirectory_ (SystemPath, #MAX_PATH ) 
Ressource.s = SystemPath+ #Shell32 

nIcon = ExtractIconEx_ (Ressource,-1,0,0,0) 
Global Dim hIcon.l(nIcon) 
ExtractIconEx_ (Ressource,0,0,@hIcon(0),nIcon) 

;- 
;- Procedures Network / LAN 
;- 

Enumeration ; #TYPE_ 
  
   #TYPE_LIST ; EnumNetWork() for ListIconGadget() 
   #TYPE_TREE ; EnumNetWork() for TreeIconGadget() 
  
EndEnumeration 

Structure NETRESOURCE_BUFFER 
  item.NETRESOURCE[100] ; <-- Predefined maximum items 
EndStructure 

Procedure.l EnumNetworkEx(Gadget.l,Type.l,*item.NETRESOURCE) 
  
   If WNetOpenEnum_ ( #RESOURCE_GLOBALNET , #RESOURCETYPE_ANY , #Null ,*item,@hEnum) <> #NO_ERROR 
     ProcedureReturn #False 
   EndIf 
  
  hBuf.NETRESOURCE_BUFFER 
  
  iBuf.l = -1 
  lBuf.l = SizeOf (NETRESOURCE_BUFFER) 
  
   Repeat 
    
     ZeroMemory_ (hBuf,lBuf) 
    
     Select WNetEnumResource_ (hEnum,@iBuf,hBuf,@lBuf) 
      
       Case #ERROR_NO_MORE_ITEMS : Break 
        
       Case #NO_ERROR 
        
         For i = 0 To iBuf - 1 
          
           If hBuf\item[i]\lpLocalName : LocalName$ = PeekS (hBuf\item[i]\lpLocalName) : EndIf 
           If hBuf\item[i]\lpRemoteName : RemoteName$ = PeekS (hBuf\item[i]\lpRemoteName) : EndIf 
           If hBuf\item[i]\lpComment : comment$ = PeekS (hBuf\item[i]\lpComment) : EndIf 
           If hBuf\item[i]\lpProvider : Provider$ = PeekS (hBuf\item[i]\lpProvider) : EndIf 
          
          line$ = RemoteName$ + #EOL + LocalName$ + #EOL + Provider$ + #EOL + comment$ 
          
           Select hBuf\item[i]\dwScope 
             Case #RESOURCE_GLOBALNET : line$ + #EOL + "GLOBALNET" 
             Case #RESOURCE_CONNECTED : line$ + #EOL + "CONNECTED" 
             Case #RESOURCE_REMEMBERED : line$ + #EOL + "REMEMBERED" 
           EndSelect 
          
           Select hBuf\item[i]\dwDisplayType 
             Case 6 : line$ + #EOL + "NETWORK" : image = hIcon( #IcoNetwork ) 
             Case #RESOURCEDISPLAYTYPE_DOMAIN : line$ + #EOL + "DOMAIN" : image = hIcon( #IcoDomain ) 
             Case #RESOURCEDISPLAYTYPE_SERVER : line$ + #EOL + "SERVER" : image = hIcon( #IcoServer ) 
             Case #RESOURCEDISPLAYTYPE_GENERIC : line$ + #EOL + "GENERIC" : image = hIcon( #IcoGeneric ) 
             Case #RESOURCEDISPLAYTYPE_SHARE : line$ + #EOL + "SHARE" : image = hIcon( #IcoShare ) 
           EndSelect 
          
           Select hBuf\item[i]\dwType 
             Case #RESOURCETYPE_ANY : line$ + #EOL + "ANY" 
             Case #RESOURCETYPE_DISK : line$ + #EOL + "DISK" 
             Case #RESOURCETYPE_PRINT : line$ + #EOL + "PRINT" : image = hIcon( #IcoPrint ) 
           EndSelect 
          
           Select hBuf\item[i]\dwUsage 
             Case hBuf\item[i]\dwUsage | #RESOURCEUSAGE_CONNECTABLE : line$ + #EOL + "CONNECTABLE" 
             Case hBuf\item[i]\dwUsage | #RESOURCEUSAGE_CONTAINER : line$ + #EOL + "CONTAINER" 
           EndSelect 
          
           Select Type 
             Case #TYPE_LIST 
               AddGadgetItem (Gadget,-1,line$,image) 
               If hBuf\item[i]\dwUsage & #RESOURCEUSAGE_CONTAINER 
                EnumNetworkEx(Gadget,Type,hBuf\item[i]) 
               EndIf 
             Case #TYPE_TREE 
               AddGadgetItem (Gadget,-1,RemoteName$,image) 
               If hBuf\item[i]\dwUsage & #RESOURCEUSAGE_CONTAINER 
                ;OpenTreeGadgetNode(Gadget) 
                EnumNetworkEx(Gadget,Type,hBuf\item[i]) 
                ;CloseTreeGadgetNode(Gadget) 
               EndIf 
           EndSelect 
          
         Next 
        
     EndSelect 
    
  ForEver 
  
   If WNetCloseEnum_ (hEnum) = #NO_ERROR 
     ProcedureReturn #True 
   EndIf 
  
EndProcedure 
Procedure.l EnumNetwork(Gadget.l,Type.l,RemoteName.s) 
  
   ClearGadgetItems (Gadget) 
  
   If RemoteName <> "" 
    
    item.NETRESOURCE 
    item\lpRemoteName = @RemoteName 
    
   EndIf 
  
   ProcedureReturn EnumNetworkEx(Gadget,Type,item) 
  
EndProcedure 

;- 
;- Example 
;- 

w = 600 
h = 300 

If OpenWindow (0,0,0,w,h,"WNetEnumResource", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_ScreenCentered) 
  
   ;If CreateGadgetList ( WindowID ()) 
    
     ListIconGadget (0,0,0,0,0, "RemoteName" ,200, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection ) 
     TreeGadget (1,0,0,0,0, #PB_Tree_AlwaysShowSelection ) 
     SplitterGadget (2,5,5,w-10,h-10,1,0, #PB_Splitter_Vertical ) 
    
     SetGadgetState (2,300) 
     ;ChangeListIconGadgetDisplay (0,3) 
     AddGadgetColumn (0,1, "LocalName" ,80) 
     AddGadgetColumn (0,2, "Provider" ,180) 
     AddGadgetColumn (0,3, "Comment" ,140) 
     AddGadgetColumn (0,4, "Scope" ,80) 
     AddGadgetColumn (0,6, "DisplayType" ,75) 
     AddGadgetColumn (0,5, "Type" ,75) 
     AddGadgetColumn (0,7, "Usage" ,100) 
    
    EnumNetwork(0, #TYPE_LIST , "" ) ; "WORKGROUP" or "\\MYCOMPUTER" 
    EnumNetwork(1, #TYPE_TREE , "" ) ; or "\\MYCOMPUTER\SharedDocs\" 
    
     Repeat 
       Select WaitWindowEvent () 
         Case #PB_Event_CloseWindow : Break 
         Case #PB_Event_SizeWindow : ResizeGadget (2,-1,-1, WindowWidth (0)-10, WindowHeight (0)-10) 
         Case #PB_Event_Gadget 
       EndSelect 
    ForEver 
    
   ;EndIf 
  
EndIf 


Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Lister les ressources réseaux (EnumNetworkResources)

Message par Kwai chang caine »

Merci ZAPHOD de ce travail. 8)
C'est dingue, je n'y ai pas rejeté un oeil actuellement, mais a l'epoque je n'y etait pas arrivé :oops:

Par contre...ton code ne reagi pas exactement comme celui de FLYPE

Sur le code de FLYPE, ça me donne exactement comme me donne l'explorateur de reseau de windows.
Y'a un petit plus a coté de "Reseau microsoft windows", et si on clic dessus, y'a le groupe de travail, et si on clique sur le groupe, y'a les PC dans le groupe.
Les icones sont en cascade comme avec l'explorateur d'origine.

Dans ton code ils apparaissent tous sur le meme plan 8O
Je ne sais pas si c'est du a la v4.30 :roll:

Remarque ce n'est pas grave..c'etait juste pour info
Encore merci de la traduction 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Répondre