Bonjour,

Le code si-dessous, à la base pour Windev, est-il éventuellement utilisable en webdev ?

Bien à vous !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
une solution possible en utilisant WMI : 
 
// énumération des lettres de lecteurs USB avec média présent par J.P - janvier 2011 
sList est une chaîne 
oScript est un objet Automation "MSScriptControl.ScriptControl" 
// chaine qui représente le code VBSCRIPT 
sScriptVBS est une chaîne = [ 
Function ChercheLettresLecteursUSB() 
' ce script renvoie une liste des lettres de lecteurs USB avec média présent ( normalement  ) 
Dim objWMI, colDiskDrives, colDiskPartitions,colLogicalDisks,sInfo 
 
 
strComputer = "." ' use "." for local computer 
Set objWMI = GetObject("winmgmts:" _ 
& "{impersonationLevel=impersonate}!\\" & strComputer _ 
& "\root\cimv2") 
Set colDiskDrives = objWMI.ExecQuery _ 
("Select DeviceID from Win32_DiskDrive WHERE InterfaceType='USB'") 
 
For Each objDiskDrive In colDiskDrives 
strDeviceID = objDiskDrive.DeviceID 
strEscapedDeviceID = Replace(strDeviceID, "\", "\\") 
 
Set colDiskPartitions = objWMI.ExecQuery _ 
("ASSOCIATORS OF {Win32_DiskDrive.DeviceID=""" _ 
& strEscapedDeviceID & """} WHERE " _ 
& "AssocClass = Win32_DiskDriveToDiskPartition") 
 
For Each objDiskPartition In colDiskPartitions 
 
Set colLogicalDisks = objWMI.ExecQuery _ 
("ASSOCIATORS OF {Win32_DiskPartition.DeviceID=""" & _ 
objDiskPartition.DeviceID & """} WHERE " & _ 
"AssocClass = Win32_LogicalDiskToPartition") 
 
For Each objLogicalDisk In colLogicalDisks 
sInfo = sinfo & objLogicalDisk.DeviceID & Chr(13) & Chr(10) 
Next 
Next 
Next 
ChercheLettresLecteursUSB = sinfo 
 
End Function 
] 
 
 
QUAND EXCEPTION DANS 
oScript>>Language("VBScript") 
oScript>>Reset 
oScript>>AddCode(sScriptVBS) 
oScript>>Timeout(-1) //pas de timeout 
sList = oScript>>Run("ChercheLettresLecteursUSB") //Appel 
// le resultat est dans sList 
Info("les médias USB se trouvent en : " + RC + sList) 
 
FAIRE 
Erreur("Erreur execution WMI",ExceptionInfo(errInfo)) 
ExceptionActive() 
RENVOYER "Erreur WMI" 
FIN