Accueil > > > LISTER LES ORDINATEURS PRÉSENT SUR VOTRE DOMAINE VB2005
LISTER LES ORDINATEURS PRÉSENT SUR VOTRE DOMAINE VB2005
Information sur la source
Description
Liste les ordinateurs présent sur votre domaine Retourne une list(Of String) Donc vous faite MyCombobox.DataSource = ListeOrdiReseau()
Source
- Module Reseau
- Private Declare Sub MessageBeep Lib "User32" (ByVal N As Integer)
- Private strCritere As String = Nothing
-
- Sub callBeepDll(ByVal n As Integer)
- Call MessageBeep(n)
- End Sub
-
- ''' <summary>
- ''' Retourne une liste des ordinateurs sur le reseau
- ''' </summary>
- ''' <returns>List(Of String)</returns>
- ''' <remarks></remarks>
- Public Function ListeOrdiReseau() As List(Of String)
- Dim Proc As Process = New Process()
- Proc.StartInfo.FileName = "net.exe"
- Proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
- Proc.StartInfo.Arguments = "view"
- Proc.StartInfo.UseShellExecute = False
- Proc.StartInfo.RedirectStandardOutput = True
- Proc.StartInfo.StandardOutputEncoding = System.Text.Encoding.Default
- Proc.Start()
-
- Dim CurrentCoding As System.Text.Encoding = Proc.StandardOutput.CurrentEncoding
- Dim st As New IO.StreamReader(Proc.StandardOutput.BaseStream)
- Dim output As String = st.ReadToEnd
- Proc.WaitForExit()
-
- Dim strOut As New List(Of String)
- strOut.AddRange(output.Split(vbCrLf))
- Dim outStr As String = Nothing
- For Each myServ As String In strOut
- If myServ.StartsWith(ControlChars.Lf & "\\") Then
- myServ = Replace(Trim(myServ), ControlChars.Lf, "").Trim
- If myServ.IndexOf(" ") > 0 Then
- outStr &= Strings.Left(myServ, myServ.LastIndexOf(" ")).Trim
- If outStr.IndexOf(" ") > 0 Then 'Un 2ème passage si comprend une désignation
- outStr = Strings.Left(outStr, outStr.LastIndexOf(" ")).Trim
- End If
- ElseIf myServ.IndexOf("\\") <> -1 Then
- outStr &= Strings.Left(myServ, myServ.LastIndexOf("") + 1).Trim
- Else
- If Not IsNothing(outStr) Then
- If outStr.IndexOf(" ") > 0 Then
- outStr = Strings.Left(outStr, outStr.LastIndexOf(" ")).Trim
- Else
- outStr &= myServ
- End If
- End If
-
- End If
- End If
- Next
- strOut.RemoveRange(0, strOut.Count)
- If Not IsNothing(outStr) Then strOut.AddRange(outStr.Split("\\"))
- '********** *****************************************************
- 'Permet de chercher un critere en le passant à la function cherche si ca correspond il l'enleve du tableau
- strCritere = ""
- Dim match As New System.Predicate(Of String)(AddressOf Cherche)
- strOut.RemoveAll(match)
- '****************************************************************
- strOut.TrimExcess()
- callBeepDll(-1)
- Return strOut
- End Function
-
- Private Function Cherche(ByVal p As String) As Boolean
- If p = strCritere Then
- Return True
- Else
- Return False
- End If
- End Function
- End Module
Module Reseau
Private Declare Sub MessageBeep Lib "User32" (ByVal N As Integer)
Private strCritere As String = Nothing
Sub callBeepDll(ByVal n As Integer)
Call MessageBeep(n)
End Sub
''' <summary>
''' Retourne une liste des ordinateurs sur le reseau
''' </summary>
''' <returns>List(Of String)</returns>
''' <remarks></remarks>
Public Function ListeOrdiReseau() As List(Of String)
Dim Proc As Process = New Process()
Proc.StartInfo.FileName = "net.exe"
Proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
Proc.StartInfo.Arguments = "view"
Proc.StartInfo.UseShellExecute = False
Proc.StartInfo.RedirectStandardOutput = True
Proc.StartInfo.StandardOutputEncoding = System.Text.Encoding.Default
Proc.Start()
Dim CurrentCoding As System.Text.Encoding = Proc.StandardOutput.CurrentEncoding
Dim st As New IO.StreamReader(Proc.StandardOutput.BaseStream)
Dim output As String = st.ReadToEnd
Proc.WaitForExit()
Dim strOut As New List(Of String)
strOut.AddRange(output.Split(vbCrLf))
Dim outStr As String = Nothing
For Each myServ As String In strOut
If myServ.StartsWith(ControlChars.Lf & "\\") Then
myServ = Replace(Trim(myServ), ControlChars.Lf, "").Trim
If myServ.IndexOf(" ") > 0 Then
outStr &= Strings.Left(myServ, myServ.LastIndexOf(" ")).Trim
If outStr.IndexOf(" ") > 0 Then 'Un 2ème passage si comprend une désignation
outStr = Strings.Left(outStr, outStr.LastIndexOf(" ")).Trim
End If
ElseIf myServ.IndexOf("\\") <> -1 Then
outStr &= Strings.Left(myServ, myServ.LastIndexOf("") + 1).Trim
Else
If Not IsNothing(outStr) Then
If outStr.IndexOf(" ") > 0 Then
outStr = Strings.Left(outStr, outStr.LastIndexOf(" ")).Trim
Else
outStr &= myServ
End If
End If
End If
End If
Next
strOut.RemoveRange(0, strOut.Count)
If Not IsNothing(outStr) Then strOut.AddRange(outStr.Split("\\"))
'********** *****************************************************
'Permet de chercher un critere en le passant à la function cherche si ca correspond il l'enleve du tableau
strCritere = ""
Dim match As New System.Predicate(Of String)(AddressOf Cherche)
strOut.RemoveAll(match)
'****************************************************************
strOut.TrimExcess()
callBeepDll(-1)
Return strOut
End Function
Private Function Cherche(ByVal p As String) As Boolean
If p = strCritere Then
Return True
Else
Return False
End If
End Function
End Module
Historique
- 19 octobre 2006 11:40:33 :
- Nettoyage du résultat avant renvoi de la liste des Ordinateurs
- 19 juillet 2007 22:31:20 :
- petit bug Proc.standardOutput ne fonctionnait pas toujours ?
Dans la boucle For Each ajout d'un Elseif
ElseIf myServ.IndexOf("\\") <> -1 Then
outStr &= Strings.Left(myServ, myServ.LastIndexOf("") + 1).Trim
Sinon pouvait returner Nothing et plantait le prog (pourquoi mettre des Try Catch quand cela peut être corrigé..
Chez moi ce code et à mon boulot, fonctionne parfaitement.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Modifier le domaine d'un utilisateur [ par NaarGuileh ]
Bonjour,Voila mon problème : dans le cadre de l'automatisation des tâches d'administration, on m'a demandé un script en VBScript qui récupère les nom
Créer un compte avec un Domaine différent [ par NaarGuileh ]
Bonjour, Voila mon problème: je dois créer en local sur chaque poste d'un réseau des comptes à partir d'une liste de noms provenant d'un serveur Act
Acces Base De Registre : Plusieurs PC sur domaine [ par TaKeLbErRy ]
Bonjour Mes seigneurs !Voila je voudrais à l'aide de VB6 pouvoir interroger la BDR de plusieurs PC faisant parti du même domaine.Un petit br
Remplissage d'un TreeView par un thread [ par ofeelfree ]
Bonjour,Voici mon problème : j'ai un formulaire qui contient un TreeView, et une méthode qui remplit ce TreeView avec la liste des ordinateu
Erreur Authentication failed on computer running IIS [ par maclosky ]
Cela fait 7 jours que j'essaie de faire une replication d'un table d'un Server SQL 2000 vers un base SQL CE. Cependant lors de la syncronisation il me
Récupérer le SID d'un utilisateur hors domaine. [ par sylvain.r ]
Bonjour. Je souhaiterai récupérer le SID d’
ajouter un utilisateur dans l'AD selon un fichier txt ??? [ par Darst ]
hello, je cherche a améliorer mon VBS. mon VBS actuel permet de creer un utilisateur dans une AD, le place dans un OU, crée nom, prén
ip dans une listBox [ par kekeman ]
Bonjour à tous!! e me permet de vous questionner à propos d'un petit problème que j'ai:Voila, jaimerai qu'à partir d'un bout
test d'authentification dans un domaine NT [ par chmey671 ]
Salut, je cherche à écrire en script vbs un module à rajouter dans mon application de gestion de parc. Je souhaite que la personne qui lance l'applica
test d'authentification dans un domaine NT [ par chmey671 ]
Salut, je cherche à écrire en script vbs un module à rajouter dans mon application de gestion de parc. Je souhaite que la personne qui lance l'applica
|
Derniers Blogs
[WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
LISTER KEYS.KEYLISTER KEYS.KEY par Onin42
Cliquez pour lire la suite par Onin42
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|