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

MFC Discussion :

CFiledialog


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    18
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 18
    Par d�faut CFiledialog
    Bonjour,

    Comment initialiser "m_ofn.lpstrInitialDir" afin que la fenetre CFileDialog s'ouvre sur le poste de travail??

    Thieum

  2. #2
    R�dacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 45
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par d�faut
    lpstrInitialDir
    Pointer to a string that specifies the initial file directory.
    Windows NT 5.0 and later; Windows 98 and later:

    If lpstrInitalDir is NULL and the current directory contains any files of the specified filter types, the initial directory is the current directory.

    If lpstrInitalDir is NULL and the current directory does not contain any files of the specified filter types, the initial directory is the personal files directory of the current user. To specify the current user's personal files directory as the initial directory, set lpstrInitialDir to the path returned by calling theSHGetSpecialFolderLocation function with the CSIDL_PERSONAL flag.

    Earlier versions of Windows and Windows NT:

    If lpstrInitalDir is NULL, the initial directory is the current directory.
    Dans ton cas, ce n'est pas le r�pertoire de l'utilisateur courant que tu veux, mais le bureau. donc au lieu de CSIDL_PERSONAL, tu utiliseras CSIDL_COMMON_DESKTOPDIRECTORY

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    WINSHELLAPI HRESULT WINAPI SHGetSpecialFolderLocation(
        HWND hwndOwner,
        int nFolder,
        LPITEMIDLIST *ppidl
    );
    nFolder
    Value specifying the folder for which to retrieve the location. This parameter can be one of the following values:
    CSIDL_COMMON_DESKTOPDIRECTORY File system directory that contains files and folders that appear on the desktop for all users

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    18
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 18
    Par d�faut
    Ok,

    avec le code suivant ca marche:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    	LPTSTR szPath = "";
    	SHGetSpecialFolderPath(hWndMain, szPath, CSIDL_DESKTOPDIRECTORY , true);
    	AfxMessageBox(szPath);
    	Dialog.m_ofn.lpstrInitialDir = szPath;
    sauf que l�, la fenetre s'ouvre sur le bureau hors je souhaite qu'elle s'ouvre sur le poste de travail. j'ai essayer avec CSIDL_DRIVES mais le chemin retrouner est null.

    donc comment faire pour avoir le chemin du poste de travail??

  4. #4
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    C'est un r�pertoire virtuel, il existe nul part sur le disque. C'est pour �a que SHGetSpecialFolderPath �choue. Je ne pense pas que ce que tu souhaites soit possible, avec CFileDialog.
    C'est faisable avec SHBrowseForFolder, mais c'est une dialogue moins sympa...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    18
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 18
    Par d�faut
    Ok, bon ben tant pis, neanmoins merci de vos reponses...

    Que la force soit avec vous...

    Thieum

Discussions similaires

  1. [MFC]affichage mode detail d'une CFileDialog
    Par lucky dans le forum MFC
    R�ponses: 13
    Dernier message: 14/09/2005, 22h05
  2. R�ponses: 26
    Dernier message: 26/01/2005, 15h53
  3. R�ponses: 2
    Dernier message: 04/10/2004, 14h30
  4. [MFC]Selection repertoire CFileDialog
    Par Tsunamis dans le forum MFC
    R�ponses: 8
    Dernier message: 13/09/2004, 16h37
  5. CFileDialog Filter
    Par Patrick Beaudoin dans le forum MFC
    R�ponses: 4
    Dernier message: 07/09/2002, 09h51

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