PureBasic

Forums PureBasic
Nous sommes le Mar 15/Oct/2019 18:00

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 1 message ] 
Auteur Message
 Sujet du message: Renommer un lecteur virtuel - SetVolumeLabel_ dans l'impasse
MessagePosté: Lun 06/Aoû/2012 21:32 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 09/Oct/2005 16:51
Messages: 8767
Je crée quelques procedures pour windows utilisant les API, je cherche à renommer un Lecteur virtuel.
Un volume classique (c:\ par exemple) se renomme facilement avec l'API SetVolumeLabel_.
En revanche, lorsque je crée un lecteur virtuel, celui ci prend le nom du volume ou se trouve la cible.
Si par exemple Je veux attribuer K: à D:\codesPB\ et que D: se nomme "DATAS", le lecteur K va prendre le nom de DATAS aussi.
Je souhaiterai donc modifier ce nom de volume mais SetVolumeLabel_ ne semble pas fonctionner avec un lecteur virtuel

Code:

Procedure AddVirtualDrive(Lettre.s, Chemin.s, Nom_du_volume.s = "VolVirtuel")
; Ar-S
  Protected.q Resultat, Resultat1
  Lettre = UCase(Lettre)
 
  ; Quelques vérifs s'imposent
  Resultat1 = FileSize(Lettre + ":\")
  If Resultat1 = -1       ; Si la lettre n'est pas déjà utilisée
       
    Resultat = FileSize(Chemin)
    If Resultat = -2      ; Si la cible est bien un répertoire
      ;Création du volume virtuel
     DefineDosDevice_(0,Lettre + ":",Chemin)

      ; Changement du nom du volume
      SetVolumeLabel_(Lettre + ":\", Nom_du_volume) ; Ne marche pas !
     
      ProcedureReturn 1
    Else
      MessageRequester( " Erreur", " La cible du lecteur virtuel doit être un dossier !" , #PB_MessageRequester_Ok|#MB_ICONEXCLAMATION   ) 
      ProcedureReturn 0
    EndIf
   
  Else
    MessageRequester( " Erreur", " La lettre '"+ Lettre + "' semble être déjà utilisée !" , #PB_MessageRequester_Ok|#MB_ICONEXCLAMATION   ) 
    ProcedureReturn 0
  EndIf
 
EndProcedure

AddVirtualDrive("K", "E:\un chemin existant\", "CODES")

; Pour virer le lecteur créé
; DefineDosDevice_(#DDD_REMOVE_DEFINITION ,"K" + ":",0)


Si l'un de vous a la solution je le remercie d'avance.

_________________
~~~~Règles du forum ~~~~
.: Ar-S :. Tour + portable W10 x64 PB 5.4x / 5.6x
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
RESIZER GOLD : Mon logiciel de redimensionnement par lot 100% PB


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 1 message ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye