Bonjour,
Nous avons beaucoup d'utilisateurs qui oublient ses Flash usb branchés ou des CD/DVD insérés ou des cartes mémoires dans les lecteurs de carte usb dans des lieux publiques(cybercafés) .Donc je me demandais de faire un VBSCRIPT qui fonctionne a la l'arrêt de windows qui peut détecter si n'importe quels Flash USB ou CD/DVD insérés sur un PC a été oublié et il alerte l'utilisateur s'il trouve une des ces choses la oubliées. ce script fonctionne trés bien.
Je voudrais faire et mettre à jour ce VBSCRIPT contournant le gpedit.msc qui fait ceci :
- L'autocopie de lui-même une fois dans ce Dossier C:\WINDOWS\system32\GroupPolicy\Machine \Scripts\Shutdown
- Ajoute la clé correcte dans la base de registre pour que ce script fonctionne a la l'arrêt de windows.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\W indows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0

Merci pour votre Réponse !

Voila le code source de CheckUSB-CDlogout.vbs
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
'-----------------CheckUSB-CDlogout.vbs---------------------
'Main
checkUSB
checkCD
wscript.quit
 
Sub checkUSB
strComputer = "."
On Error Resume Next
Set WshShell = CreateObject("Wscript.Shell")
beep = chr(007)
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_DiskDrive WHERE InterfaceType='USB'",,48)
intCount = 0
For Each drive In colItems
If drive.mediaType <> "" Then
intCount = intCount + 1
End If
Next
If intCount > 0 Then
WshShell.Run "cmd /c @echo " & beep, 0
MsgBox "Don't forget to remove your Flash drive!",16,"Flash drive Check !"
End If
End Sub
 
Sub checkCD
Const CDROM = 4
strComputer = "."
Set WshShell = CreateObject("Wscript.Shell")
beep = chr(007)
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_CDROMDrive")
For Each objItem in colItems
'Eject if a CD is left in the drive
If objItem.MediaLoaded = True Then
WshShell.Run "cmd /c @echo " & beep, 0
MsgBox "Please remove the CD/DVD from the drive and click OK to continue shutdown.",16,"Remove the CD/DVD !"
Dim WMP: Set WMP = CreateObject("WMPlayer.ocx")
Dim colCDROMS: Set colCDROMS = WMP.CDROMCollection
 
If colCDROMS.Count > -1 Then
For i = 0 to colCDROMS.Count - 1
colCDROMS.Item(i).Eject
Next
End If
 
'Use the below line instead of above to eject if empty
'If objItem.MediaLoaded = False Then
 
Eject objItem.Drive & "\"
End If
Next
End sub
 
Sub Eject(CDROM)
Dim ssfDrives
ssfDrives = 17
CreateObject("Shell.Application")_
.Namespace(ssfDrives).ParseName(CDROM).InvokeVerb("E&ject")
End Sub