Recuperer la sortie de notepad

weahgeorges Messages postés 17 Date d'inscription mercredi 6 mai 2009 Statut Membre Dernière intervention 6 juillet 2009 - 17 avril 2009 à 18:28
ToutEnMasm Messages postés 587 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 13 décembre 2022 - 20 avril 2009 à 15:24
  Bonjour,
j'ai vu plusieurs Topics à ce sujet sur le forum mais aucun ne repond vraiment à mon problème. Alors voila je lance notepad tout en lui demandant de m'editer un fichier. ensuite je voudrais recuperer ce ki s'affiche sur notepad. Malheureusement j'obtiens toujours le 'title bar'  et non le contenu du fichier. Voici brievement mon code

CreateProcess( NULL,
// No module name (use command line)
LPTSTR(

"C:\\Program Files\\Notepad++\\notepad++.exe C:\\Documents and Settings\\Desktop\\test.txt"),

NULL,
// Process handle not inheritable
NULL,
// Thread handle not inheritable
TRUE,
// Set handle inheritance to FALSE
0,
// No creation flags
NULL,
// Use parent's environment block
NULL,
// Use parent's starting directory
&si,
// Pointer to STARTUPINFO structure
&pi )
// Pointer to PROCESS_INFORMATION structure)

HWND hWnd = FindWindow(

"Notepad++",NULL);
TCHAR szBuf[100];

SendMessage(hWnd , WM_GETTEXT, 100, (LPARAM)szBuf);

cout << szBuf << endl;

6 réponses

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
17 avril 2009 à 18:41
Et pourquoi tu lis pas directement le contenu du fichier ?
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
17 avril 2009 à 18:49
Sinon regarde ici ...
0
ToutEnMasm Messages postés 587 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 13 décembre 2022 3
20 avril 2009 à 11:10
Il ne faut pas confondre le handle de la fenêtre avec le handle du controle d'edition de notepad.Ce ne sont pas les mêmes.Le handle de la fenêtre renverra toujours le titre de la fenêtre.
Il y a un script (vbscript) qui arrive a faire cela avec le shell.
0
weahgeorges Messages postés 17 Date d'inscription mercredi 6 mai 2009 Statut Membre Dernière intervention 6 juillet 2009
20 avril 2009 à 12:13
          Salut,


Je pense justement que mon problème est du au handle. Ce que je dois fqire en fait c'est de passer plutot le handle du controle d'edition de Notepad. Quelqu'un saurait il comment je peux faire pour  recuperer ce handle??


Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
weahgeorges Messages postés 17 Date d'inscription mercredi 6 mai 2009 Statut Membre Dernière intervention 6 juillet 2009
20 avril 2009 à 12:25
  Après avoir chercher sur les forums. J'ai vu qu'on peut recuperer le handle controle d'edition en utilisant FinWindowEx. Cependant le code ne fonctionne toujours pas, 9a ne m'affiche rien du tout
HWND hWnd = FindWindow(

"Notepad++"
,NULL);

TCHAR szBuf[80];

hWnd = FindWindowEx(hWnd, NULL,
"EDIT", NULL);

SendMessage(hWnd, WM_GETTEXT, 80, (LPARAM)szBuf);

cout << szBuf << endl;
0
ToutEnMasm Messages postés 587 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 13 décembre 2022 3
20 avril 2009 à 15:24
findwindow echoue
Utiliser CreateToolhelp32Snapshot
0
Rejoignez-nous