[vbscript] type mismatch ...

type mismatch ... [vbscript] - VB/VBA/VBS - Programmation

Marsh Posté le 29-10-2002 à 09:14:41    

j'ai ca
 

Code :
  1. Set DiskSet = GetObject("winmgmts:{impersonationLevel=impersonate}" ).ExecQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3" )
  2. for each Disk in DiskSet
  3. 'n1 = Round((Disk.FreeSpace/Disk.Size)*100,2)
  4. n1 = Round(Disk.FreeSpace/1048576,2)
  5.        WScript.Echo "Drive " + Disk.Name + " has " + n1 + " MB free left"
  6. Next

 
 
et à la ligne d'affichage j'ai un type mismatch pout n1 ...  :heink:  
un idée? merci

Reply

Marsh Posté le 29-10-2002 à 09:14:41   

Reply

Marsh Posté le 29-10-2002 à 09:19:37    

EDIT : mal réveillé ce matin...


Message édité par _Mac_ le 29-10-2002 à 09:21:59
Reply

Marsh Posté le 29-10-2002 à 09:21:35    

C'est le calcul de n1 qui plante ou juste l'affichage ?


Message édité par _Mac_ le 29-10-2002 à 09:22:10
Reply

Marsh Posté le 29-10-2002 à 09:25:28    

c'est l'affichage
 
à partir du moment où je fais un calcul sur Disk.FreeSpace ou Disk.Size (les vars wmi) ca foire :/

Reply

Marsh Posté le 29-10-2002 à 09:30:14    

Ca donne quoi si tu fais juste :
 

Code :
  1. n1 = Disk.FreeSpace


 
?

Reply

Marsh Posté le 29-10-2002 à 09:31:31    

ca fonctionne  :benetton:
 
et quand je fais  
n1 = Disk.FreeSpace/1048576
bah re  
 
C:\Documents and Settings\Jeannot\Desktop\disk.vbs(6, 8) Microsoft VBScript runt
ime error: Type mismatch: '[string: "Drive C: has "]'


Message édité par Profil supprimé le 29-10-2002 à 09:32:50
Reply

Marsh Posté le 29-10-2002 à 09:35:22    

Je pense à un truc : l'opérateur de concaténation en VB, c'est & pas +, non ??? Mets des & à la place des + dans ton WScript.Echo

Reply

Marsh Posté le 29-10-2002 à 09:43:10    

woa!
fallait y penser, ca marche!
 
 
Drive C: has 883.05 MB free
Drive D: has 19348.2 MB free
Drive I: has 56910.53 MB free
 
 
chapeau bas  :jap: et merci  :)


Message édité par Profil supprimé le 29-10-2002 à 10:18:42
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed