MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Executar função (não lê PC de 64bits)

    Compartilhe

    Feitosa
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 26/10/2011

    Executar função (não lê PC de 64bits)

    Mensagem  Feitosa em Dom 23 Fev 2014, 14:06

    Pessoal, bom dia.

    Estou com um problema.
    Meu PC é de 64bits, e não está reconhecendo uma função ao abrir Access (2010).

    ====================================
    Option Compare Database
    Option Explicit
    Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
    (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

    Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
    (ByVal hWnd As Long, ByVal nIndex As Long) As Long

    Private Declare Function SetLayeredWindowAttributes Lib "user32" _
    (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

    Private Const GWL_EXSTYLE = (-20)
    Private Const WS_EX_LAYERED = &H80000
    Private Const LWA_ALPHA = &H2
    ====================================

    Ao executar ocorre o seguinte erro: “Erro de compilação: O código desse projeto deve ser atualizado para uso em sistemas de 64bits. Analise e atualize as instruções Declare e, em seguida, marque-as com atributo PtsSafe”.

    Alguém sabe o procedimento para solucionar o problema?

    Desde já agradeço a atenção.
    avatar
    Avelino Sampaio
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3391
    Registrado : 04/04/2010

    Re: Executar função (não lê PC de 64bits)

    Mensagem  Avelino Sampaio em Dom 23 Fev 2014, 14:54

    Olá!

    Veja este meu artigo:

    [Você precisa estar registrado e conectado para ver este link.]

    Aguardamos
    avatar
    Rui Maciel
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 298
    Registrado : 11/09/2012

    Re: Executar função (não lê PC de 64bits)

    Mensagem  Rui Maciel em Dom 23 Fev 2014, 17:17

    boa tarde
    Já tentou:
    Private Declare ptrsafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
    (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

    Private Declare ptrsafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
    (ByVal hWnd As Long, ByVal nIndex As Long) As Long

    Private Declare ptrsafe Function SetLayeredWindowAttributes Lib "user32" _
    (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

    Abraço,
    Rui

    eagle07
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 52
    Registrado : 29/03/2014

    agradecimento

    Mensagem  eagle07 em Seg 06 Fev 2017, 13:08

    obrigada rui maciel vc me salvou amigo, deu certinho coloquei em cada modulo que estava dando este erro! Valeu amigo!

    Private Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
    (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

    Private Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
    (ByVal hWnd As Long, ByVal nIndex As Long) As Long

    Private Declare PtrSafe Function SetLayeredWindowAttributes Lib "user32" _
    (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

      Data/hora atual: Seg 25 Set 2017, 23:08