Word hook souris

Résolu
cs_sylvain230 Messages postés 67 Date d'inscription mardi 5 décembre 2000 Statut Membre Dernière intervention 5 juillet 2010 - 7 mai 2008 à 15:52
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 7 mai 2008 à 17:41
Salut

J'ai un problème assez "fun".
J'ai fait un hook de souris sur la fenêtre word. ca me donne ca
        Public Function Hook(ByVal W As Microsoft.Office.Interop.Word.Application) As Boolean

            Try

                Dim hInstance As Integer
                Dim Word_hwnd As Integer
                Dim numID As Integer

                'dlgClavierCallBack = New HookClavierDelegate(AddressOf ClavierCallBack)
                dlgSourisCallBack = New HookSourisDelegate(AddressOf SourisCallBack)

                hInstance = Marshal.GetHINSTANCE([Assembly].GetExecutingAssembly.GetModules()(0)).ToInt32
                Word_hwnd = FindWindow(vbNullString, W.ActiveWindow.Caption & " - Microsoft Word")
                Dim NumThread As Integer = GetWindowThreadProcessId(Word_hwnd, numID)
                Debug.Print(Word_hwnd & "--" & numID & "--" & NumThread & "--" & GetCurrentProcessId)

                hHookSouris = SetWindowsHookExSouris(WH_MOUSE, dlgSourisCallBack, hInstance, NumThread) 'Dans word
                If (hHookSouris = 0) Then
                    MsgBox("Problème hook")
                    Exit Function

                End If
            Catch ex As Exception
                MsgBox(ex.Message & vbCrLf & ex.StackTrace)
            End Try

        End Function

Donc pas de problème le handle est le bon(vérifié avec Spy++), le thread aussi.

Donc la fenêtre Word est bien détectée. Maintenant, quand je passe la souris sur la fenêtre Word j'ai ca

"Microsoft Office Word a rencontré un problème et doit être fermé. Nous vous prions de nouex excuser pour le désagrement encouru." ... message classique.
Je n'ai pas d 'exception de levée, le fichier word se ferme mais pas l'appli et voila ...

Donc si vous avez des idées je suis prenneur c'est vraiment urgent là svp !!!
Word est sécurisé ? erreur ds le code ?

Private Function SourisCallBack(ByVal nCode As Integer, ByVal wParam As Integer, ByVal lParam As MOUSEHOOKSTRUCT) As Integer

            Try

            Catch ex As Exception
                MsgBox(ex.Message & vbCrLf & ex.StackTrace)
            End Try
        End Function

Le code de SourisCallBack si ca peut vous inspirer.
Merci d'avance

1 réponse

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
7 mai 2008 à 17:41
salut,

euh... tes fonctions ne doivent rien retourner?
tu ne laisses pas passer le message? ni prends le suivant?

çà doit être dans cet ordre d'idées en tout cas....
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
3
Rejoignez-nous