Les Snippets

Connexion

Récupérer la lettre des lecteurs.

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 26/08/2007 20:20:42 et initié par deck_bsd [Liste]
Date de mise à jour : 09/11/2007 14:45:25
Vue : 4047
Catégorie(s) : API
Langage sélectionné : C
Langages dispo pour ce code :
- C
- VB6, VBA
- VB 2005
- Java
- Voir tous les langages pour ce code snippet



Langage : C
Date ajout : 26/08/2007
Posté par deck_bsd [Liste]
DateMAJ : 27/08/2007
BOOL __stdcall GetLetterOfAllDisk(CHAR cLetter[],BYTE bySize,BYTE * byRequired){
     DWORD dwBitsMask;
     CHAR cDrv = 'A';
     
     if(byRequired == NULL)return FALSE;
     *byRequired = 0;
     if(!(dwBitsMask = GetLogicalDrives())) return FALSE;
     do{           
         if(dwBitsMask & 1)
         {
            cLetter[*byRequired] = cDrv;
            (*byRequired)++;
            if(*byRequired > (bySize-1))break;
         }
         cDrv++;
     }while(dwBitsMask >>= 1);
     
     while(dwBitsMask >>= 1)
     {           
         if(dwBitsMask & 1)
         (*byRequired)++;
     }
     if(*byRequired > bySize)return FALSE;
     else return TRUE;
}
Version 2, plus légère mais sans controle, appelant responsable de passer un buffer de 26 octets mini.
Retourne le nombre de volumes inscrits.
DWORD __stdcall bnLettresVolumes(BYTE *pvols26)
{
  DWORD dwBitsMask, n = 0;
  BYTE v = 'A';
  if(!(dwBitsMask = GetLogicalDrives())) return 0;
  do {
    if(dwBitsMask & 1) pvols26[n++] = v;
    v++;
  } while(dwBitsMask >>= 1);
  return n;
}
Remarque :
Cette petite fonction permet de récupérer la lettre de chaque lecteur dans un tableau de CHAR. Si le tableau est trop petit pour acceuilir toutes les lettres, la taille requise pour celui ci est donnée par la variable byRequired passée en paramètre et la fonction renvoie FALSE.

Code API win32 donc pas oublier #include  :D

Snippets en rapport avec : Lettre, Api, Drive, Lecteur, Logicaldrive



Codes sources en rapport avec : Lettre, Api, Drive, Lecteur, Logicaldrive

{C# / C#.NET} USB DETECTOR
C'est un tout petit code qui montre comment être notifié lorsqu'un périphérique USB est connecté (ou...

{Visual Basic, VB6, VB.NET, VB 2005} DRIVEVIEW ==> ARBORESCENCE AFFICHANT LES LECTEURS LOGIQUES ET PHYSIQUES
Salut, ce code (UserControl) est basé sur un treeview, il affiche les lecteurs logiques et physiques...

{JAVA / J2EE} LECTEUR VIDEO UTILISANT L'API JMF
J'ai utilise un code que j'ai trouve sur ce site et je l'ai modifie. J'ai rajoute plusieurs boutons ...

{Visual Basic, VB6, VB.NET, VB 2005} COMMON DIALOG ET VOISINAGE RÉSEAU
Ce code permet l'ouverture des boîtes de connexion et de fermeture d'un lecteur réseau ...

{Visual Basic, VB6, VB.NET, VB 2005} LOCALISER UN LECTEUR CD-ROM
Comment trouver la lettre du lecteur CD-ROM ? Faites un Formulaire avec une DriveListBox ( mettez...

{C / C++ / C++.NET} HMEDIAV2 LECTEUR (WIN32)
C'est un Lecteur Audio-Video qui utilise l'API "vfw" pour lire et controler le video et l'API FM...

{Flash} LECTEUR POUR WEBRADIO
Lecteur pour flux Shoutcast (webradio) n'utilise pas de script php ce qui fais que les ressources co...

{C / C++ / C++.NET} XVID DIVX .AVI JOUEUR
MS c/c++ joue presque tous les formats videos a condition d avoir les codec installer! ...

{Visual Basic, VB6, VB.NET, VB 2005} LECTEUR DE MUSIQUE ET LECTEUR AUDIO
Lecteur audio extra lite. Je pense que j'ai réussi a corriger tous les bugs. J'attend vos commentair...

{C# / C#.NET} CHANGER LA RESOLUTION DE VOTRE ECRAN, UTILISATION DES API WINDOWS (USER32.DLL)
Cette class permet de changer la resolution de votre ecran, avec les valeurs de largeur et hauteur v...