Programme sur lecteur cd

broli - 26 août 2001 à 18:08
 broli - 27 août 2001 à 14:33
salut
j ai cree un petit programme
que j ai voulus graver
j ai changer la source de mon chemin ex " c:\... en d:"
et sa marche pas il reconner pas le chemin

help!!!!!!

comment faire

ps-- et aussi comment fair pour qu il sache de quel
lecteur il et ex si je lui m'est le chemin d:
est ce que sa va marcher si le lecteur e: ou autre

merci

3 réponses

-------------------------------
Réponse au message :
-------------------------------

salut
j ai cree un petit programme
que j ai voulus graver
j ai changer la source de mon chemin ex " c:\... en d:"
et sa marche pas il reconner pas le chemin

help!!!!!!

comment faire

ps-- et aussi comment fair pour qu il sache de quel
lecteur il et ex si je lui m'est le chemin d:
est ce que sa va marcher si le lecteur e: ou autre

merci
0
Ci-dessous, tu trouveras une fonction qui retourne l'identifiant du lecteur CD-ROM du poste (D,E ou autre)
Cette fonction utilise les fonctions API GetLogicalDriveStrings et GetDriveType

J'espere que ca va t'aider un peu !

Si tu as un soucis, n'hesites pas...

Public Declare Function GetLogicalDriveStrings Lib "kernel32" Alias _
"GetLogicalDriveStringsA" (ByVal nBufferLength As Long, _
ByVal lpBuffer As String) As Long

Public Declare Function GetDriveType Lib "kernel32" Alias _
"GetDriveTypeA" (ByVal nDrive As String) As Long

Public Function gf_LecteurCDROM() As String

Dim ln_Result As Long
Dim ln_DriveType As Long
Dim ls_AllDrives As String
Dim ls_JustOneDrive As String
Dim ln_Pos As Integer
Dim ls_FirstCDROM As String

Dim ls_Fichier As String
Dim ls_CurrentSub As String
Dim lo_fs As Object
Dim lb_FileExist As Boolean
Dim ln_longueur As Integer

On Error GoTo errorManagement


'initialisation
ls_CurrentSub = "gf_LecteurCDROM"

lb_FileExist = False
ls_AllDrives = Space$(64)

'recupere dans une chaine l'ensemble des lecteurs present sur le poste
ln_Result = GetLogicalDriveStrings(Len(ls_AllDrives), ls_AllDrives)
ls_AllDrives = Left$(ls_AllDrives, ln_Result)

'Pour chacun de ces lecteurs
Do

ln_Pos = InStr(ls_AllDrives, Chr$(0))

If ln_Pos Then

'recupere le lecteur en tete de la chaine
ls_JustOneDrive = Left$(ls_AllDrives, ln_Pos)

'suppression de ce lecteur de la chaine
ls_AllDrives = Mid$(ls_AllDrives, ln_Pos + 1, Len(ls_AllDrives))

'recupere le type du lecteur
ln_DriveType = GetDriveType(ls_JustOneDrive)

'si le lecteur est de type CD-ROM
If (ln_DriveType = C_DRIVE_CDROM) Then

ls_FirstCDROM = Trim$(UCase$(ls_JustOneDrive))
ln_longueur = Len(ls_FirstCDROM)
ls_FirstCDROM = Left(ls_FirstCDROM, ln_longueur - 1)

'Verifie si le CD-Rom de l'application est present
'dans le lecteur. Pour cela, on teste l'existence du
'fichier unc.ini sur ce lecteur

ls_Fichier = ls_FirstCDROM & "toto.ini"

Set lo_fs = CreateObject("Scripting.FileSystemObject")
If Not (lo_fs.FileExists(ls_Fichier)) Then
lb_FileExist = False
Else
lb_FileExist = True
gf_LecteurCDROM = Left(ls_FirstCDROM, 1)
End If

End If

End If
Loop Until ls_AllDrives "" Or lb_FileExist True

'Message d'information si le cd-rom n'est pas dans le lecteur
If (lb_FileExist = False) Then
MsgBox "Please insert the CD-ROM into the CD-ROM drive", vbInformation
gf_LecteurCDROM = 0
End If

Exit Function

errorManagement:
Call gs_ErrorTreatment(ls_CurrentSub)
End Function
0
merci

beaucoup
a+
0
Rejoignez-nous