Hit-Parade .VB Research Center . Compteur
Accueil ~  Code ~  Programmes ~  Api ~  Forum ~  Cours ~  Livres ~  Quiz ~  Annuaire
~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période.
Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes.

~ Rechercher ~

  

~ Annuaire VB ~
 Rechercher un site :
  

~ Partenaires ~

Fonction SetCurrentDirectory

Declare Function SetCurrentDirectory Lib "kernel32" Alias "SetCurrentDirectoryA" ( _
                 
ByVal lpPathName As String) As Long
Versions :
. Windows 95/98 : Oui
. Windows NT : A partir de 3.1
. Windows 2000/XP : Oui

Description :
Cette fonction sert à modifier le répertoire courant sur lequel est positionné l'application.
lpPathName est le chemin complet du répertoire à créer.
La valeur Vrai est retournée par la fonction si la modification s'est correctement effectuée, sinon False.

Exemple d'utilisation :

' Déclaration des fonctions API utilisées.
Private Declare Function CreateDirectory Lib "kernel32" Alias "CreateDirectoryA" ( _
               
ByVal lpPathName As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long
Private Declare Function
SetCurrentDirectory Lib "kernel32" Alias "SetCurrentDirectoryA" ( _
               
ByVal lpPathName As String) As Long
Private Declare Function
GetCurrentDirectory Lib "kernel32" Alias "GetCurrentDirectoryA" ( _
               
ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long

' Déclaration du type utilisé.
Private Type SECURITY_ATTRIBUTES
    nLength
As Long
   
lpSecurityDescriptor As Long
   
bInheritHandle As Long
End Type

Public Sub
PrepareRep(stRep As String)
' Cette procédure permet de créer le chemin complet donné en paramètre.
Dim lgDepRep As Long, stDepRep As String
Dim
lgWhile As Long
' Type Sécurité de la base de registres.
Dim lpAttr As SECURITY_ATTRIBUTES

lgDepRep = 512
stDepRep = Space$(511)
' Mémorise le répertoire courant.
lgWhile = GetCurrentDirectory(lgDepRep, stDepRep)
stDepRep = Left$(stDepRep, lgWhile)

' Affecte les valeurs par défaut des attributs de sécurité.
lpAttr.nLength = 50
lpAttr.lpSecurityDescriptor = 0
lpAttr.bInheritHandle =
True

' Initialise la fin de la chaîne.
If Right$(stRep, 1) <> "\" Then stRep = stRep & "\"
' Repère le départ du premier répertoire.
lgWhile = InStr(4, stRep, "\")
Do While (lgWhile > 0)
   
' Vérifie l'existence du répertoire en se positionnant à l'intérieur.
   
lgDepRep = SetCurrentDirectory(Left$(stRep, lgWhile))
   
If lgDepRep = 0 Then
       
' Crée le répertoire.
       
CreateDirectory Left$(stRep, lgWhile), lpAttr
   
End If
   
lgWhile = InStr(lgWhile + 1, stRep, "\")
Loop
' Retourne sur le répertoire courant d'origine.
SetCurrentDirectory stDepRep
End Sub

Retour à la liste des API

Visual Basic Research Center - (c) 2000/2002 -  Webmaster : docvb (chez) free (point) fr