MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


    Alterar chave de registro de Português para Inglês (USA) no windows via vba

    avatar
    dantunes
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11
    Registrado : 15/08/2013

    Alterar chave de registro de Português para Inglês (USA) no windows via vba Empty Alterar chave de registro de Português para Inglês (USA) no windows via vba

    Mensagem  dantunes 6/2/2014, 19:42

    Srs,

    Peguei aqui no Fórum o código que o JPaulo passou para um outro membor e muito legal, mas eu estou com o seguinte problema...fiz o código todo de um programa usando o formato do meu computador que está em ingles (Data, Hora, inclusive a mudança de ; para ,) e quando rodo em um computador com formato em portugês algumas coisas dão problema:

    1) Claro que os formatos de data
    2) mas nos códigos alguns preciso mudar de in (polegadas) para cm(centimetros)
    3) mudar de , para ;

    por isso queria um código que fizesse essa alteração, alguém sabe dizer se este código do JPaulo já faz isso ou não, ele muda apenas as questões de hora e data?
    Como faço também um código para quando fechar o programa volte a informação original do sistema

    Num modulo novo, cole e salve;

    '*************************************************************************
    Option Explicit

    Private Const LOCALE_SDATE = &H1F
    Private Const LOCALE_STIMEFORMAT = &H1003

    Private Const WM_SETTINGCHANGE = &H1A

    Private Const HWND_BROADCAST = &HFFFF&

    Private Declare Function SetLocaleInfo Lib "kernel32" Alias "SetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String) As Boolean
    Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Private Declare Function GetSystemDefaultLCID Lib "kernel32" () As Long
    Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long

    Public Function SetDateTime() As Boolean
    'função que altera os formatos da data e hora do Regional Settings do Windows
    Dim dwLCID As Long
    dwLCID = GetSystemDefaultLCID()

    'aqui você altera o formato da data para o que desejar "dd-MM-yyyy"
    If SetLocaleInfo(dwLCID, LOCALE_SDATE, "dd-MM-yyyy") = False Then
    SetDateTime = False
    Exit Function
    End If

    'aqui você altera o formato das horas para o que desejar "HH:mm:ss"
    If SetLocaleInfo(dwLCID, LOCALE_STIMEFORMAT, "HH:mm:ss") = False Then
    SetDateTime = False
    Exit Function
    End If

    PostMessage HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0
    SetDateTime = True
    End Function
    '*************************************************************************


    Para chamar a função, por exemplo no abrir do fomulario principal;

    Private Sub Form_Open(Cancel As Integer)
    Call SetDateTime
    End Sub




    Muito obrigado pela ajuda
    avatar
    Convidado
    Convidado


    Alterar chave de registro de Português para Inglês (USA) no windows via vba Empty Re: Alterar chave de registro de Português para Inglês (USA) no windows via vba

    Mensagem  Convidado 11/2/2014, 06:14

    Boas amigo, envie-nos o bd para que possamos ver isto pra ti.

    Harysoh@hotmail.com

    Cumprimentos

      Data/hora atual: 28/3/2024, 09:44