GetWindowText

Signaler
Messages postés
85
Date d'inscription
dimanche 2 décembre 2001
Statut
Membre
Dernière intervention
31 décembre 2002
-
Messages postés
8
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
9 juillet 2004
-
Comment s'utilise GetWindowText svp ?
A voir également:

6 réponses

Messages postés
262
Date d'inscription
lundi 26 août 2002
Statut
Membre
Dernière intervention
24 août 2005

-------------------------------
Réponse au message :
-------------------------------

Comment s'utilise GetWindowText svp ?

J'ai pas VB sous les yeux mais je crois que c'est le handle de la fenetre que tu veux choper, un buffer remplit d'espaces, et la taille du buffer.
Je crois je revérifierai.
Sinon t'as ka aller sur ALLAPI.NET
0
Messages postés
85
Date d'inscription
dimanche 2 décembre 2001
Statut
Membre
Dernière intervention
31 décembre 2002

Mon erreur étais qu'il fallait spécifier la longueur de la variable qui contiendra le texte.

En utilisant le handle d'un bouton Command1 (par exemple) :

Dim a As String * 128
MsgBox "'" & Left(a, GetWindowText(Command1.hwnd, a, 128)) & "'"
0
Messages postés
2
Date d'inscription
vendredi 6 septembre 2002
Statut
Membre
Dernière intervention
11 décembre 2002

ah tes for nil min quand tes pas conecter tu m'aide cool merci
me prent pas le tete
0
Messages postés
442
Date d'inscription
samedi 23 novembre 2002
Statut
Membre
Dernière intervention
19 octobre 2005

Ca fait longtemps apres votre message, mais j'ai enfin pigé comment marche cette fonction, je pigeais pas pq j'avauis sans arrete des bugs ! merci ;-)
0
Messages postés
8
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
9 juillet 2004

Salut,

J'ai besoin de savoir le nom d'une fenêtre à partir d'une application Excel écrite en VBA.

Voici mon code :

'--------------------------------------------------------------------
'--------------------------------------------------------------------
'--------------------------------------------------------------------

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Declare Function WaitForSingleObject Lib "Kernel32" _
(ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Declare Function OpenProcess Lib "Kernel32" _
(ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long
Public Const INFINITE = &HFFFF

'--------------------------------------------------------------------

Function RecupNomFenetre(ByVal CheminComplet As String) As Long
Dim ProcessHandle As Long
Dim ProcessId As Long, ret&
Dim a As String * 128

ProcessId = Shell(CheminComplet, vbNormalFocus)
ProcessHandle = OpenProcess(&H1F0000, 0, ProcessId)

MsgBox CStr(ProcessHandle)
a = GetWindowText(ProcessHandle, a, 128)
MsgBox CStr(a)

End Function

'--------------------------------------------------------------------

Sub Test()
chemin = "C:\Program Files\Adobe\Acrobat 6.0\Reader\acrord32.exe"
RecupNomFenetre(chemin)
End Sub

'--------------------------------------------------------------------
'--------------------------------------------------------------------
'--------------------------------------------------------------------

Le but est d'obtenir le nom de la fenêtre qd j'execute la routine Test. Pour l'instant le code retourne la longueur du nom de la fenêtre.
Je ne comprend pas pourquoi mais il me renvoie 0 comme si la fenêtre n'avait pas de nom !
C'est peut être mon hwnd qui n'est pas bon, je sais pas.

Si quelqu'un pouvait me dire pourquoi, ce serait cool :-)

Merci,

Tonio
0
Messages postés
8
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
9 juillet 2004

Salut,

C bon, je viens de trouver la solution à mon problème :-)

@+,

Tonio
0