VBscript et Base de donnée Access

Résolu
bonjour
donc voila mon souci j ai mon script qui me permet de recuperer l espace de mes disques ainsi que l espace libre en pourcent je souhaiterais stocker ces informations horodatées dans une base de type Access et faire des remonter d'alerte via Lotus si un volume est en dessous d un seuil pre-defini.
Alors est ce que quelqu un pourrai m orienter sur la bonne voie parce que je ne sais pas su tout commnt faire comme je suis debutant En VBscript voila merci d avance a tous!!!

voici mon script pour vous donner un idée :

' FreeSpace.vbs
' Montrez l'espace disque libre pour toutes les disques locaux

' Check command line parameters
Select Case WScript.Arguments.Count
Case 0
' Default if none specified is local computer (".")
Set objWMIService = GetObject( "winmgmts://./root/cimv2" )
Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
For Each objItem in colItems
strComputer = objItem.Name
Next
Case 1
' Command line parameter can either be a computer name
' or "/?" to request online help
strComputer = Wscript.Arguments(0)
if InStr( strComputer, "?" ) > 0 Then Syntax
Case Else
' Maximum is 1 command line parameter
Syntax
End Select

Display( strComputer )
WScript.Quit(0)

Function Display( strComputer )
strMsg = vbCrLf & "Name:" & vbTab & "Drive:" & vbTab & "Size:" & _
vbTab & "Free:" & vbTab & "% Free:" & vbCrLf & "=====" & _
vbTab & "======" & vbTab & "=====" & vbTab & "=====" & _
vbTab & "=======" & vbCrLf
On Error Resume Next
Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
If Err.Number Then
WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _
" " & Err.Description
Err.Clear
Syntax
End If
On Error GoTo 0
' Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where MediaType=12",,48)
Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48)
For Each objItem in colItems
strMsg = strMsg & strComputer & vbTab & _
objItem.Name & vbTab & _
CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) ) & _
vbTab & _
CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) ) & _
vbTab & _
CStr( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & _
vbCrLf
Next
'WScript.Echo strMsg => cette commande m affcihe le resultat dans une MSGBOX
'Cela permet de m afficher mon resultat sur une page Web
dim IE
set ie = createobject("Internetexplorer.application")
ie.navigate("about:blank")
do while ie.document.readystate<>"complete"
wscript.sleep 100
loop
ie.document.body.innertext = strmsg
ie.visible = true
set ie = nothing
End Function

17 réponses

  1. Quelqu'un pourrais m'aider a faire la meme chose mais depuis les données de netwokview svp?
    1. Bonjour a tous j'espere qu'il y aura quelqu'un car moi je cherche a automatiser via un script des données vers access.
      Ce sont des données venant de NetworkView que je souhaite integrer dans ma base de registre access via un script d'automatisation.
      Le code me parait assez similaire cependant il me manque encore quelques info pouvez vous m'orientez svp?
      1. salut sHUMI VOILA ENFIN LE SCRIPT QUI MARCHE NIKEL EN FAITE J AVAIS UN PROBLEME SUR MA BECANE AVEC Mes Sources ODBC!!

        donc le script suivant permet de repertorier les disque ainsi que l espace libre d une part il donne le resukta sur un page web puis il stock le tous dans une BD Access qu il faut avoir crée eu préalable ca prend 2 minute lool!!

        Voila en faite j ai essayé de detail pour les gens qui debutent comme moi parceque je crois que c est eux qui ont le plus besoin d aide !!

        merci au gens comme lupin et les autre qui prenne le temps de donner un coup de main:

        '-------------------------------------------------------------------------
        ' Script de description des Hdd dans une page web et/ou une base Access
        ' ------------------------------------------------------------------------
        '
        '*************************************************************************
        'Constante d'accèss au fichier *.mdb
        Const adOpenStatic = 3
        Const adLockOptimistic = 3
        Const adUseClient = 3
        Const MoteurDeRecherche ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="

        '"Provider=Microsoft.Jet.OLEDB.4.0;Data Source= C:\BdDisque.mdb;"

        ' Déclaration des variables de la base de données ACCESS
        '
        Dim oFS, objConnection, objRecordset
        '*************************************************************************
        '
        Dim objWMIService, colItems, DestHtml
        'Créer un objet fichier
        Set oFS = WScript.CreateObject("Scripting.FileSystemObject")
        '********-----------------------------------------------------************

        Dim cnt
        Dim Aff()
        Dim Aff0()
        Dim Aff1()
        Dim Aff2()
        Dim Aff3()

        cnt = 0
        Redim Aff(cnt)
        Redim Aff0(cnt)
        Redim Aff1(cnt)
        Redim Aff2(cnt)
        Redim Aff3(cnt)

        DestHtml = "hd.html"
        Select Case WScript.Arguments.Count
        Case 0
        ' Default if none specified is local computer (".")
        Set objWMIService = GetObject( "winmgmts://./root/cimv2" )
        Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
        For Each objItem in colItems
        strComputer = objItem.Name
        Next
        Case 1
        ' Command line parameter can either be a computer name
        ' or "/?" to request online help
        strComputer = Wscript.Arguments(0)
        if InStr( strComputer, "?" ) > 0 Then Syntax
        Case Else
        ' Maximum is 1 command line parameter
        Syntax
        End Select

        Display (strComputer)
        CreateHTML (DestHTML )
        CreateBDAccess()

        Set objWMIService = Nothing
        Set colItems = Nothing
        '
        '**** Fin du script
        WScript.Quit

        Function Display( strComputer )

        Dim objWMIServ, colonnesItem

        On Error Resume Next
        Set objWMIServ = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
        If Err.Number Then
        WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _
        " " & Err.Description
        Err.Clear
        Syntax
        End If

        On Error GoTo 0
        Set colonnesItem = objWMIServ.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48)

        For Each objItem in colonnesItem
        Aff(cnt) = strComputer
        Aff0(cnt) = Mid(objItem.Name,1,1)
        If ( objItem.Size > 0 ) Then
        Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) )
        End If
        If (objItem.FreeSpace > 0) Then
        Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) )
        End If
        If ( (objItem.Size > 0) And (objItem.FreeSpace > 0) ) Then
        Aff3(cnt) = ( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & vbCrLf
        End If
        cnt = cnt + 1
        Redim Preserve Aff(cnt)
        ReDim Preserve Aff0(cnt)
        Redim Preserve Aff1(cnt)
        Redim Preserve Aff2(cnt)
        Redim Preserve Aff3(cnt)
        Next

        Set objWMIServ = Nothing
        Set colonnesItem = Nothing

        End Function

        ' ----------------------------------------------------------

        Function CreateHTML(filename)
        Dim ts
        Set ts = oFS.CreateTextFile(filename,True)

        ts.writeline "<HTML>"
        ts.WriteLine "<BODY>"
        ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>"
        ts.writeline "<table border=1 cellspacing=1 width=100%>"
        ts.writeline "<tr>"
        ts.writeline "<td width=20%>"
        ts.writeline "<p align=center><b>Name</b></td>"
        ts.writeline "<td width=20%>"
        ts.writeline "<p align=center><b>Drive</b></td>"
        ts.writeline "<td width=20%>"
        ts.writeline "<p align=center><b>Size</b></td>"
        ts.writeline "<td width=20%>"
        ts.writeline "<p align=center><b>Free</b></td>"
        ts.writeline "<td width=20%>"
        ts.writeline "<p align=center><b>% Free</b></td>"
        ts.writeline "</tr>"
        ts.writeline "<tr>"
        For i = 0 to cnt
        ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>"
        ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>"
        ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>"
        ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>"
        ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>"
        ts.writeline "</tr>"
        Next

        ts.writeline "</table>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<p> </p>"
        ts.writeline "<b><font size=2>Remanier le 21 juin 2005 lol</font></b>"
        ts.WriteLine "</CENTER></BODY>"
        ts.WriteLine "</HTML>"
        ts.close

        Set ts = Nothing

        End Function

        ' ----------------------------------------------------------

        Function CreateBDAccess()

        Dim Fichier, Disque, AccessFichier

        'Nom du fichier MSAccess
        'Fichier = InputBox(msgTexte, "Saisie du fichier à créer", "C:\MaBase.MDB")
        Fichier="BdDisque.mdb"
        'Établie un objet ADO pour déplacement dans objet
        Set objConnection = CreateObject("ADODB.Connection")
        Set objRecordset = CreateObject("ADODB.Recordset")
        'Lecteur courant ?
        Disque = Mid(Fichier, 1, 2)
        'Capture du lecteur
        Set oLecteur = oFS.GetDrive("C:")
        'Si lecteur prêt ?
        If (oLecteur.IsReady) Then
        'msgbox Fichier
        'Si le fichier existe ?
        If (oFS.FileExists(Fichier)) Then
        'msgbox "toto"
        'Accroche le fichier sur le moteur de recherche
        AccesFichier = MoteurDeRecherche & Fichier
        'Ouverture du fichier access

        'msgbox AccesFichier
        ObjConnection.Open AccesFichier
        wscript.echo err

        'Création d'un ensemble "recordset" sur toutes les données souhaitées
        objRecordset.Open "SELECT * FROM EspaceDisque" , objConnection, adOpenStatic, adLockOptimistic
        End If
        End If

        For i = 0 To (cnt -1)
        objRecordset.AddNew
        objRecordset("Nom") = Aff(i)
        objRecordset("Drive") = Aff0(i)
        objRecordset("Size") = Aff1(i)
        objRecordset("Free") = Aff2(i)
        objRecordset("Pourcentage") = Aff3(i)
        objRecordset("Date") = Date()

        objRecordset.Update
        Next

        objConnection.Close

        Set objConnection = Nothing
        Set objRecordset = Nothing
        Set oFS = Nothing
        Set oLecteur = Nothing

        End Function
        1. Salut,

          bon, je ne vais pas tout recopier tout le code encore ...

          Pour adresser le fichier, dans l'énoncé de mon message précédent,
          [ligne 170], il faut modifier l'instruction suivante :

          Fichier = InputBox(msgTexte, "Saisie du fichier à créer", "C:\MaBase.MDB")

          par la ligne suivante :

          Fichier="C:\BdDisque.mdb"

          et pour adresser la table, il faut modifier l'instruction suivante:
          [ligne 187]

          objRecordset.Open "SELECT * FROM EspaceDisk" , objConnection, adOpenStatic, adLockOptimistic

          par la ligne suivante:

          objRecordset.Open "SELECT * FROM EspaceDisque" , objConnection, adOpenStatic, adLockOptimistic

          et enfin pour adresser les champs, il faut modifier les lignes :
          [lignes 194-198]

          objRecordset("Ordinateur") = Aff(i)
          objRecordset("Lecteur") = Aff0(i)
          objRecordset("Grandeur") = Aff1(i)
          objRecordset("Disponible") = Aff2(i)
          objRecordset("Ratio") = Aff3(i)

          pour

          objRecordset("Nom") = Aff(i)
          objRecordset("Drive") = Aff0(i)
          objRecordset("Size") = Aff1(i)
          objRecordset("Free") = Aff2(i)
          objRecordset("Pourcentage") = Aff3(i)
          objRecordset("Date") = Date()

          et tu auras exactement ce que tu cherche !!!

          Lupin
          1. En faite avec le code ci dessus ca creer Une nouvelle Base de donnée si j ai bien compris biensur desolé je debute lool

            En faite MOi ma base est deja creé sous Access elle est Nommé "BdDisque" avec une Table Applée "EspaceDisque" ET qui contient les champs suivants:
            "Nom"
            "Drive"
            "Size"
            "Free"
            "Pourcentage"
            "Date "
            Moi je souhaite UNIQUEMENT ENVOYER LES DONNEES RENVOYe PAR MON SCRIPT dans ma base de données que j ai deja creé sur Access . Il faut que a chaque lancement du script les données soit memorise dans cette base voila
            ALors si Lupin ou quelqu un pouvait m aider se serais sympa merci
            voici mon script qui fonctionne deja pour la recuperation des données:

            '----------------------------------------------------------
            ' Script de description des Hdd dans une page web
            ' ----------------------------------------------------------
            Dim cnt
            dim Aff()
            dim Aff0()
            dim Aff1()
            dim Aff2()
            dim Aff3()

            cnt = 0
            Redim Aff(cnt)
            Redim Aff0(cnt)
            Redim Aff1(cnt)
            Redim Aff2(cnt)
            Redim Aff3(cnt)

            Select Case WScript.Arguments.Count
            Case 0
            ' Default if none specified is local computer (".")
            Set objWMIService = GetObject( "winmgmts://./root/cimv2" )
            Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
            For Each objItem in colItems
            strComputer = objItem.Name
            Next
            Case 1
            ' Command line parameter can either be a computer name
            ' or "/?" to request online help
            strComputer = Wscript.Arguments(0)
            if InStr( strComputer, "?" ) > 0 Then Syntax
            Case Else
            ' Maximum is 1 command line parameter
            Syntax
            End Select

            Display( strComputer )

            Function Display( strComputer )
            On Error Resume Next
            Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
            If Err.Number Then
            WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _
            " " & Err.Description
            Err.Clear
            Syntax
            End If
            On Error GoTo 0
            ' Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where MediaType=12",,48)
            Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48)
            For Each objItem in colItems
            Aff(cnt) = strComputer
            Aff0(cnt) = objItem.Name & vbTab
            Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) )
            Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) )
            Aff3(cnt) = CStr( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & _
            vbCrLf
            cnt = cnt + 1
            Redim Preserve Aff(cnt)
            Redim Preserve Aff0(cnt)
            Redim Preserve Aff1(cnt)
            Redim Preserve Aff2(cnt)
            Redim Preserve Aff3(cnt)
            Next
            End Function

            ' ----------------------------------------------------------
            Dim fso
            Set fso = WScript.CreateObject("Scripting.FileSystemObject")
            DestHtml = "hd.html"
            CreateHTML DestHTML

            Sub CreateHTML(filename)
            dim ts
            set ts=fso.CreateTextFile(filename,true)
            ts.writeline "<HTML>"
            ts.WriteLine "<BODY>"
            ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>"
            ts.writeline "<table border=1 cellspacing=1 width=100%>"
            ts.writeline "<tr>"
            ts.writeline "<td width=20%>"
            ts.writeline "<p align=center><b>Name</b></td>"
            ts.writeline "<td width=20%>"
            ts.writeline "<p align=center><b>Drive</b></td>"
            ts.writeline "<td width=20%>"
            ts.writeline "<p align=center><b>Size</b></td>"
            ts.writeline "<td width=20%>"
            ts.writeline "<p align=center><b>Free</b></td>"
            ts.writeline "<td width=20%>"
            ts.writeline "<p align=center><b>% Free</b></td>"
            ts.writeline "</tr>"
            ts.writeline "<tr>"
            for i = 0 to cnt
            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>"
            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>"
            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>"
            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>"
            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>"
            ts.writeline "</tr>"
            next

            ts.writeline "</table>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<p> </p>"
            ts.writeline "<b><font size=2>Fait le 14 juin 2005 par Mohax qui pète un plomb lol</font></b>"
            ts.WriteLine "</CENTER></BODY>"
            ts.WriteLine "</HTML>"
            ts.close
            End Sub
            1. Salut Mister lameche,

              je n'ai pas autant de temps que toi pour coder à ce que je vois,
              toutefois, j'ai moi aussi rafiné le code ...

              je vais regarder le tien mais en attendant, tu peux regarder
              celui-ci, chez moi il vire impect :-)

              et oui, effectivement tu verras que j'ai corrigé beaucoup de choses.
              serait-ce "shumarrer" ?

              '-------------------------------------------------------------------------
              ' Script de description des Hdd dans une page web et/ou une base Access
              ' ------------------------------------------------------------------------
              '
              '*************************************************************************
              'Constante d'accèss au fichier *.mdb
              '
              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, objConnection, objRecordset
              '*************************************************************************
              '
                Dim objWMIService, colItems, DestHtml 
                'Créer un objet fichier
                Set oFS = WScript.CreateObject("Scripting.FileSystemObject") 
              '********-----------------------------------------------------************
              
                Dim cnt 
                Dim Aff() 
                Dim Aff0() 
                Dim Aff1() 
                Dim Aff2() 
                Dim Aff3() 
              
                cnt = 0 
                Redim Aff(cnt) 
                Redim Aff0(cnt) 
                Redim Aff1(cnt) 
                Redim Aff2(cnt) 
                Redim Aff3(cnt) 
              
                DestHtml = "hd.html" 
                
                Select Case WScript.Arguments.Count 
                  Case 0 
                      ' Default if none specified is local computer (".") 
                      Set objWMIService = GetObject( "winmgmts://./root/cimv2" ) 
                      Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 ) 
                      For Each objItem in colItems 
                        strComputer = objItem.Name 
                      Next 
                  Case 1 
                      ' Command line parameter can either be a computer name 
                      ' or "/?" to request online help 
                      strComputer = Wscript.Arguments(0) 
                      if InStr( strComputer, "?" ) > 0 Then Syntax 
                  Case Else 
                      ' Maximum is 1 command line parameter 
                      Syntax 
                End Select 
              
                Display (strComputer) 
                CreateHTML (DestHTML )
                CreateBDAccess()
                
                Set objWMIService = Nothing
                Set colItems = Nothing
              '
              '**** Fin du script
                WScript.Quit
                 
              
              Function Display( strComputer ) 
              
                Dim objWMIServ, colonnesItem
              
                On Error Resume Next 
                Set objWMIServ = GetObject( "winmgmts://" & strComputer & "/root/cimv2" ) 
                If Err.Number Then 
                  WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _ 
                    " " & Err.Description 
                  Err.Clear 
                  Syntax 
                End If 
                
                On Error GoTo 0 
                Set colonnesItem = objWMIServ.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48) 
                
                For Each objItem in colonnesItem 
                  Aff(cnt) = strComputer
                  Aff0(cnt) = Mid(objItem.Name,1,1)
                  If ( objItem.Size > 0 ) Then
                    Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) )
                  End If
                  If (objItem.FreeSpace > 0) Then
                    Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) ) 
                  End If
                  If ( (objItem.Size > 0) And (objItem.FreeSpace > 0) ) Then
                    Aff3(cnt) = ( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & vbCrLf
                  End If
                  cnt = cnt + 1 
                  Redim Preserve Aff(cnt) 
                  ReDim Preserve Aff0(cnt) 
                  Redim Preserve Aff1(cnt) 
                  Redim Preserve Aff2(cnt) 
                  Redim Preserve Aff3(cnt) 
                Next
              
                Set objWMIServ = Nothing
                Set colonnesItem = Nothing
                
              End Function 
              
              ' ---------------------------------------------------------- 
              
              Function CreateHTML(filename) 
                Dim ts 
                Set ts = oFS.CreateTextFile(filename,True) 
              
                ts.writeline "<HTML>" 
                ts.WriteLine "<BODY>" 
                ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>" 
                ts.writeline "<table border=1 cellspacing=1 width=100%>" 
                ts.writeline "<tr>" 
                ts.writeline "<td width=20%>" 
                ts.writeline "<p align=center><b>Name</b></td>" 
                ts.writeline "<td width=20%>" 
                ts.writeline "<p align=center><b>Drive</b></td>" 
                ts.writeline "<td width=20%>" 
                ts.writeline "<p align=center><b>Size</b></td>" 
                ts.writeline "<td width=20%>" 
                ts.writeline "<p align=center><b>Free</b></td>" 
                ts.writeline "<td width=20%>" 
                ts.writeline "<p align=center><b>% Free</b></td>" 
                ts.writeline "</tr>" 
                ts.writeline "<tr>" 
              
                For i = 0 to cnt 
                  ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>" 
                  ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>" 
                  ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>" 
                  ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>" 
                  ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>" 
                  ts.writeline "</tr>" 
                Next 
              
                ts.writeline "</table>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<p> </p>" 
                ts.writeline "<b><font size=2>Remanier le 21 juin 2005 lol</font></b>" 
                ts.WriteLine "</CENTER></BODY>" 
                ts.WriteLine "</HTML>" 
                ts.close
                
                Set ts = Nothing
                
              End Function
              
              ' ---------------------------------------------------------- 
              
              Function CreateBDAccess()
              
                Dim Fichier, Disque, AccessFichier
              
                'Nom du fichier MSAccess
                Fichier = InputBox(msgTexte, "Saisie du fichier à créer", "C:\MaBase.MDB")
                'Établie un objet ADO pour déplacement dans objet
                Set objConnection = CreateObject("ADODB.Connection") 
                Set objRecordset = CreateObject("ADODB.Recordset") 
                'Lecteur courant ?
                Disque = Mid(Fichier, 1, 2) 
                'Capture du lecteur
                Set oLecteur = oFS.GetDrive(Disque) 
                'Si lecteur prêt ?
                If (oLecteur.IsReady) Then
                  'Si le fichier existe ?
                  If (oFS.FileExists(Fichier)) Then
                    'Accroche le fichier sur le moteur de recherche
                    AccesFichier = MoteurDeRecherche & Fichier
                    'Ouverture du fichier access 
                    objConnection.Open AccesFichier 
                    'Création d'un ensemble "recordset" sur toutes les données souhaitées
                    objRecordset.Open "SELECT * FROM EspaceDisk" , objConnection, adOpenStatic, adLockOptimistic 
                  End If
                End If
              
                For i = 0 To (cnt -1)
                  objRecordset.AddNew
                  
                  objRecordset("Ordinateur") = Aff(i)
                  objRecordset("Lecteur") = Aff0(i)
                  objRecordset("Grandeur") = Aff1(i)
                  objRecordset("Disponible") = Aff2(i)
                  objRecordset("Ratio") = Aff3(i)
              
                  objRecordset.Update 
                Next
                
                objConnection.Close
                
                Set objConnection = Nothing
                Set objRecordset = Nothing
                Set oFS = Nothing
                Set oLecteur = Nothing
                  
              End Function
              


              Je crois qu'il n'y as pas de mauvaise manière, il suffit d'obtenir
              le bon résultat, l'erreur que j'avais occure lorsque l'une des partitions d'un disque quelconque n'est pas formatté. Or c'est
              pour cela que j'ai rajouté un contrôle sur la lecture.

              Il y a encore du travail, mais ça tient la route :-)

              Lupin
              1. Voila MIster Lupin en faisant un copier coller du code ci dessous ya de l avancement mais j ai encore bloqué alors si tu peux debloquer la situation se serai cool merci

                '----------------------------------------------------------
                ' Script de description des Hdd dans une page web
                ' ----------------------------------------------------------
                '
                '*************************************************************************
                'Constante d'accèss au fichier *.mdb

                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, Disque, Fichier, AccesFichier

                Dim objConnection
                Dim objRecordset
                'Dim AccesFichier
                '*************************************************************************

                '********-----------------------------------------------------************
                Dim fso
                Set fso = WScript.CreateObject("Scripting.FileSystemObject")
                DestHtml = "hd.html" '********-----------------------------------------------------************

                Dim cnt
                dim Aff()
                dim Aff0()
                dim Aff1()
                dim Aff2()
                dim Aff3()

                cnt = 0
                Redim Aff(cnt)
                Redim Aff0(cnt)
                Redim Aff1(cnt)
                Redim Aff2(cnt)
                Redim Aff3(cnt)

                Select Case WScript.Arguments.Count
                Case 0
                ' Default if none specified is local computer (".")
                Set objWMIService = GetObject( "winmgmts://./root/cimv2" )
                Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
                For Each objItem in colItems
                strComputer = objItem.Name
                Next
                Case 1
                ' Command line parameter can either be a computer name
                ' or "/?" to request online help
                strComputer = Wscript.Arguments(0)
                if InStr( strComputer, "?" ) > 0 Then Syntax
                Case Else
                ' Maximum is 1 command line parameter
                Syntax
                End Select

                Display (strComputer)
                CreateHTML (DestHTML )
                CreateBDAccess()

                Function Display( strComputer )

                On Error Resume Next
                Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
                If Err.Number Then
                WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _
                " " & Err.Description
                Err.Clear
                Syntax
                End If
                On Error GoTo 0
                ' Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where MediaType=12",,48)
                Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48)
                For Each objItem in colItems
                Aff(cnt) = strComputer
                Aff0(cnt) = objItem.Name & vbTab
                Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) )
                Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) )
                Aff3(cnt) = CStr( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & _
                vbCrLf
                cnt = cnt + 1
                Redim Preserve Aff(cnt)
                ReDim Preserve Aff0(cnt)
                Redim Preserve Aff1(cnt)
                Redim Preserve Aff2(cnt)
                Redim Preserve Aff3(cnt)
                Next
                End Function

                ' ----------------------------------------------------------

                Function CreateHTML(filename)
                dim ts
                set ts=fso.CreateTextFile(filename,true)

                ts.writeline "<HTML>"
                ts.WriteLine "<BODY>"
                ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>"
                ts.writeline "<table border=1 cellspacing=1 width=100%>"
                ts.writeline "<tr>"
                ts.writeline "<td width=20%>"
                ts.writeline "<p align=center><b>Name</b></td>"
                ts.writeline "<td width=20%>"
                ts.writeline "<p align=center><b>Drive</b></td>"
                ts.writeline "<td width=20%>"
                ts.writeline "<p align=center><b>Size</b></td>"
                ts.writeline "<td width=20%>"
                ts.writeline "<p align=center><b>Free</b></td>"
                ts.writeline "<td width=20%>"
                ts.writeline "<p align=center><b>% Free</b></td>"
                ts.writeline "</tr>"
                ts.writeline "<tr>"
                for i = 0 to cnt
                ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>"
                ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>"
                ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>"
                ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>"
                ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>"
                ts.writeline "</tr>"
                next

                ts.writeline "</table>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<p> </p>"
                ts.writeline "<b><font size=2>Fait le 14 juin 2005 par Mohax qui pète un plomb lol</font></b>"
                ts.WriteLine "</CENTER></BODY>"
                ts.WriteLine "</HTML>"
                ts.close
                End Function

                Function CreateBDAccess()

                'Nom du fichier MSAccess
                Fichier = InputBox(msgTexte, "Saisie du fichier à créer", "F:\BdDisque.MDB")
                'Établie un objet ADO pour déplacement dans objet
                Set objConnection = CreateObject("ADODB.Connection")
                Set objRecordset = CreateObject("ADODB.Recordset")
                'Créer un objet fichier pour atteindre le fichier mdb
                Set oFS = CreateObject("Scripting.FileSystemObject")
                'Lecteur courant ?
                Disque = Mid(Fichier, 1, 2)
                'Capture du lecteur
                Set oLecteur = oFS.GetDrive(Disque)
                'Lecteur prêt ?
                If (oLecteur.IsReady) Then
                'Accroche le fichier sur le moteur de recherche
                AccesFichier = MoteurDeRecherche & Fichier
                'Ouverture du fichier access
                objConnection.Open AccesFichier
                'Création d'un ensemble "recordset" sur les données souhaité
                objRecordset.Open "SELECT * FROM EspaceDisque" , objConnection, adOpenStatic, adLockOptimistic
                End If

                For i = 0 to cnt
                objRecordset.AddNew

                objRecordset("Champs1") = Aff(i)
                objRecordset("Champs2") = Aff0(i)
                objRecordset("Champs3") = Aff1(i)
                objRecordset("Champs4") = Aff2(i)
                objRecordset("Champs5") = Aff3(i)

                objRecordset.Update
                Next
                End Function
                1. je me suis appercu que dans ton script tu a defini 2 fois la variable suivante :

                  Dim oFS, Disque, Fichier, AccesFichier
                  Dim AccesFichier

                  tu vois que AccesFichier est defini deux fois et moi mon compilateur ma signal une erreur a se niveau !!!

                  Qu en pense Tu ? le problem peut venir de la je pense !!!
                  1. Salut Mister Lupin et encore merci pour pour ton aide et desolé pour le derrangement occasioné!

                    Donc en faite je vois que en Vbscript tu va aussi Shumarer Moi j en suis encore au Karting comme tu as pu le voir looool!!!

                    En je voulais savoir si tu avais tester Mon code sans le modifier tu t es apercu qu il marchait rassure moi loool !!!

                    En faite Moi j ai crée une base de donnée Appelée BdDisque.mdb et dans cette base de donnée j ai crée une table que j ai nomé EspaceDisque et qui contient les champs suivants: Nom
                    Drive
                    Size
                    Free
                    Pourcentage
                    Date

                    Comme tu as pu l appercevoir cela correspond en faite aux données recuperées par mon script !! Ma base de Donnée se trouve dans mon disque F:\
                    Alors dis moi si ce que j ai fais est correcte deja dans un premier temps pour que je ne continu pas dans la n importe quoi lol

                    Moi quand je compile le script avec tes modifs j ai une erreur au niveau de la ligne 19 colonne 5 mais bon avec VBs Factory il te signale des erreurs a un endroit mais la faute est soit 10 ligne en dessous ou au dessus donc le compilateur n est pas de très bonne qualité c est ca qui me pose problem dans mon apprentissage de VBscript:
                    1. re:

                      le compilateur me plante sur les lignes ou l'instruction
                      CStr est localisé, je soupçonne un problème de typage :
                      Message : Utilisation non autorisée de Null: 'CStr'

                      mais pour le reste ça va, ton fichier mdb doit être créer avec
                      le bon nom de table et les bons noms de champs.
                      1. Bonjour,

                        Voilà, j'ai tenté de comprendre un peu ton code et j'ai adapté,
                        toutefois le compilateur me plante sur des lignes de ta partie,
                        alors je n'ai pu valider la partie que j'ai rajouté ...

                        '---------------------------------------------------------- 
                        ' Script de description des Hdd dans une page web 
                        ' ---------------------------------------------------------- 
                        '
                        '*************************************************************************
                        'Constante d'accèss au fichier *.mdb
                        
                        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, Disque, Fichier, AccesFichier 
                        
                        Dim objConnection 
                        Dim objRecordset 
                        Dim AccesFichier 
                        '*************************************************************************
                        
                        '********-----------------------------------------------------************
                        Dim fso 
                        Set fso = WScript.CreateObject("Scripting.FileSystemObject") 
                        DestHtml = "hd.html" 
                        '********-----------------------------------------------------************
                        
                        Dim cnt 
                        dim Aff() 
                        dim Aff0() 
                        dim Aff1() 
                        dim Aff2() 
                        dim Aff3() 
                        
                        cnt = 0 
                        Redim Aff(cnt) 
                        Redim Aff0(cnt) 
                        Redim Aff1(cnt) 
                        Redim Aff2(cnt) 
                        Redim Aff3(cnt) 
                          
                          Select Case WScript.Arguments.Count 
                            Case 0 
                                ' Default if none specified is local computer (".") 
                                Set objWMIService = GetObject( "winmgmts://./root/cimv2" ) 
                                Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 ) 
                                For Each objItem in colItems 
                                  strComputer = objItem.Name 
                                Next 
                            Case 1 
                                ' Command line parameter can either be a computer name 
                                ' or "/?" to request online help 
                                strComputer = Wscript.Arguments(0) 
                                if InStr( strComputer, "?" ) > 0 Then Syntax 
                            Case Else 
                                ' Maximum is 1 command line parameter 
                                Syntax 
                          End Select 
                        
                          Display (strComputer) 
                          CreateHTML (DestHTML )
                          CreateBDAccess()
                          
                        Function Display( strComputer ) 
                        
                          On Error Resume Next 
                          Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" ) 
                          If Err.Number Then 
                            WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _ 
                              " " & Err.Description 
                            Err.Clear 
                            Syntax 
                          End If 
                          On Error GoTo 0 
                        ' Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where MediaType=12",,48) 
                          Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48) 
                          For Each objItem in colItems 
                            Aff(cnt) = strComputer 
                            Aff0(cnt) = objItem.Name & vbTab 
                            Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) ) 
                            Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) ) 
                            Aff3(cnt) = CStr( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & _ 
                            vbCrLf 
                            cnt = cnt + 1 
                            Redim Preserve Aff(cnt) 
                            ReDim Preserve Aff0(cnt) 
                            Redim Preserve Aff1(cnt) 
                            Redim Preserve Aff2(cnt) 
                            Redim Preserve Aff3(cnt) 
                          Next 
                        End Function 
                        
                        ' ---------------------------------------------------------- 
                        
                        Function CreateHTML(filename) 
                          dim ts 
                          set ts=fso.CreateTextFile(filename,true) 
                        
                          ts.writeline "<HTML>" 
                          ts.WriteLine "<BODY>" 
                          ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>" 
                          ts.writeline "<table border=1 cellspacing=1 width=100%>" 
                          ts.writeline "<tr>" 
                          ts.writeline "<td width=20%>" 
                          ts.writeline "<p align=center><b>Name</b></td>" 
                          ts.writeline "<td width=20%>" 
                          ts.writeline "<p align=center><b>Drive</b></td>" 
                          ts.writeline "<td width=20%>" 
                          ts.writeline "<p align=center><b>Size</b></td>" 
                          ts.writeline "<td width=20%>" 
                          ts.writeline "<p align=center><b>Free</b></td>" 
                          ts.writeline "<td width=20%>" 
                          ts.writeline "<p align=center><b>% Free</b></td>" 
                          ts.writeline "</tr>" 
                          ts.writeline "<tr>" 
                        
                          for i = 0 to cnt 
                            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>" 
                            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>" 
                            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>" 
                            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>" 
                            ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>" 
                            ts.writeline "</tr>" 
                          next 
                        
                          ts.writeline "</table>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<p> </p>" 
                          ts.writeline "<b><font size=2>Fait le 14 juin 2005 par Mohax qui pète un plomb lol</font></b>" 
                          ts.WriteLine "</CENTER></BODY>" 
                          ts.WriteLine "</HTML>" 
                          ts.close
                        End Function
                        
                        Function CreateBDAccess()
                        
                          'Nom du fichier MSAccess
                          Fichier = InputBox(msgTexte, "Saisie du fichier à créer", "C:\MaBase.MDB")
                          'Établie un objet ADO pour déplacement dans objet
                          Set objConnection = CreateObject("ADODB.Connection") 
                          Set objRecordset = CreateObject("ADODB.Recordset") 
                          'Créer un objet fichier pour atteindre le fichier mdb
                          Set oFS = CreateObject("Scripting.FileSystemObject") 
                          'Lecteur courant ?
                          Disque = Mid(Fichier, 1, 2) 
                          'Capture du lecteur
                          Set oLecteur = oFS.GetDrive(Disque) 
                          'Lecteur prêt ?
                          If (oLecteur.IsReady) Then
                            'Accroche le fichier sur le moteur de recherche
                            AccesFichier = MoteurDeRecherche & Fichier
                            'Ouverture du fichier access 
                            objConnection.Open AccesFichier 
                            'Création d'un ensemble "recordset" sur les données souhaité
                            objRecordset.Open "SELECT * FROM MaTable" , objConnection, adOpenStatic, adLockOptimistic 
                          End If
                        
                          For i = 0 to cnt 
                            objRecordset.AddNew
                            
                            objRecordset("Champs1") = Aff(i)
                            objRecordset("Champs2") = Aff0(i)
                            objRecordset("Champs3") = Aff1(i)
                            objRecordset("Champs4") = Aff2(i)
                            objRecordset("Champs5") = Aff3(i)
                        
                            objRecordset.Update 
                          Next 
                        End Function
                        


                        Lupin
                        1. EN faites voici Mon scrupt Qui me permet de recuperer l espace restant de mes disque ! et jeveux que a chaque lancement de se script ca ma stock les données concernant les disque dans une base de donnée type ACESS.Alors est ce que qu un peu me dire comment envoyer ses données a ma base Merci d avnce a toutes et a tous!!!

                          '----------------------------------------------------------
                          ' Script de description des Hdd dans une page web
                          ' ----------------------------------------------------------
                          Dim cnt
                          dim Aff()
                          dim Aff0()
                          dim Aff1()
                          dim Aff2()
                          dim Aff3()

                          cnt = 0
                          Redim Aff(cnt)
                          Redim Aff0(cnt)
                          Redim Aff1(cnt)
                          Redim Aff2(cnt)
                          Redim Aff3(cnt)

                          Select Case WScript.Arguments.Count
                          Case 0
                          ' Default if none specified is local computer (".")
                          Set objWMIService = GetObject( "winmgmts://./root/cimv2" )
                          Set colItems = objWMIService.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
                          For Each objItem in colItems
                          strComputer = objItem.Name
                          Next
                          Case 1
                          ' Command line parameter can either be a computer name
                          ' or "/?" to request online help
                          strComputer = Wscript.Arguments(0)
                          if InStr( strComputer, "?" ) > 0 Then Syntax
                          Case Else
                          ' Maximum is 1 command line parameter
                          Syntax
                          End Select

                          Display( strComputer )

                          Function Display( strComputer )
                          On Error Resume Next
                          Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
                          If Err.Number Then
                          WScript.Echo vbCrLf & "Error # " & CStr( Err.Number ) & _
                          " " & Err.Description
                          Err.Clear
                          Syntax
                          End If
                          On Error GoTo 0
                          ' Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where MediaType=12",,48)
                          Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk where DriveType=3",,48)
                          For Each objItem in colItems
                          Aff(cnt) = strComputer
                          Aff0(cnt) = objItem.Name & vbTab
                          Aff1(cnt) = CStr( Int( 0.5 + ( objItem.Size / 1073741824 ) ) )
                          Aff2(cnt) = CStr( Int( 0.5 + ( objItem.FreeSpace / 1073741824 ) ) )
                          Aff3(cnt) = CStr( Int( 0.5 + ( 100 * objItem.FreeSpace / objItem.Size) ) ) & _
                          vbCrLf
                          cnt = cnt + 1
                          Redim Preserve Aff(cnt)
                          Redim Preserve Aff0(cnt)
                          Redim Preserve Aff1(cnt)
                          Redim Preserve Aff2(cnt)
                          Redim Preserve Aff3(cnt)
                          Next
                          End Function

                          ' ----------------------------------------------------------
                          Dim fso
                          Set fso = WScript.CreateObject("Scripting.FileSystemObject")
                          DestHtml = "hd.html"
                          CreateHTML DestHTML

                          Sub CreateHTML(filename)
                          dim ts
                          set ts=fso.CreateTextFile(filename,true)
                          ts.writeline "<HTML>"
                          ts.WriteLine "<BODY>"
                          ts.WriteLine "<b><CENTER><H3>Affiche les informations des HDD</H3></b>"
                          ts.writeline "<table border=1 cellspacing=1 width=100%>"
                          ts.writeline "<tr>"
                          ts.writeline "<td width=20%>"
                          ts.writeline "<p align=center><b>Name</b></td>"
                          ts.writeline "<td width=20%>"
                          ts.writeline "<p align=center><b>Drive</b></td>"
                          ts.writeline "<td width=20%>"
                          ts.writeline "<p align=center><b>Size</b></td>"
                          ts.writeline "<td width=20%>"
                          ts.writeline "<p align=center><b>Free</b></td>"
                          ts.writeline "<td width=20%>"
                          ts.writeline "<p align=center><b>% Free</b></td>"
                          ts.writeline "</tr>"
                          ts.writeline "<tr>"
                          for i = 0 to cnt
                          ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff(i) & "</font></b></td>"
                          ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff0(i) & "</font></b></td>"
                          ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff1(i) & "</font></b></td>"
                          ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff2(i) & "</font></b></td>"
                          ts.writeline "<td width=20%><p align=center><b><font color=#FF0000>" & Aff3(i) & "</font></b></td>"
                          ts.writeline "</tr>"
                          next

                          ts.writeline "</table>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<p> </p>"
                          ts.writeline "<b><font size=2>Fait le 14 juin 2005 par Mohax qui pète un plomb lol</font></b>"
                          ts.WriteLine "</CENTER></BODY>"
                          ts.WriteLine "</HTML>"
                          ts.close
                          End Sub
                          1. Salut,

                            Bon, j'ai toujours du mal a laisser trainer une adresse courriel dans un forum, j'ai du par le passer détruire une adresse pour cause de spam. Enfin, tu peux m'écrire ici à pierre_charpentier2000 arobas yahoo point ca.

                            @+
                            1. tu ne manques pas d'un courage certain
                            2. @randomre:

                              celle-la est du pour être détruite de toute focon !

                              Lupin
                          2. Salut,

                            Voici un exemple pour te connecter sur access. Ceci est un
                            script fonctionnel non raffiné.

                            ' 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.: Microsoft Word )"
                            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

                            '
                            '=========================================================================================================
                            '85
                            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("Type Fichier") = oFichier.Type
                            objRecordset("Grandeur") = oFichier.Size
                            objRecordset("Chemin d'accès") = oFichier.Path
                            objRecordset("Date Créé") = oFichier.DateCreated
                            ' objRecordset("Date Accédé") = oFichier.DateLastAccessed
                            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

                            ' objRecordset.Close
                            objConnection.Close

                            WScript.Echo "Fin de traitement :-) "

                            End Sub
                            '179
                            '==========================================================================
                            '
                            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("Type Fichier") = oFichier.Type
                            objRecordset("Grandeur") = oFichier.Size
                            objRecordset("Chemin d'accès") = oFichier.Path
                            objRecordset("Date Créé") = oFichier.DateCreated
                            ' objRecordset("Date Accédé") = oFichier.DateLastAccessed
                            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
                            '
                            '==========================================================================
                            '

                            Lupin
                            1. salut merci de t etre donné la peine de repondre c est gentil
                              j ai un petit probleme ton code est long est complexe un peu alors di mois si il etai possible de te contacter par mail diretcment pour te demander quelques explication

                              merci a bientot peut etre