Extraire adresses ip d'un texte [Résolu]

noidchepper 3 Messages postés mercredi 26 décembre 2007Date d'inscription 31 décembre 2007 Dernière intervention - 28 déc. 2007 à 16:47 - Dernière réponse : noidchepper 3 Messages postés mercredi 26 décembre 2007Date d'inscription 31 décembre 2007 Dernière intervention
- 31 déc. 2007 à 14:54
Bonjour, je debute en VB 2005 (et en vb tout court...) et je dois faire un petit prog utilitaire pour
afficher des infos sur les adresses ip, masque ss réseau, passerelle et dns d'un ordinateur (en local)
Ce programme doit marcher hors connexion donc pour récuperer les paramètres, j'utilise le code suivant (avec les dim etc...)
shl.run(

"command /c ipconfig /all > " & File, 0,
True)

où File est une variable qui contient en string  mon chemin d'accès au texte, ici c:\ip.txt.
Jusque là tout marche très bien et j'obtient un fichier texte avec l'ipconfig tel qu'il apparait dans le DOS, mon problème est que j'aimerai avoir une fonction pour extraire de ce fichier les adresses ip et autres paramètres afin de les afficher dans une textbox. Tout ce à quoi je parvien c'est à rechercher un mot dans le texte et dire s'il est présent ou non. je ne vois pas comment m'en sortir, s'il vous plait aidez-moi !!!
(Si ma méthode est idiote et qu'il y a un moyen plus simple de récupérer ces paramètres je suis preneur aussi...)
Merci beaucoup d'avance
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
fsltp 94 Messages postés lundi 26 novembre 2007Date d'inscription 16 janvier 2008 Dernière intervention - 28 déc. 2007 à 20:49
3
Merci
Bonsoir,

En combinant, MID() et instr()
tu dois pouvoir fair qque chose.

Merci fsltp 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de fsltp
noidchepper 3 Messages postés mercredi 26 décembre 2007Date d'inscription 31 décembre 2007 Dernière intervention - 31 déc. 2007 à 14:50
0
Merci
MERCI !!!!!!
ca a marché pour MID et Instr, maintenant mon programme marche quand j'execute le débugeur de VB 2005 mais à la publication, il me retourne un message d'erreur dont je ne comprend pas le sens :







 system.ArgumentException: Paramètre incorrect. (Exception de HRESULT : 0x80070057 (E_INVALIDARG))
   à Microsoft.VisualBasic.CompilerServices.LateBinding.InternalLateCall(Object o, Type objType, String name, Object[] args, String[] paramnames, Boolean[] CopyBack, Boolean IgnoreReturn)
   à Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn)
   à CJSNetworkApp.Form1.Form1_Load(Object sender, EventArgs e)
   à System.EventHandler.Invoke(Object sender, EventArgs e)
   à System.Windows.Forms.Form.OnLoad(EventArgs e)
   à System.Windows.Forms.Form.OnCreateControl()
   à System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   à System.Windows.Forms.Control.CreateControl()
   à System.Windows.Forms.Control.WmShowWindow(Message& m)
   à System.Windows.Forms.Control.WndProc(Message& m)
   à System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   à System.Windows.Forms.ContainerControl.WndProc(Message& m)
   à System.Windows.Forms.Form.WmShowWindow(Message& m)
   à System.Windows.Forms.Form.WndProc(Message& m)
   à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

désolé de vous faire perdre votre temps mais là je suis vraiment à la masse....

Pour info le code principal de mon programmeest :

Imports

System
Imports

System.Tex
Imports

System.IO 

 

Public

Class Form1 

 

Private
Sub Form1_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Load

Dim fso = CreateObject(
"Scripting.FileSystemObject")

Dim shl = CreateObject(
"wscript.shell")

Dim File
As
String =
"c:\ip.txt"shl.run(

"command /c ipconfig /all > " & File, 0,
True)

Dim temp1fso = CreateObject(

"Scripting.FileSystemObject")temp1 = fso.OpenTextFile(

"c:\ip.txt")str_texte = temp1.ReadAll()

Dim IPPos, IPMaskPos, IPGatewayPos, IPServerPos
As
StringIPPos = InStr(str_texte,

"Adresse IP", CompareMethod.Text) + 35IPMaskPos = InStr(str_texte,

"Masque de sous-réseau", CompareMethod.Text) + 35IPGatewayPos = InStr(str_texte,

"Passerelle par défaut", CompareMethod.Text) + 35IPServerPos = InStr(str_texte,

"Serveurs DNS", CompareMethod.Text) + 35TextBox1.Text = Mid(str_texte, IPPos, 15)

TextBox2.Text = Mid(str_texte, IPMaskPos, 15)

TextBox3.Text = Mid(str_texte, IPGatewayPos, 15)

TextBox4.Text = Mid(str_texte, IPServerPos, 15)

 

End
Sub

Private
Sub Button2_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button2.Click

Dim shl = CreateObject(
"wscript.shell")

Dim File
As
String =
"c:\ip.txt"shl.run(

"netsh interface ip set address""Connexion au réseau local""static" & IPAdressClinique & IPMaskClinique & IPGatewayClinique,
"1")shl.run(

"netsh interface ip set dns raiseau maison static" & IPServer1Clinique)shl.run(

"netsh interface ip add dns raiseau maison static" & IPServer2Clinique)

End
Sub

Private
Sub Button1_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click

Dim shl = CreateObject(
"wscript.shell")

Dim File
As
String =
"c:\ip.txt"shl.run(

"netsh interface ip set address Connexion au réseau local static" & IPAdressPersonnel & IPMaskPersonnel & IPGatewayPersonnel)shl.run(

"netsh interface ip set dns raiseau maison static" & IPServer1Personnel)shl.run(

"netsh interface ip add dns raiseau maison static" & IPServer2Personnel)

End
Sub

Private
Sub AboutToolStripMenuItem_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles AboutToolStripMenuItem.ClickAboutBox1.Show()

End
Sub

Private
Sub CliniqueToolStripMenuItem_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles CliniqueToolStripMenuItem.ClickForm3.Show()

End
Sub

Private
Sub PersonnelToolStripMenuItem_Click_1(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles PersonnelToolStripMenuItem.ClickForm2.Show()

End
SubEnd

Class

Voila, si vous pouvez m'aider ça serait vraiment cool... la je galère.

Merci
Commenter la réponse de noidchepper
noidchepper 3 Messages postés mercredi 26 décembre 2007Date d'inscription 31 décembre 2007 Dernière intervention - 31 déc. 2007 à 14:54
0
Merci
Et en plus je bosse un 1er Janvier,.... SO LI DA RI TE.....
Commenter la réponse de noidchepper

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.