[VBScript] données.de.NetworkView.base.Access

Bonjour ,
Je souhaite réaliser un script visant a automatiser le transfert des resultats d'un scan de NetworkView a ma base de registre Access.
Seulement je n'ai que la partie desauvegarde dans access mais je ne sais pas comment m'y prendre pour extraire les info de mon fichier NetworkView.

Quelqu'un ayant connu ce problème ou sachant comment résoudre le problème pourrait m'éclairer svp?
Configuration: Windows XP
Firefox 2.0.0.3

8 réponses

  • Votes
  • Date
  • Date décroissante
  1. Lupin sais tu comment faire pour importer ces données textes dans access mais de manière automatiques stp?

    Alex
    1. Okay merci la lecture marche a ravir il ne me manque plus qu'à ajouter la partie pour transferer tous ca dans access mais c'est ca le plus compliqué;)

      Faudrait-il obligatoirement créer une nouvelle base de données ou je peux rajouter les éléments a ceux deja existants?

      Alex
      1. Salut Alex,

        voici un exemple plus simple, d'une simple lecture
        d'un fichier texte localisé dans le même répertoire
        que le fichier vbs.

        '------------------------------------------------------------
        '
        ' Fichier LireFichier.vbs
        '
        ' Écrit par Lupin
        '
        ' Mercredi, le 6 Juin 2007
        '
        '------------------------------------------------------------
        '
          Const cte_Lecture = 1
          Const cte_Nom_Fichier = "Liste.txt"
        
          Dim objFSO, objFichier
          Dim var_Nom_Fichier, var_Texte, var_Compteur
        
          var_Compteur = 0
          var_Nom_Fichier = WScript.ScriptFullName
          var_Nom_Fichier = Left(var_Nom_Fichier, InStrRev(var_Nom_Fichier, "\"))
          var_Nom_Fichier = var_Nom_Fichier & cte_Nom_Fichier
        
          Set objFSO = CreateObject("Scripting.FileSystemObject")
          Set objFichier = objFSO.OpenTextFile(var_Nom_Fichier,cte_Lecture)
        
          While Not objFichier.AtEndOfStream
            var_Texte = objFichier.ReadLine
            var_Compteur = ( Var_Compteur + 1 )
          Wend
        
          objFichier.Close
        
          Set objFichier = Nothing
          Set objFSO = Nothing
        
          WScript.Echo var_Compteur & " ligne(s)."
        
        WScript.Quit(0)
        '
        '------------------------------------------------------------
        '
        


        Lupin
        1. Alors je vais essayer ceci en essayant de comprendre un peu ce language ;)
          Je vais voir ca et je vous redit une fois l'essai terminer ou plutot leS essaiS^^''

          Merci

          Alex
          1. Bonjour,

            Alors, voici ...

            si tu veux piloter Access depuis le VBS pour importer le fichier ...

            le plus simple est de trouver quelque chose comme :

            Sub ImportInAccess()
            
              DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _
                    "TableAccess", "C:\My Document\FichierExcel.xls", False
            
            End Sub
            '
            


            je n'ai pas testé, s'il accepte un type CSV, ce serait un bon
            début si tu pouvais testé cela.

            sinon, voici le code complet d'un script que j'ai écrit et qui
            lit l'arborescence d'un disque/répertoire en l'envoyant
            dans une BD access existante.

            '=========================================='
            ' Fichier Source VBScript
            '
            ' NOM DU FICHIER : <Access.vbs> 	ARBORESCENCE SOUS ACCESS
            '
            ' AUTEUR : Lupin
            ' DATE DE CRÉATION  : 2002-12-24
            '
            ' COMMENT: <Compiler dans un fichier ACCESS toutes les informations 
            '	    des fichiers d'un lecteur
            '=========================================='
            'Accèss au dossier d'un disque
            
            Const adOpenStatic = 3
            Const adLockOptimistic = 3
            Const adUseClient = 3
            
            Const MoteurDeRecherche = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
            
            '
            ' Déclaration des variables de la base de données ACCESS
            '
            Dim oFS
            
            Dim objConnection
            Dim objRecordset
            Dim AccesFichier
            
            Dim NumCD
            Dim NomCD
            Dim NomLog
            Dim NomApp
            
            
            '(37) Debut du programme
            
                On Error Resume Next
            
                Flag = False
            
                msgTexte = "Entrez le numéro du CDROM à lire : " & vbCrLf & "( ex.: CD1001 )"
                NumCD = InputBox(msgTexte, "Saisie du numéro du CDROM à lire", "CDR10010")
                msgTexte = "Entrez le nom du CDROM à lire : " & vbCrLf & "( ex.: WINDOWS XP PRO )"
                NomCD = InputBox(msgTexte, "Saisie du nom du CDROM à lire", "SOURCES #1")
                msgTexte = "Entrez le nom du logiciel : " & vbCrLf & "( ex.: Microsofrd )"
                NomLog = InputBox(msgTexte, "Saisie du fichier à créer", "DOCUMENTS")
                msgTexte = "Entrez le nom de l'application : " & vbCrLf & "(ex.: Microsoft Word)"
                NomApp = InputBox(msgTexte, "Saisie du fichier à créer", "DONNÉES")
                msgTexte = "Entrez le nom du fichier : " & vbCrLf & "(ex.: C:\CDROM.MDB)"
                Fichier = InputBox(msgTexte, "Saisie du fichier à créer", "K:\CDROM.MDB")
                Set objConnection = CreateObject("ADODB.Connection")
                Set objRecordset = CreateObject("ADODB.Recordset")
                Set oFS = CreateObject("Scripting.FileSystemObject")
                Disque = Mid(Fichier, 1, 2)
                Set oLecteur = oFS.GetDrive(Disque)
                If (oLecteur.IsReady) Then
                    AccesFichier = MoteurDeRecherche & Fichier
                    objConnection.Open AccesFichier
                    objRecordset.Open "SELECT * FROM LibrairieCDROM" , objConnection, adOpenStatic, adLockOptimistic
                    Lecteur = InputBox("Entrez la lettre du lecteur à lire :", "Saisie du lecteur à lire","H")
                    Set oLecteur = oFS.GetDrive(Lecteur)
                    If (oLecteur.IsReady) Then
                         Call Principal(Fichier)
                    Else
                        EnvoiMessage (0)
                    End If
                Else
                    EnvoiMessage (0)
                End If
            WScript.Quit(0)
            '
            '=========================================='
            Sub Principal(ByVal nomFichier)
            
            '    On Error Resume Next
            
            
                If (oLecteur.IsReady) Then
            
                    'Lecture des fichiers dans la racine du lecteur
                    If (oLecteur.RootFolder.Files.Count > 0) Then
                        For Each oFichier In oLecteur.RootFolder.Files
            	objRecordset.AddNew
            	objRecordset("Nom Fichier") = oFichier.Name
            	objRecordset("Grandeur") = oFichier.Size
            	objRecordset("Chemin d'accès") = oFichier.Path
            	objRecordset("Date Créé") = oFichier.DateCreated
            	objRecordset("Date Modifié") = oFichier.DateLastModified
            	objRecordset("Nom court") = oFichier.ShortName
            	objRecordset("Chemin court") = oFichier.ShortPath
            	Call ChercheAttributs (oFichier,CACHE,Reponse)
            	objRecordset("Attr CACHÉ") = Reponse
            	Call ChercheAttributs (oFichier,SYSTEME,Reponse)
            	objRecordset("Attr SYSTÈME") = Reponse
            	Call ChercheAttributs (oFichier,ARCHIVE,Reponse)
            	objRecordset("Attr ARCHIVE") = Reponse
            	Call ChercheAttributs (oFichier,LECTURE,Reponse)
            	objRecordset("Attr LECTURE SEULE") = Reponse
            	Call ChercheAttributs (oFichier,RACCOURCI,Reponse)
            	objRecordset("Attr RACCOURCI") = Reponse
            	Call ChercheAttributs (oFichier,COMPRESSE,Reponse)
            	objRecordset("Attr COMPRESSÉ") = Reponse
            	objRecordset("Numéro CDROM") = NumCD
            	objRecordset("Nom CDROM") = NomCD
            	objRecordset("Nom Logiciel") = NomLog
            	objRecordset("Nom Application") = NomApp
            	objRecordset.Update
                           Next
                    End If
                        	
                    'Lecture des sous-répertoires dans le lecteur
            
                    For Each oRepertoire In oLecteur.RootFolder.SubFolders
            	Call ListeFichier(oRepertoire)
                    Next
                End If
            
                objConnection.Close
            
            End Sub
            '
            '=========================================='
            Sub ListeFichier(ByVal oRepertoire)
            
                Dim oDossier
                Dim Reponse
            
                On Error Resume Next
            
                If (oRepertoire.Files.Count > 0) Then
                    For Each oFichier In oRepertoire.Files
                        objRecordset.AddNew
                        objRecordset("Nom Fichier") = oFichier.Name
                        objRecordset("Grandeur") = oFichier.Size
                        objRecordset("Chemin d'accès") = oFichier.Path
                        objRecordset("Date Créé") = oFichier.DateCreated
                        objRecordset("Date Modifié") = oFichier.DateLastModified
                        objRecordset("Nom court") = oFichier.ShortName
                        objRecordset("Chemin court") = oFichier.ShortPath
                       Call ChercheAttributs (oFichier,CACHE,Reponse)
                       objRecordset("Attr CACHÉ") = Reponse
                       Call ChercheAttributs (oFichier,SYSTEME,Reponse)
                       objRecordset("Attr SYSTÈME") = Reponse
                       Call ChercheAttributs (oFichier,ARCHIVE,Reponse)
                       objRecordset("Attr ARCHIVE") = Reponse
                       Call ChercheAttributs (oFichier,LECTURE,Reponse)
                       objRecordset("Attr LECTURE SEULE") = Reponse
                      Call ChercheAttributs (oFichier,RACCOURCI,Reponse)
                      objRecordset("Attr RACCOURCI") = Reponse
                      Call ChercheAttributs (oFichier,COMPRESSE,Reponse)
                      objRecordset("Attr COMPRESSÉ") = Reponse
                      objRecordset("Numéro CDROM") = NumCD
                      objRecordset("Nom CDROM") = NomCD
                      objRecordset("Nom Logiciel") = NomLog
                      objRecordset("Nom Application") = NomApp
                      objRecordset.Update
                   Next
                End If
            
                If (oRepertoire.SubFolders.Count > 0) Then
                    For Each oDossier In oRepertoire.SubFolders
                        Call ListeFichier(oDossier)
                    Next
                End If
                    
            End Sub
            '
            '=========================================='
            Function ChercheAttributs (ByVal oFichier,ByVal Validation, ByRef Reponse)
            
            
                On Error Resume Next
            
                Reponse = "Aucun"
            
                Select Case (Validation)
                    Case (LECTURE)
                         If (oFichier.Attributes AND 1) Then
            	   Reponse = "Activer" 	'Read-only = VRAI
                         Else
            	    Reponse = "Désactiver" 	'Read-only = FAUX
                         End If
            
                    Case (CACHE)
                         If (oFichier.Attributes AND 2) Then
                                     Reponse = "Activer"	'Hidden file = VRAI
                         Else
                                     Reponse = "Désactiver"	'Hidden file = FAUX
                         End If
            
                    Case (SYSTEME)
                         If (oFichier.Attributes AND 4) Then
                                    Reponse = "Activer"		'System file = VRAI
                         Else
                                    Reponse = "Désactiver"	'System file = FAUX
                         End If
            
                     Case (ARCHIVE)
                         If (oFichier.Attributes AND 32) Then
                                   Reponse = "Activer"		'Archive bit = VRAI
                         Else
                                   Reponse = "Désactiver"	'Archive bit = FAUX
                         End If
            
                     Case (RACCOURCI)
                          If (oFichier.Attributes AND 64) Then
                                   Reponse = "Activer"		'ShortCut = VRAI
                          Else
                                   Reponse = "Désactiver"	'ShortCut = FAUX
                          End If
            
                     Case (COMPRESSE)
                          If (oFichier.Attributes AND 2048) Then
                                  Reponse = "Activer"	       'Compressed file = VRAI
                          Else
            	Reponse = "Désactiver"   'Compressed file = FAUX
                          End If
            
                      Case Else Reponse = "Aucun"
            	
                  End Select
            
            End Function
            '
            '=========================================='
            


            allons y pas a pas, et que veux-tu savoir !

            Lupin
            1. Repondez moi svp Mr Lupin vous etes le seul à pouvoir m'aider actuellement...

              Cordialement

              Alex
              1. Bonjour,

                C'est un fichier standard séparé avec des points virgule ( ; )
                Mes notions en VBS sont trés limités c'est pour cela que je souhaiterais des explications svp si le tps vous en donne l'occasion ;)
                Je suis actuellement en stage en entreprise j'ai 19ans et on m'a demandé de regarder pour faire le lien entre networkview et access.
                Mais le but est de comprendre...

                Merci d'avance^^''

                NB : J-C Bellamy est un artiste je suis d'accord avec vous mais je vais me renseigner régulièrement la bas depuis une bonne dizaines de mois mais je n'arrive encore pas a conclure avec ses informations ^^''
                1. Bonjour,

                  Pour vous aider, il me faudrait certaines informations ...

                  Quel est le type du fichier NetworkView ?

                  Est-ce un fichier texte standard ?

                  Avez-vous des notions de VBS ?

                  Lupin