IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Récupérer chemin répertoire


Sujet :

VB 6 et antérieur

  1. #1
    Membre confirmé Avatar de Rodrick
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 92
    Par défaut Récupérer chemin répertoire
    Bonjour!!!
    Je recherche le moyen de récupérer le chemin du répertoire "temporary internet files" par défaut sur visual basic 6.
    Merci d'avance

  2. #2
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Testé sur un PC en français:
    %homepath%\Local Settings\Temporary Internet Files
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  3. #3
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonjour

    j'espere que cette macro réondra à ta demande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        Const Cible = &H20 'temporary Internet files
        Dim objShell As Object, objFolder As Object
        Dim objFolderItem As Object
     
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = objShell.NameSpace(Cible)
        Set objFolderItem = objFolder.Self
     
        MsgBox objFolderItem.Path

    michel

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Par défaut
    Bonjour

    Voici ce que j'utilise pour trouver les répertoires de Winsows

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
     
    '---------------------------------------------------------------------------------------------------
    ' Récupération des répertoires spéciaux de WIndows
    Public Enum enumWindowsFolders
      enumWinFolder_DESKTOP = &H0                   '{desktop}
      enumWinFolder_INTERNET = &H1                  'Internet Explorer (icon on desktop)
      enumWinFolder_PROGRAMS = &H2                  'Start Menu\Programs
      enumWinFolder_CONTROLS = &H3                  'My Computer\Control Panel
      enumWinFolder_PRINTERS = &H4                  'My Computer\Printers
      enumWinFolder_PERSONAL = &H5                  'My Documents
      enumWinFolder_FAVORITES = &H6                 '{user}\Favourites
      enumWinFolder_STARTUP = &H7                   'Start Menu\Programs\Startup
      enumWinFolder_RECENT = &H8                    '{user}\Recent
      enumWinFolder_SENDTO = &H9                    '{user}\SendTo
      enumWinFolder_BITBUCKET = &HA                 '{desktop}\Recycle Bin
      enumWinFolder_STARTMENU = &HB                 '{user}\Start Menu
      enumWinFolder_DESKTOPDIRECTORY = &H10         '{user}\Desktop
      enumWinFolder_DRIVES = &H11                   'My Computer
      enumWinFolder_NETWORK = &H12                  'Network Neighbourhood
      enumWinFolder_NETHOOD = &H13                  '{user}\nethood
      enumWinFolder_FONTS = &H14                    'windows\fonts
      enumWinFolder_TEMPLATES = &H15
      enumWinFolder_COMMON_STARTMENU = &H16         'All Users\Start Menu
      enumWinFolder_COMMON_PROGRAMS = &H17          'All Users\Programs
      enumWinFolder_COMMON_STARTUP = &H18           'All Users\Startup
      enumWinFolder_COMMON_DESKTOPDIRECTORY = &H19  'All Users\Desktop
      enumWinFolder_APPDATA = &H1A                  '{user}\Application Data
      enumWinFolder_PRINTHOOD = &H1B                '{user}\PrintHood
      enumWinFolder_LOCAL_APPDATA = &H1C            '{user}\Local Settings\Application Data (non roaming)
      enumWinFolder_ALTSTARTUP = &H1D               'non localized startup
      enumWinFolder_COMMON_ALTSTARTUP = &H1E        'non localized common startup
      enumWinFolder_COMMON_FAVORITES = &H1F
      enumWinFolder_INTERNET_CACHE = &H20
      enumWinFolder_COOKIES = &H21
      enumWinFolder_HISTORY = &H22
      enumWinFolder_COMMON_APPDATA = &H23           'All Users\Application Data
      enumWinFolder_WINDOWS = &H24                  'GetWindowsDirectory()
      enumWinFolder_SYSTEM = &H25                   'GetSystemDirectory()
      enumWinFolder_PROGRAM_FILES = &H26            'C:\Program Files
      enumWinFolder_MYPICTURES = &H27               'C:\Program Files\My Pictures
      enumWinFolder_PROFILE = &H28                  'USERPROFILE
      enumWinFolder_SYSTEMX86 = &H29                'x86 system directory on RISC
      enumWinFolder_PROGRAM_FILESX86 = &H2A         'x86 C:\Program Files on RISC
      enumWinFolder_PROGRAM_FILES_COMMON = &H2B     'C:\Program Files\Common
      enumWinFolder_PROGRAM_FILES_COMMONX86 = &H2C  'x86 Program Files\Common on RISC
      enumWinFolder_COMMON_TEMPLATES = &H2D         'All Users\Templates
      enumWinFolder_COMMON_DOCUMENTS = &H2E         'All Users\Documents
      enumWinFolder_COMMON_ADMINTOOLS = &H2F        'All Users\Start Menu\Programs\Administrative Tools
      enumWinFolder_ADMINTOOLS = &H30               '{user}\Start Menu\Programs\Administrative Tools
    End Enum
    'Private Const CSIDL_FLAG_CREATE = &H8000&        'combine with CSIDL_ value to force create on SHGetSpecialFolderLocation()
    'Private Const CSIDL_FLAG_DONT_VERIFY = &H4000    'combine with CSIDL_ value to force create on SHGetSpecialFolderLocation()
    'Private Const CSIDL_FLAG_MASK = &HFF00           'mask for all possible flag values
    'Private Const SHGFP_TYPE_CURRENT = &H0           'current value for user, verify it exists
    'Private Const SHGFP_TYPE_DEFAULT = &H1
    Private Const MAX_PATH = 260
    Private Const S_OK = 0
     
     
    Private Declare Function SHGetSpecialFolderLocation Lib "shell32" _
       (ByVal hwndOwner As Long, ByVal nFolder As Long, pidl As Long) As Long
     
    'Converts an item identifier list to a file system path.
    Private Declare Function SHGetPathFromIDList Lib "shell32" Alias "SHGetPathFromIDListA" _
       (ByVal pidl As Long, ByVal pszPath As String) As Long
     
    Private Declare Sub CoTaskMemFree Lib "ole32" (ByVal PV As Long)
    ' Récupération des répertoires spéciaux de WIndows
    '---------------------------------------------------------------------------------------------------
     
     
    Public Function GetSpecialFolderLocation(Folder As enumWindowsFolders) As String
      'Cette fonciton renvoi le chamin du répertoire spécial de Windows passé en paramétre
      'Code issu du site http://vbnet.mvps.org
      Dim sPath As String
      Dim pidl  As Long
      Dim hwnd  As Long
     
      GetSpecialFolderLocation = ""
      If Screen.ActiveForm Is Nothing Then
        hwnd = 0
      Else
        hwnd = Screen.ActiveForm.hwnd
      End If
     
      'fill the idl structure with the specified folder item
      If SHGetSpecialFolderLocation(hwnd, Folder, pidl) = S_OK Then
        'if the pidl is returned, initialize and get the path from the id list
         sPath = Space$(MAX_PATH)
         If SHGetPathFromIDList(ByVal pidl, ByVal sPath) Then
           'return the path
            GetSpecialFolderLocation = Left(sPath, InStr(sPath, Chr$(0)) - 1)
         End If
        'free the pidl
         Call CoTaskMemFree(pidl)
       End If
    End Function
    Je pense que dans ton cas c'est enumWinFolder_INTERNET_CACHE ou enumWinFolder_INTERNET

  5. #5
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    ou en plus court

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim wsh As Variant, IETemp As String
     
    Set wsh = CreateObject("WScript.Shell")
    IETemp = wsh.ExpandEnvironmentStrings("%USERPROFILE%") & "\Local Settings\Temporary Internet Files"

  6. #6
    Membre confirmé Avatar de Rodrick
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 92
    Par défaut
    Merci pour vos solutions. J'ai choisi la seconde.
    J'ai une autre question : comment récupérer le chemin du répertoire où se trouve mon executable?
    Car quand je change de répertoire avec une boite de dialogue enregistrer, le chemin par défaut change donc pour ne pas avoir de problème, j'aimerais récupérer le chemin du répertoire où se trouve mon executable.

  7. #7
    Membre chevronné
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Par défaut
    Regardes App.Path

  8. #8
    Membre confirmé Avatar de Rodrick
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 92
    Par défaut
    Merci pour l'aide.
    J'ai encore quelques questions à poser :
    -Tout d'abord, est-il possible d'ajouter dans la barre de menu une ligne en entrant son nom dans une textbox?
    Je m'explique : j'ai un programme comme l'internet explorer avec un navigateur, une textbox où on trouve l'adresse du site visité, un bouton "ajout" et un menu avec "favoris". J'aimerais que dans le menu qu'on crée habituellement avec le créateurs de menus de VB6, soit ajouté dans les "favoris" l'adresse d'un site lorsque l'utilisateur fait ajout.

    -Deuxième question, est-il possible d'afficher dans une filelistbox le contenu du répertoire et le contenu des sous répertoires d'un répertoire donné sans avoir besoin de naviguer dans l'arborescence. (J'ai vu dans la FAQ qu'il y avait moyen de faire ça en listant dans une listbox le contenu des sous dossiers d'un dossier donné mais le problème c'est que ça prend du temps à chaque fois surtout quand le répertoire choisi est le temporary internet files) Si vous avez une autre solution que celle que j'ai en ce moment, n'hésitez pas

    Merci

  9. #9
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    Salut Rodrick,

    Pour plus de clarté, je te conseille de
    1) passer à résolu le topic courant
    2) ouvrir 2 autres sujets concernant tes deux autres problèmes.
    Pour le premier, je pense pouvoir t'aider.

    a+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Récupérer chemin du répertoire temporaire utilisateur
    Par galouluma dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/08/2010, 13h22
  2. Commande ftp pour récupérer un répertoire entier
    Par SuperCed dans le forum Développement
    Réponses: 3
    Dernier message: 09/01/2008, 09h06
  3. VB6: récupérer le répertoire d'installation de l'application
    Par getea85 dans le forum Installation, Déploiement et Sécurité
    Réponses: 2
    Dernier message: 28/12/2005, 15h12
  4. [JSP] Récupérer le répertoire courant
    Par dafly dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 10/06/2004, 11h01
  5. [API win32] Récupérer le répertoire d'un profile
    Par sbeu dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 27/09/2002, 12h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo