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

C++Builder Discussion :

Recherche des dossiers de partage des postes d'un réseau LAN


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut Recherche des dossiers de partage des postes d'un réseau LAN
    Bonjour à tous,

    J'essaye de trouver un fichier de configuration dans un pc distant dans mon réseau LAN, j'ai codé une fonction récursive qui recherche un fichier dans une arborescence et je doit lui fournir en paramètre le chemin convenable, donc connaissant le nom de l’hôte du pc, je doit savoir ses dossiers partagés
    j'ai pensé à la méthode getfolder et je sais pas si elle est convenable et si oui comment l'utiliser. J'ai besoins de votre aide SVP! et merci d'avance.

    Cordialement

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut
    Que donne FindFirst\FindNext sur "\\\\HostName\\" ?
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    Salut, j'ai essayé votre proposition shail et ça n'a rien donné j'ai essayé aussi avec cette fonction (paramètre "////hostname//") mais en vain!!
    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
    void __fastcall TForm1::DirSearch (char * path_name)
    {  //fonction recherche d'un fichier en réseau
    WIN32_FIND_DATA FN;//La structure WIN32_FIND_DATA décrit un fichier que
    //l'FindFirstFile, FindFirstFileEx, ou les fonctions FindNextFile doivent le trouver.
    //l'attribut  FN.cFileName (TCHAR cFileName[MAX_PATH];)indique le nom du fichier
    HANDLE hFind;
    char search_arg[MAX_PATH], new_file_path[MAX_PATH];
    sprintf(search_arg, "%s\\*.*", path_name);//Écrit la sortie formatée pour une chaîne.
    //search_arg[20]="Fichier.txt";
    hFind = FindFirstFile(search_arg, &FN); /*La fonction FindFirstFile cherche
    un répertoire pour un fichier ou un répertoire dont en fournit le nom en argument*/
    if (hFind != INVALID_HANDLE_VALUE)
    {
    	do {
    			// Make sure that we don't process . or .. in FN.cFileName here.
    			if (strcmp(FN.cFileName, ".") != 0 && strcmp(FN.cFileName, "..") != 0)
    			{
    				sprintf(new_file_path, "%s\\%s", path_name, FN.cFileName);
    				// If this is a directory then recurse into the directory
    				if (FN.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
    					DirSearch(new_file_path);
    				else
    				{
    					ShowMessage(FN.cFileName);
                    }
    					// Do something here with the file
    					// new_file_path contains the filename with complete path.
     
    			}
    		}
    	while (FindNextFile(hFind, &FN) != 0);
    	if (GetLastError() == ERROR_NO_MORE_FILES)
    		FindClose(&FN);
    	else
    		ShowMessage("FindNextFile() crapped on us!");
    }
    }

  4. #4
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    bon pour être clair si je donne en paramètre un chemin complet comme:
    \\\\Dimension-5000\\Hanen\\Mindray BC-5500\\ ça fonctionne mais si je donne seulement le host_name ça me donne rien et problème réside ici car je doit savoir dynamiquement les chemins ou chercher.
    Merci d'avance

  5. #5
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Salut
    Regarde du côté des fonctionalités WMI
    un ex en c#
    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
     
    using System; 
    using System.Management; 
    using System.Collections.Generic;
     
    namespace WmiConnectRemote
    {
        class Program
        {
            static void Main(string[] args)
            {
                var machine = "MACHINEANAME"; 
     
                var options = new ConnectionOptions { Username = "", Password = "" }; 
     
                var scope = new ManagementScope(@"\\" + machine + @"\root\cimv2", options); 
     
                var queryString = "select Name, Size, FreeSpace from Win32_LogicalDisk where DriveType=3"; 
               var query = new ObjectQuery(queryString); 
                var worker = new ManagementObjectSearcher(scope, query);
                try
                {
                    var results = worker.Get();
                    foreach (ManagementObject item in results)
                    {
                        Console.WriteLine("{0} {2} {1}", item["Name"], item["FreeSpace"], item["Size"]);
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(
                        e.Message);
     
                }
            }
        }
    }
    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

Discussions similaires

  1. [WS 2003] Les partages des dossiers "sautent" !
    Par nesta75 dans le forum Windows Serveur
    Réponses: 0
    Dernier message: 16/10/2009, 23h34
  2. Liste des dossiers et taille des dossiers
    Par Benj. dans le forum VBScript
    Réponses: 2
    Dernier message: 07/10/2009, 12h50
  3. partage des dossiers par défaut nécessaire ?
    Par nanourene dans le forum Windows Serveur
    Réponses: 6
    Dernier message: 19/05/2008, 20h41
  4. Réponses: 3
    Dernier message: 22/03/2007, 18h40
  5. Réponses: 2
    Dernier message: 20/01/2006, 17h08

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