Accueil > > > EJECTER CLÉ USB OU CD
EJECTER CLÉ USB OU CD
Information sur la source
Description
Ces fonctions permettent simplement d’éjecter vos CD ou clés USB en douceur. Il faut cependant qu'ils ne soient pas utilisés par une application.
Source
- Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Integer, ByVal dwShareMode As Integer, ByVal lpSecurityAttributes As IntPtr, ByVal dwCreationDisposition As Integer, ByVal dwFlagsAndAttributes As Integer, ByVal hTemplateFile As IntPtr) As IntPtr
- Private Declare Function DeviceIoControl Lib "kernel32" (ByVal hDevice As IntPtr, ByVal dwIoControlCode As Integer, ByVal lpInBuffer As IntPtr, ByVal nInBufferSize As Integer, ByVal lpOutBuffer As IntPtr, ByVal nOutBufferSize As Integer, ByRef lpBytesReturned As Integer, ByVal lpOverlapped As IntPtr) As Integer
- Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As IntPtr) As Integer
- Private Const INVALID_HANDLE_VALUE As Integer = -1
- Private Const OPEN_EXISTING As Integer = 3
- Private Const GENERIC_READ As Integer = &H80000000
- Private Const GENERIC_WRITE As Integer = &H40000000
- Private Const IOCTL_STORAGE_EJECT_MEDIA As Integer = 2967560
-
- Private Sub EjectCDRom(ByVal driveletter As String)
- Dim path As String = "\\.\" + driveletter
- If Not path.EndsWith(":") Then path = path + ":"
- Dim hDrive As IntPtr = CreateFile(path, GENERIC_READ Or GENERIC_WRITE, 0, IntPtr.Zero, OPEN_EXISTING, 0, IntPtr.Zero)
- If CInt(hDrive) = INVALID_HANDLE_VALUE Then Throw New IO.IOException("Could not open drive " + driveletter)
- Dim dummy As Integer
- DeviceIoControl(hDrive, IOCTL_STORAGE_EJECT_MEDIA, IntPtr.Zero, 0, IntPtr.Zero, 0, dummy, IntPtr.Zero)
- CloseHandle(hDrive)
- End Sub
-
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- EjectCDRom("d")
- End Sub
- End Class
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Integer, ByVal dwShareMode As Integer, ByVal lpSecurityAttributes As IntPtr, ByVal dwCreationDisposition As Integer, ByVal dwFlagsAndAttributes As Integer, ByVal hTemplateFile As IntPtr) As IntPtr
Private Declare Function DeviceIoControl Lib "kernel32" (ByVal hDevice As IntPtr, ByVal dwIoControlCode As Integer, ByVal lpInBuffer As IntPtr, ByVal nInBufferSize As Integer, ByVal lpOutBuffer As IntPtr, ByVal nOutBufferSize As Integer, ByRef lpBytesReturned As Integer, ByVal lpOverlapped As IntPtr) As Integer
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As IntPtr) As Integer
Private Const INVALID_HANDLE_VALUE As Integer = -1
Private Const OPEN_EXISTING As Integer = 3
Private Const GENERIC_READ As Integer = &H80000000
Private Const GENERIC_WRITE As Integer = &H40000000
Private Const IOCTL_STORAGE_EJECT_MEDIA As Integer = 2967560
Private Sub EjectCDRom(ByVal driveletter As String)
Dim path As String = "\\.\" + driveletter
If Not path.EndsWith(":") Then path = path + ":"
Dim hDrive As IntPtr = CreateFile(path, GENERIC_READ Or GENERIC_WRITE, 0, IntPtr.Zero, OPEN_EXISTING, 0, IntPtr.Zero)
If CInt(hDrive) = INVALID_HANDLE_VALUE Then Throw New IO.IOException("Could not open drive " + driveletter)
Dim dummy As Integer
DeviceIoControl(hDrive, IOCTL_STORAGE_EJECT_MEDIA, IntPtr.Zero, 0, IntPtr.Zero, 0, dummy, IntPtr.Zero)
CloseHandle(hDrive)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
EjectCDRom("d")
End Sub
End Class
Conclusion
Enfin un source compatible avec Windows 7 !
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Détection automatique clé USB ou CD-ROM pour analyse antivirus en mode exclusif [ par vaclar ]
Bonjour,Voilà, je chercher un programme permettant de détecter une clé USB ou un CD que l'on introduit dans le PC afin de l'analyser par un antivirus.
Désactiver la Form apparaissant où windows demande quelle action on veut effectuer quand on insère une clé usb [ par fauve ]
Salut, Je ne sais pas si j'ai été clair dans mon sujet. Mais je voudrais que quand je connecte un périphérique (par exemple : clé usb) que la
clé usb [ par fubugirl ]
bjr! je suis une novice, je requiers votre aide éclairée: j'a iacheté une clé usb sécurisée, je pensais l'utiliser pour mon travail pour ke si je la p
Exécutable sur clé USB [ par enzosp ]
Bonjour,pouvez vous m'indiquer comme installer monprogramme en VB6 (.exe) sur une clé usb sans avoir besoin d'intaller les fichiers .dll ou autres sur
débloquer une clé USB protégée en écriture [ par hartoun ]
Bonsoir TLM,J' ai une clé USB qui n'a jamais été utilisée avec un mot de passe et que je n'arrive plus à utiliser correctement: je peux l'ouvrir sans
Chemin de fichier (rapport clé usb) [ par DiabloduNord ]
Bonjour tout le monde,J'ai un soucis, le problème est que j'ai créer une application pour clé usb avec des logiciels portable (une interface simpliste
blocage pc apres insertion clé usb [ par maxlarabie ]
mon pc bloque des insertion clé usb.j'ai win xp sp2.j'ai debranché tous les periph,j'ai changé d'emplacements,j'aiessayé la clé sur un autre pc.elle m
Copie fichier sur clé USB [ par Marko007 ]
Bonjour,comment vérifier lors d'une copie d'un fichier vers un clé USB (Lettre D:\). Que celle-ci n'est pas présente ?J'utilise System.IO.File.Copy po
|
Derniers Blogs
SIMULER FACILEMENT L'ENVOI DE MAILSIMULER FACILEMENT L'ENVOI DE MAIL par JeremyJeanson
il m'a été demandé, à plusieurs reprises, comment je faisais pour simuler l'envoi de mail lors de mes démos de Workflow Foundation. Ma solution est plutôt simple : j'utilise la configuration par défaut du SmtpClient et j'oriente les mails vers un dossier ...
Cliquez pour lire la suite de l'article par JeremyJeanson VOTEZ POUR LE TOP 10 DES INFLUENCEURS SHAREPOINT FRANCOPHONES !VOTEZ POUR LE TOP 10 DES INFLUENCEURS SHAREPOINT FRANCOPHONES ! par Patrick Guimonet
Si ce n'est déjà fait (comme plus de 600 personnes déjà), il est encore temps de voter pour le concours TOP 10 des influenceurs SharePoint francophones ! Il est organisé par harmon.ie et accessible ici : http://harmon.ie/top-...
Cliquez pour lire la suite de l'article par Patrick Guimonet [CONF'SHAREPOINT] DERNIER RAPPEL ! :-)[CONF'SHAREPOINT] DERNIER RAPPEL ! :-) par Patrick Guimonet
La Conf'SharePoint en chiffres c'est : 3 jours de SharePoint ! 4 parcours et 60 sessions 17 partenaires représentant toutes les fac...
Cliquez pour lire la suite de l'article par Patrick Guimonet [ #SHAREPOINT 2013 ] LES MODèLES DE SITES STANDARDS.[ #SHAREPOINT 2013 ] LES MODèLES DE SITES STANDARDS. par Patrick Guimonet
C'est un point peu mis en avant mais SharePoint 2013 a été l'occasion de remettre de l'ordre dans les modèles de sites. Tout d'abord, un certain nombre de modèles ont été tout simplement rendus obsolètes (cf. Fonctionnalités déco...
Cliquez pour lire la suite de l'article par Patrick Guimonet
Forum
RE : DEAMANDE RE : DEAMANDE par bassomarosa
Cliquez pour lire la suite par bassomarosa
Logiciels
Easy-Planning (4.5.0.11)EASY-PLANNING (4.5.0.11)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté a... Cliquez pour télécharger Easy-Planning CVEasy (3.1.0.51)CVEASY (3.1.0.51)PHMSD-CVEasy est un logiciel d'aide à la rédaction de CV d'une simplicité déconcertante.
PHMSD-C... Cliquez pour télécharger CVEasy LettresFaciles 2011 (8.6.0.31)LETTRESFACILES 2011 (8.6.0.31)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011 sDEVIS-FACTURES vlPRO (8.4.2.62)SDEVIS-FACTURES VLPRO (8.4.2.62)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO Devis-Factures PHMSD (2.1.0.11)DEVIS-FACTURES PHMSD (2.1.0.11)Configuration minimale
Nécessite Windows™ 2000, XP, Windows 7, 8, Vista (Service Pack à... Cliquez pour télécharger Devis-Factures PHMSD
|