des rép. systèmes Win.
Fonction permettant de récupérer la valeur des répertoires users ou system, du genre pour un user :
c:\documents and settings\administrateur
ou le répertoire système de windows.
des rép. systèmes Win.
Fonction permettant de récupérer la valeur des répertoires users ou system, du genre pour un user :
c:\documents and settings\administrateur
ou le répertoire système de windows.
Utilise l'API:
Attention! cette API n'est dispo que sur Win2000 or later
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Private Declare Function GetUserProfileDirectory Lib "userenv.dll" Alias "GetUserProfileDirectoryA" (ByVal hToken As Long, ByVal lpProfileDir As String, lpcchSize As Long) As Boolean
Un exemple avec VScript :
il y a d'autres solutions mais c'est une possibilité
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim WSHShell, DesktopPath Set WSHShell = CreateObject("WScript.Shell") ' Read desktop path using WshSpecialFolders object DesktopPath = WSHShell.SpecialFolders("Desktop")
Vous vous posez une question, la réponse est peut-être ici :
Toutes les FAQs VB
Les Cours et Tutoriels VB6/VBScript
Les Sources VB6
Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension
ajouter une référence à windows script host object model (wshom.ocx)
l'exemple de code suivant parcours tous les élément récupérables
pour en récupérer un particulier, par exemple mesdocuments
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Private Sub Command1_Click() Dim MonShell As WshShell, chemSpecial As Variant Set MonShell = New WshShell For Each chemSpecial In MonShell.SpecialFolders Debug.Print chemSpecial Next End Sub
chemSpecial = MonShell .SpecialFolders("MyDocuments")
pour récupérer les répertoires systèmes, utiliser la méthode GetSpecialForlder du filesystemobject
Voilà pour le répertoire SYSTEM :
@+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" ( _ ByVal lpBuffer As String, _ ByVal nSize As Long) As Long Public Function SystemDirectory() As String ' Retourne le chemin du répertoire système de windows Dim stTmp As String, lgTmp As Long stTmp = Space$(250) lgTmp = 251 Call GetSystemDirectory(stTmp, lgTmp) SystemDirectory = Split(stTmp, Chr$(0))(0) End Function
Bon j'y vais de ma petite réponse aussi alors...
Voilà ce que j'ai trouvé il y a quelque temps :
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
26
27
28
29
30 Function GetSpecialFolder(FolderName) ' si on met as string ca marche pas ?????? 'donne le chemin d'un répertoire spécial à partir de son nom ou de son ID 'Liste de repértoire spéciaux: 'Nom : ID 'AllUsersDesktop :0 'AllUsersStartMenu :1 'AllUsersPrograms :2 'AllUsersStartup :3 'Desktop :4 10 Si qqun c'est pourquoi il y a deux ID pour desktop 'AppData :5 'PrintHood :6 'Templates :7 'Fonts :8 'NetHood :9 'StartMenu :11 'SendTo :12 'Récent :13 'Startup :14 'Favorites :15 'MyDocuments :16 'Programs :17 'Normalement il n'y en a pas plus car un nombre plus petit que 0 ou plus grand que 17 Dim WSHShell As Object Set WSHShell = CreateObject("WScript.Shell") GetSpecialFolder = WSHShell.SpecialFolders(FolderName) End Function
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag
Venez sur le Chat de Développez !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager