SendMessage - W2000

Christophe - 2 juin 2001 à 13:35
albertouffe Messages postés 8 Date d'inscription lundi 14 avril 2003 Statut Membre Dernière intervention 9 juillet 2004 - 18 juin 2004 à 09:45
Bonjour,

Sous Windows 2000, est-ce la même déclaration ? :

Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" _
(ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, iParam As Any) As Long

Où puis-je trouver les choses à changer entre W98 et W2000. Je programme sous w98 et mon soft a des problèmes sous W2000... Comment connaitre les changements ?
Merci

3 réponses

http://www.msdn.microsoft.com/default.asp
Toutes l'infos sur les API's ce trouve la !!!!!

Ou si tu veux aller directement à la page de recherche c'est la :
http://search.microsoft.com/us/dev/default.asp
0
Salut, j'ai fait un tour chez msdn et apparement il n'y a pas de différence avec w2000. (mais bon je suis pas un pro en api..)

Par contre petite question concernant SendMessage : A quoi cette api te sert, et comment t'en sers-tu ?

Autre question : je voudrai récuperer le contenu (texte) de n'importe quelle fenetre ou champ ayant un handle. Pour ça je pense qu'il faut utiliser
Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
mais alors j'ai vraiment du mal à comprendre...
De plus je n'arrive pas dans tous les cas à récuperer les handle (j'utilise Private Declare Function GetActiveWindow Lib "user32" () As Long)

Bon si tu as une idée merci d'avance !!!

à bientot
fab (fab_zzz1@yahoo.fr)
0
albertouffe Messages postés 8 Date d'inscription lundi 14 avril 2003 Statut Membre Dernière intervention 9 juillet 2004
18 juin 2004 à 09:45
Salut tout le monde,

Je récupère le handle d'une application avec

'exemple pour Adobe Reader
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

hwnd = FindWindow(vbNullString, "Adobe Reader")

Après, pour récupérer le nom de la fenêtre :

Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long

Dim NomFenêtre As String

'Create a buffer
NomFenêtre = String(GetWindowTextLength(hwnd_acrobat) + 1, Chr$(0))
'Get the window's text
GetWindowText hwnd_acrobat, NomFenêtre, Len(NomFenêtre)

Ca marche sous windows 98 et je sais pas encore si ça marche aussi sous windows 2000 pro

@+,

Tonio
0
Rejoignez-nous