Renommer un lecteur virtuel - SetVolumeLabel_ dans l'impasse

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Renommer un lecteur virtuel - SetVolumeLabel_ dans l'impasse

Message par Ar-S »

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 : Tout sélectionner


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 ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels