Bonjour à tous
Je cherche désespéremment à utiliser la fonction RAPI CeGetClasseName qui est une fonction de la dll rapi.dll.
Cette dll est en réalité un "morceau" de MS-ActiveSync qui me permet d’accéder à un système sous WinCE 4.2
Le problème que je rencontre est un message du type "....la mémoire ne peut être written..." cette erreur provoque la fermeture de VB6 sans autre forme de proces.
le prototype de cette fonction est :
Rien de bien sorcier donc.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Public Declare Function CeGetClassName Lib "rapi.dll" (ByVal hWnd As Long, ByVal lpString As String, nMaxCount As Integer) As Integer
pour utiliser cette fonction je procède de la manière suivante :
J'ai pas mal cherché et essayé de trucs mais rien ne fonctionne. J'ai la très nette impression qu'il y a un conflit d'adressage au niveau des variables.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Dim HdlNext As Long Dim lpClassName As String Dim nByte As Integer 'recupere le handel de la prochaine window de meme niveau HdlNext = CeGetWindow(HdlPrev, GW_HWNDNEXT) 'recupere la classe de l'objet nByte = CeGetWindowText(HdlNext, lpClassName, 25)
Maintenant j'avoue que je sèche complètement.
C'est bizarre car le fonction CegetWindows fonctionne parfaitement
et j'arrive même à copier des fichiers sur le système mobile. (fonctions CeCopyFile) sans problème.
Ceci dit il est vrai qu'à la base les arguments de la fonction cecopyfile sont de type LPCSTR...et non LPTSTR comme dans CeGetClassName...
Merci de votre aide.
Partager