Imsend aol 8 fr

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 258 fois - Téléchargée 36 fois

Contenu du snippet

bah ca sert à envoyer un im dans aol 8 fr !

Source / Exemple :


' ============================================== '
' ============(IMSend.bas [by b0uH])============ '
' ============================================== '

'Déclaration des APIs
Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Public Declare Function FindWindow& Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String)
Public Declare Function SendMessageLong& Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)
Public Declare Function SendMessageString& Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String)
Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Public Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hWnd As Long) As Long

'Déclaration des constantes
Public Const VK_SPACE = &H20
Public Const WM_KEYUP = &H101
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_SETTEXT = &HC

Public Function FindIM() As Long ' Recherche de la fenetre d'IM
    Dim Aol As Long, MDI As Long, Child As Long, Caption As String
    
    Aol& = FindWindow("AOL Frame25", vbNullString) ' Recherche de la fenêtre d'AOL
    MDI& = FindWindowEx(Aol&, 0&, "MDIClient", vbNullString)
    Child& = FindWindowEx(MDI&, 0&, "AOL Child", vbNullString)
    Caption$ = GetCaption(Child&)
    If InStr(Caption$, "Message instantané") > 0 Then ' Si le titre de la fenetre contient 'Message instantané'
        FindIM& = Child& ' On fini
        Exit Function ' On sort de la fonction
    Else
        Do
            Child& = FindWindowEx(MDI&, Child&, "AOL Child", vbNullString)
            Caption$ = GetCaption(Child&)
            If InStr(Caption$, "Message instantané") > 0 Then
                FindIM& = Child&
                Exit Function
            End If
        Loop Until Child& = 0&
    End If
    FindIM& = Child&
End Function

Public Function BoutonEnvoyer() As Long ' Recherche du bouton 'Envoyer' de la fenetre d'IM
Bouton = FindWindowEx(FindIM, 0&, "_AOL_Icon", vbNullString) ' Gras
bouton2 = FindWindowEx(FindIM, Bouton, "_AOL_Icon", vbNullString) ' Italique
bouton3 = FindWindowEx(FindIM, bouton2, "_AOL_Icon", vbNullString) ' Souligné
bouton4 = FindWindowEx(FindIM, bouton3, "_AOL_Icon", vbNullString) ' Couleur de la police
bouton5 = FindWindowEx(FindIM, bouton4, "_AOL_Icon", vbNullString) ' Couleur d'arrière plan
Bouton6 = FindWindowEx(FindIM, bouton5, "_AOL_Icon", vbNullString) ' Rapeticir la police
Bouton7 = FindWindowEx(FindIM, Bouton6, "_AOL_Icon", vbNullString) ' Police moyenne
Bouton8 = FindWindowEx(FindIM, Bouton7, "_AOL_Icon", vbNullString) ' Augmenter la police
Bouton9 = FindWindowEx(FindIM, Bouton8, "_AOL_Icon", vbNullString) ' Smileys
Bouton10 = FindWindowEx(FindIM, Bouton9, "_AOL_Icon", vbNullString) ' Musique
Bouton11 = FindWindowEx(FindIM, Bouton10, "_AOL_Icon", vbNullString) ' Coups de coeur
Bouton12 = FindWindowEx(FindIM, Bouton11, "_AOL_Icon", vbNullString) ' Vérif' ortographe
Bouton13 = FindWindowEx(FindIM, Bouton12, "_AOL_Icon", vbNullString) ' ?
Bouton14 = FindWindowEx(FindIM, Bouton13, "_AOL_Icon", vbNullString) ' ?
Bouton15 = FindWindowEx(FindIM, Bouton14, "_AOL_Icon", vbNullString) ' Bouton envoyer
BoutonEnvoyer = Bouton15
End Function

Public Function IMSend(Texte As String) ' Envoi un message dans la fenetre d'IM active
    Dim ZoneTexte As Long
    
ZoneTexte = FindWindowEx(FindIM, 0&, "RICHCNTL", vbNullString) ' Recherche de la zone de texte (RICHCNTL)
Call SendMessageString(ZoneTexte, WM_SETTEXT, 0&, "")
Call SendMessageString(ZoneTexte, WM_SETTEXT, 0&, Texte) ' Met le texte dans la zone
Call SendMessageLong(BoutonEnvoyer, WM_LBUTTONDOWN, hd&, 0&)
Call SendMessageLong(BoutonEnvoyer, WM_KEYUP, VK_SPACE, 0&)
End Function

Public Function GetCaption(WindowHandle As Long) As String ' Récupère le caption
    Dim Buffer As String, TextLength As Long
    TextLength& = GetWindowTextLength(WindowHandle&)
    Buffer$ = String(TextLength&, 0&)
    Call GetWindowText(WindowHandle&, Buffer$, TextLength& + 1)
    GetCaption$ = Buffer$
End Function

Conclusion :


ué je sais ca peut paraître un peu bidon comme ca mais pour les newbies c'est utile ;)

A voir également

Ajouter un commentaire

Commentaires

xpwindaube
Messages postés
14
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
10 décembre 2004
-
pas grave merci quand meme mais c bon j'ai trouvé la solution j'utilise sendkeys :-D sa a l'aire de bien marché
cs_Aspect
Messages postés
47
Date d'inscription
mercredi 9 octobre 2002
Statut
Membre
Dernière intervention
23 mars 2004
1 -
{02/10/04 - 17:34:17} mdr
{02/10/04 - 17:34:22} javé pompé
{02/10/04 - 17:34:25} un mod chatsend
{02/10/04 - 17:34:32} ça se voit
{02/10/04 - 17:34:33} :x
{02/10/04 - 17:34:34} en changeant les hwnd
{02/10/04 - 17:34:35} :x

aïe aîe aïe !!! Mais on t'en veut pas :p
cs_Aspect
Messages postés
47
Date d'inscription
mercredi 9 octobre 2002
Statut
Membre
Dernière intervention
23 mars 2004
1 -
non ça marche pas à mon souvenir, mais à l'époque je l'avais fais pour AOL9us mais bon c'était y a presque un an et demi !!) et depusi je fais plus de VB dsl !

a+
xpwindaube
Messages postés
14
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
10 décembre 2004
-
Sa marche avc AOL 9.0 ?? sa a pas l'aire ... :-(
Si quequ'un a un module IMsend pour aol 9.0 qu'il pence a moi ;-)
cs_Aspect
Messages postés
47
Date d'inscription
mercredi 9 octobre 2002
Statut
Membre
Dernière intervention
23 mars 2004
1 -
mouarf tit b0uh fé un for pr ton bouton cay mocheuw comme as
for i=0 to 14
Bouton& = FindWindowEx(FindIM, Bouton&, "_AOL_Icon", vbNullString)
next ...
Et pis now c AOL9 hein ;)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.