riadhesiee
Messages postés9Date d'inscriptionmercredi 31 mars 2010StatutMembreDernière intervention31 mai 2010
-
29 avril 2010 à 10:06
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
29 avril 2010 à 17:08
Bonjour,
Je suis entrain de développer une application en Csharp (console application), elle permet de détecter les fenetres ouvertes (celles de la barre de taches) et de donner leurs noms. Enfaite ce que je veux faire, c'est de détecter les chemins de ces fenetres, par exemple pour les fichiers word ouverts.
Autrement dit, si j'ai un fichier word sur mon bureau, je veux que le chemin soit: "C:\Documents and Settings\Administrator\Desktop\MonfichierWord.doc".
mais en utilisant:
GetWindowThreadProcessId(hwnd, out pid);
Process p = Process.GetProcessById(pid);
Console.WriteLine(p.MainModule.FileName);
elle me renvoit: "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE"
Je sait pas comment faire, alors SVP, qq1 a une idée ??
Merci
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 29 avril 2010 à 11:50
Salut, bien oui le processus ouvert c'est word, ce n'est pas un fichier *.doc. Si tu souhaites obtenir le titre de la fenêtre essaye avec Process::MainWindowTitle.
riadhesiee
Messages postés9Date d'inscriptionmercredi 31 mars 2010StatutMembreDernière intervention31 mai 2010 29 avril 2010 à 11:58
Salut,
merci pour ta réponse, mais c'est pas ce que je veux faire. Enfaite mainWindowTitle renvoit le nom de la fenetre ouverte:
"NomDu Fichier Word.doc - Microsoft Word" et non pas sa localisation sur le PC.
Moi je veux récupérer la localisation du fichier word ouvert, par exemple si il est sur le bureau alors je veux avoir:
"C:\Documents and Settings\Administrator\Desktop"
je sai pas comment faire !!!!!!!
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 29 avril 2010 à 17:08
Il va te falloir beaucoup de code pour cela, utilisation de l'API native de Windows.
Voir les sources de ShareVB qui a fait quelques exemples sur le sujet.