Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
731 connectés 

  FORUM HardWare.fr
  Programmation

  [VB6-VBSCRIPT] FileSystemObject .. probleme avec les tailles dispos

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VB6-VBSCRIPT] FileSystemObject .. probleme avec les tailles dispos

n°30789
_GrEgY_
Posté le 11-05-2001 à 15:28:15  profilanswer
 

petit problème... je dois copier des fichiers se trouvant sur CD-rom et les recopier sur disque dur... pour cela je crée un ptite fct permettant de voir s'il y a assez de place.. tout marche tres bien tant que je copie un répertoire particulier (e:\mon rep ...) la ou ca ne va plus c'est qd je dois recopier tout le CD (e:\)  je crois qu'il n'arrives pas à prendre la racine du CD comme étant un réperoire
 
Public Function EnoughFreeSpace(ByVal Source As String, ByVal Destination As String) As Boolean
Dim FSO As New FileSystemObject
Dim SourceDir As Folder
Dim sourceSize  As Long
Dim destSize  As Long
Dim DestDir As Folder
Dim DestDrv As Drive
Set SourceDir = FSO.GetFolder(Source)
Set DestDir = FSO.GetFolder(Destination)
Set DestDrv = DestDir.Drive
SourceSize = FormatNumber(SourceDir.Size, 0)--> problème
 
DestSize = FormatNumber(DestDrv.FreeSpace, 0)  
If sourceSize < destSize Then
    EnoughFreeSpace = True
Else
    EnoughFreeSpace = False
End If
End Function
 
Je sais pas si quelqu'un a déjà utilisé ces fcts??
 
faut -il que je convertisse la racine comme étant un lecteur??

 

[edit]--Message édité par _GrEgY_--[/edit]

mood
Publicité
Posté le 11-05-2001 à 15:28:15  profilanswer
 

n°30797
Guru
Posté le 11-05-2001 à 15:46:27  profilanswer
 

Il s'avère que lorsque la source est un disque la propriété size de l'objet folder n'est pas définie. Par contre la propriété IsRootFolder a pour valeur TRUE et dans ce cas la il faut interroger les propriétés TotalSize et FreeSpace de l'objet Drive et faire une soustraction.
 
Le code deviendrait donc :  
 

Code :
  1. Public Function EnoughFreeSpace(ByVal Source As String, ByVal Destination As String) As Boolean
  2.    Dim FSO As New FileSystemObject
  3.    Dim SourceDir As Folder
  4.    Dim sourceSize  As Long
  5.    Dim destSize  As Long
  6.    Dim DestDir As Folder
  7.    Dim DestDrv As Drive
  8.    Set SourceDir = FSO.GetFolder(Source)
  9.    Set DestDir = FSO.GetFolder(Destination)
  10.    Set DestDrv = DestDir.Drive
  11.    If SourceDir.IsRootFolder Then
  12.       SourceSize = FormatNumber(SourceDir.Drive.TotalSize - SourceDir.Drive.FreeSpace, 0)
  13.    Else
  14.       SourceSize = FormatNumber(SourceDir.Size, 0)
  15.    End If
  16.    DestSize = FormatNumber(DestDrv.FreeSpace, 0) 
  17.    If sourceSize < destSize Then
  18.       EnoughFreeSpace = True
  19.    Else
  20.       EnoughFreeSpace = False
  21.    End If
  22. End Function

n°30975
_GrEgY_
Posté le 11-05-2001 à 20:16:57  profilanswer
 

ok je vais essayer ce code
 
un grand merci!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [VB6-VBSCRIPT] FileSystemObject .. probleme avec les tailles dispos

 

Sujets relatifs
Problème d'accès au un répertoire avec ApacheProbleme de shell !!!!! Help dans la soirée svp ....
[VB6] deployement encore et tjs[VB6] icones..
[VB6 / Access 2000] Comment convertir une appli Access 2000 en VB6recherche d'un caractere avec expression reguliere en VbScript
[VB6] Pb lecture d'une valeur de type DWORD dans la base de registreVB6 est ce que ça existe ???
[VB6] Datalist[perl] problème avec le module Sys::Syslog
Plus de sujets relatifs à : [VB6-VBSCRIPT] FileSystemObject .. probleme avec les tailles dispos


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR