Partage
  • Partager sur Facebook
  • Partager sur Twitter

Explorateur windows

    27 avril 2019 à 20:36:07

    Bonsoir j'aimerais savoir si ils est possible d'ouvrir l'explorateur windows en c pour qu'il retourne le chemin d'accès d'un fichier
    • Partager sur Facebook
    • Partager sur Twitter
      27 avril 2019 à 22:50:57

      Hello,

      Non, mais GetFullPathName() peut t'aider.

      • Partager sur Facebook
      • Partager sur Twitter

      On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

        28 avril 2019 à 10:11:09

        On peut le faire, ce code fonctionne sous Windows 10 avec Visual Studio Commuity 2019

        #include <stdio.h>
        #include <windows.h>
        
        int main(void)
        {
        	OPENFILENAME ofn;       // common dialog box structure
        	char szFile[260];       // buffer for file name
        	FILE *hf;              // file handle
        
        	// Initialize OPENFILENAME
        	memset(&ofn, 0, sizeof(ofn));
        	ofn.lStructSize = sizeof(ofn);
        	ofn.hwndOwner = NULL;
        	ofn.lpstrFile = szFile;
        	// Set lpstrFile[0] to '\0' so that GetOpenFileName does not 
        	// use the contents of szFile to initialize itself.
        	ofn.lpstrFile[0] = '\0';
        	ofn.nMaxFile = sizeof(szFile);
        	ofn.lpstrFilter = "All\0*.*\0Text\0*.TXT\0";
        	ofn.nFilterIndex = 1;
        	ofn.lpstrFileTitle = NULL;
        	ofn.nMaxFileTitle = 0;
        	ofn.lpstrInitialDir = NULL;
        	ofn.Flags = OFN_PATHMUSTEXIST;
        
        	// Display the Open dialog box. 
        
        	if (GetOpenFileName(&ofn) == TRUE)
        	{
        		hf = fopen(ofn.lpstrFile, "w");
        		fprintf(hf, "Coucou\n");
        		fclose(hf);
        	}
        	return 0;
        }


        Ici on crée un fichier, mais pour obtenir le nom d'un fichier existant il faut faire

        ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST



        -
        Edité par joel76 28 avril 2019 à 10:13:21

        • Partager sur Facebook
        • Partager sur Twitter

        Le crayon la gomme et le papier sont les meilleurs outils du programmeur !

          28 avril 2019 à 23:44:34

          Jo

          el sa ne marche pas de mon coté en même temp faut dire que je ne code pas sur visual mais avec un le compilateur mingw et un éditeur de texte

          j'ai bien pensé à inclure la librairie window.h

          • Partager sur Facebook
          • Partager sur Twitter
            29 avril 2019 à 9:35:34

            Il doit manquer une bibliothèque pour la compilation essaye en incluant Comdlg32.lib 

            Si tu as d'autres problèmes de ce type google "library for <nom_de_la_fonction>"

            -
            Edité par joel76 29 avril 2019 à 9:38:01

            • Partager sur Facebook
            • Partager sur Twitter

            Le crayon la gomme et le papier sont les meilleurs outils du programmeur !

              1 mai 2019 à 21:22:36

              Bonsoir excuser moi du délaie de réponse mais il y a t-il un moyen d'empécher de sélectionné un fichier car sa marche mais je voudrais empécher le faites de sélectionner un fichier
              • Partager sur Facebook
              • Partager sur Twitter
                2 mai 2019 à 9:33:18

                S'il a une extension particulière c'est possible facilement en modifiant ofn.lpstrFilter.

                Sinon, ma solution serait de tester ofn.lpstrFile , afficher un message d'erreur si c'est un mauvais ficher et recommencer (j'avoue que c'est pas satisfaisant).

                Bosse la documentation MSDN, c'est peut-être prévu !

                -
                Edité par joel76 2 mai 2019 à 9:34:09

                • Partager sur Facebook
                • Partager sur Twitter

                Le crayon la gomme et le papier sont les meilleurs outils du programmeur !

                Explorateur windows

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown