IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Installation, Déploiement et Sécurité VB Discussion :

[Lecteur] Lettre du lecteur de CD


Sujet :

Installation, Déploiement et Sécurité VB

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 7
    Points : 6
    Points
    6
    Par défaut [Lecteur] Lettre du lecteur de CD
    Bonsoir,

    Mon projet se terminant, j'en arrive à des probs de distribution...
    Voilà :
    L'exécutable utilise des images, vidéos, sons, que je compte laisser sur CD.
    Mon prob c'est que tout les lecteurs de CD ne porte pas la même lettre.. .
    Je me demande donc comment faire?
    J'imagine bien qu'il y a moyen, mais comme je n'ai jamais été confronté à ce prob, je patauge.
    Peut-être faut il essayer avec toutes les lettres???

    Merci de votre aide.

    Bonne soirée

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 12
    Points : 15
    Points
    15
    Par défaut
    Voila de quoi lister les CDROMS :

    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
     
    Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
    Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
    Private Const DRIVE_CDROM   As Long = &H5
     
    Public Function ListCDROMs() As String
    Dim sDrives As String
    Dim sDrive As String
    Dim nCnt As Long
     
        nCnt = 0
        sDrives = Space(255)
        sDrives = Left$(sDrives, GetLogicalDriveStrings(255, ByVal sDrives))
        While InStr(sDrives, "\")
            sDrive = Left$(sDrives, InStr(sDrives, "\"))
            If GetDriveType(sDrive) = DRIVE_CDROM Then
                'List1.AddItem "(CDRom) " & sDrive
                'Form2.Combo1(3).AddItem sDrive
                ListCDROMs = sDrive
                nCnt = nCnt + 1
            End If
            sDrives = Mid$(sDrives, Len(sDrive) + 2)
        Wend
     
    End Function
    Tu n'as plus qu'a tester l'existance du fichier que tu cherches, vu que tu connais la lettre du(des) lecteur(s) CD.[/code]

  3. #3
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Sans appel de DLL
    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
     Function ReturnDriveType(typeDrive As Integer)
        ' 1:Amovible  2:Fixe  3:Réseau  4:CD-ROM  5:Disque RAM
        Dim fs, d, x As Integer, lecteur As String
        Set fs = CreateObject("Scripting.FileSystemObject")
        Do
            x = x + 1
            lecteur = Chr(66 + x)
            If Not fs.DriveExists(lecteur) Then Exit Do
            Set d = fs.getdrive(lecteur)
            If d.DriveType = typeDrive Then
                tmp = lecteur
                Exit Do
            End If
        Loop
            ReturnDriveType = tmp
    End Function

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Dark Vader, j'aurais voulu avoir un complément.

    J'ai pas encore essayé ton code, mais si j'ai bien compris (peut-être pas assez étudier ton code!) ton code me retourne la lettre du lecteur de CD?
    Mon problème est que si il y a deux (ou plus) lecteurs, et que mon projet appelle un fichier contenu sur un CD, coment faire pour être sur que le projet trouve bien le bon lecteur??

    Faut-il tester toutes les lettres de lecteur trouver?

    Merci de tes lumières et si je me permettait de te demander qqs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ' qqs comentaires - merci
    dans ton code afin de bien tout comprendre.

    Merci beaucoup déja de vos premières réponses. J'attends une éventuelle deuxième série.

    Bonne soirée
    @ plus

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 12
    Points : 15
    Points
    15
    Par défaut
    boah je pense que mon exemple est explicite et répond a ce que tu demandes, non ?

  6. #6
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Le code de Karlkox est effectivement correct
    sinon, désolé, j'ai fait un peu vite
    car la fonction aurait du être en fait
    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
    Function ReturnDriveType(typeDrive As Integer)
        ' 1:Amovible  2:Fixe  3:Réseau  4:CD-ROM  5:Disque RAM
        Dim fs, d, x As Integer, lecteur As String
        Set fs = CreateObject("Scripting.FileSystemObject")
        Do
            x = x + 1
            lecteur = Chr(66 + x)
            If Not fs.DriveExists(lecteur) Then Exit Do
            Set d = fs.getdrive(lecteur)
            If d.DriveType = typeDrive Then
                tmp = tmp & lecteur
            End If
        Loop
            ReturnDriveType = tmp
    End Function
    et la formulation matricielle de la réponse serait plus appropriée que sous sa forme 'string' pour une exploitation du résultat.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Désolé KarlKox, mais je m'était plus interessé au code de Dark-Vader.......
    Je pense que je devrai y arriver, mais j'ai tellement peut de temps à l'heure actuelle que j'en suis à compter les minutes! Donc je préfère demander qqs précisions. Remarque, j'imagine bien que tout le monde courre après le temps.
    Donc merci de m'avoir consacré qqs minutes. Je tacherai de les mettre à profit.

    @ plus

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/09/2010, 20h09
  2. [Lecteurs de cartes]Modifier les lettres de lecteur
    Par al1_24 dans le forum Windows XP
    Réponses: 2
    Dernier message: 30/12/2005, 11h48
  3. SPTI - Détection des lecteurs cd - Lettres de lecteurs
    Par Millenod dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 17/07/2005, 21h58
  4. [C#] Détecter la lettre du lecteur CD-ROM
    Par patvdb dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/05/2004, 11h44
  5. Lettre Drive lecteur de CDRom
    Par titicurio dans le forum C++Builder
    Réponses: 4
    Dernier message: 18/09/2003, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo