MaximoAccess

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

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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

    [Resolvido]32 bits x 64 bits

    avatar
    sergio de paula
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 29
    Registrado : 19/04/2020

    [Resolvido]32 bits x 64 bits Empty [Resolvido]32 bits x 64 bits

    Mensagem  sergio de paula em 31/7/2020, 19:18

    Estou fazendo um projeto para meu filho e encontro um problema que gostaria de saber se alguém tem uma solução. Meu computador é 32 bits e o dele 64 bits. Algumas coisas dão problema que precisa inserir, na declaração da função o PTRSAFE. Gostaria de saber se dá para fazer algo assim :

    Option Compare Database
    if "computador é 64 bits"
    Public Declare ptrsafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    else
    Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    end if

    Obrigado !!
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7677
    Registrado : 05/11/2009

    [Resolvido]32 bits x 64 bits Empty Re: [Resolvido]32 bits x 64 bits

    Mensagem  Alexandre Neves em 1/8/2020, 15:34

    Boa tarde
    Código:

    #If Win64 Then
        Public Declare ptrsafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    else
        Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    #End If


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    sergio de paula
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 29
    Registrado : 19/04/2020

    [Resolvido]32 bits x 64 bits Empty 32 bits x 64 bits

    Mensagem  sergio de paula em 1/8/2020, 16:30

    Boa tarde, Alexandre,
    Inseri o código que você mandou, porém, no 32, quando depura o programa dá erro e exibe mensagem dando conta que a função Sleep não está definida, no local onde é chamada !!
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7677
    Registrado : 05/11/2009

    [Resolvido]32 bits x 64 bits Empty Re: [Resolvido]32 bits x 64 bits

    Mensagem  Alexandre Neves em 1/8/2020, 19:41

    Apenas adaptei o código para 32 ou 64 bits que julgo funcionará. A função se não funciona terá que ver o porquê


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    sergio de paula
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 29
    Registrado : 19/04/2020

    [Resolvido]32 bits x 64 bits Empty 32 bits x 64 bits

    Mensagem  sergio de paula em 1/8/2020, 19:50

    Quando retira o código
    #If Win64 Then
    Public Declare ptrsafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    else
    Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    #End If

    funciona no 32 bits e não dá problema de compilação, ou seja, o else parece não funcionar neste código!!
    avatar
    sergio de paula
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 29
    Registrado : 19/04/2020

    [Resolvido]32 bits x 64 bits Empty 32 bits x 64 bits

    Mensagem  sergio de paula em 1/8/2020, 20:21

    Olá Alexandre, tentei o código desta forma :
    #If win64 Then
    Public Declare ptrsafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    #End If
    #If Win32 Then
    Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    #End If

    e não deu problema de compilação !!

    obrigado
    avatar
    sergio de paula
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 29
    Registrado : 19/04/2020

    [Resolvido]32 bits x 64 bits Empty Re: [Resolvido]32 bits x 64 bits

    Mensagem  sergio de paula em 1/8/2020, 20:22

    Obrigado, mais uma vez !!

      Data/hora atual: 14/8/2020, 23:40