Erreur Compilation 64 bits PtrSafe

Bonjour,

J'ai une erreur de compilation m'indiquant que "le code contenu dans ce projet doit être mis à jour pour pouvoir être utilisé sur les systèmes 64bits.Vérifiez et mettez à jour les instructions DECLARE, puis marquer les avec l'attribut PtrSafe".

Pouvez vous m'aider ?

Voici le code concerné :

Private Declare Function PtrSafe InternetOpenA Lib "wininet.dll" ( _
    ByVal sAgent As String, _
    ByVal lAccessType As Long, _
    ByVal sProxyName As String, _
    ByVal sProxyBypass As String, _
    ByVal lFlags As Long) As Long

Private Declare Function InternetConnectA Lib "wininet.dll" ( _
    ByVal hInternetSession As Long, _
    ByVal sServerName As String, _
    ByVal nServerPort As Long, _
    ByVal sUsername As String, _
    ByVal sPassword As String, _
    ByVal lService As Long, _
    ByVal lFlags As Long, _
    ByVal lcontext As Long) As Long

Private Declare Function FtpPutFileA _
   Lib "wininet.dll" _
 _
       (ByVal hFtpSession As Long, _
        ByVal lpszLocalFile As String, _
        ByVal lpszRemoteFile As String, _
        ByVal dwFlags As Long, _
        ByVal dwContext As Long) As Boolean

Private Declare Function InternetCloseHandle Lib "wininet" ( _
    ByVal hInet As Long) As Long

Bonjour

Comme ceci

Private Declare PtrSafe Function InternetOpenA Lib "wininet.dll" ( _
    ByVal sAgent As String, _
    ByVal lAccessType As Long, _
    ByVal sProxyName As String, _
    ByVal sProxyBypass As String, _
    ByVal lFlags As Long) As Long

Private Declare PtrSafe Function InternetConnectA Lib "wininet.dll" ( _
    ByVal hInternetSession As Long, _
    ByVal sServerName As String, _
    ByVal nServerPort As Long, _
    ByVal sUsername As String, _
    ByVal sPassword As String, _
    ByVal lService As Long, _
    ByVal lFlags As Long, _
    ByVal lcontext As Long) As Long

Private Declare PtrSafe Function FtpPutFileA _
   Lib "wininet.dll" _
 _
       (ByVal hFtpSession As Long, _
        ByVal lpszLocalFile As String, _
        ByVal lpszRemoteFile As String, _
        ByVal dwFlags As Long, _
        ByVal dwContext As Long) As Boolean

Private Declare PtrSafe Function InternetCloseHandle Lib "wininet" ( _
    ByVal hInet As Long) As Long

Bonsoir, voir une conversation sur ce site :https://forum.excel-pratique.com/viewtopic.php?f=3&t=72229&hilit=ptrsafe&start=30

Et comme le dit M12, il faut mettre comme il est dit sur la conversation des PtrSafe pour que cela "passe" en 64.

Mais il se peut également qu'il faille également modifier les déclaration "Long" en "PtrLong" à voir, enfin c'est ce qui est dit dans la conversation...

vbMBHB

Cool merci pour la réactiver, c’était simple !

Merci,

vbMBHB

Rechercher des sujets similaires à "erreur compilation bits ptrsafe"