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

Alexandre -  
 Alexandre -
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

  1. Utilisateur anonyme
     
    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
    -1
  2. Alexandre
     
    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 ^^''
    0
  3. Alexandre
     
    Repondez moi svp Mr Lupin vous etes le seul à pouvoir m'aider actuellement...

    Cordialement

    Alex
    -1
  4. Utilisateur anonyme
     
    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
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Alexandre
     
    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
    0
  7. Utilisateur anonyme
     
    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
    0
  8. Alexandre
     
    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
    0
  9. Alexandre
     
    Lupin sais tu comment faire pour importer ces données textes dans access mais de manière automatiques stp?

    Alex
    0