Ir para conteúdo
Fórum Script Brasil
  • 0

REGISTRO WINDOWS 7 64 bits


Gustavo_Sid

Pergunta

Olá amigos.

Estou precisando de uma ajuda com registro do windows.

Fiz uma rotina para inserir uma chave no registro do windows, quando utilizo no Windows XP 32 bits funciona tudo lindo, o problema é quando coloco em sistemas 64 bits, aí não insere a chave no registro.

alguém pode me dizer como utilizo para 64 bits e como descobrir se o sistema é 64 ou 32 bits ???

Agradeço desde já.

O codigo que utilizei foi o seguinte:

procedure TfrmPricipal.prRegistrar;

Var

vChave: String;

Registro: TRegistry;

begin

vChave:= 'Valor';

Registro:= TRegistry.Create;

Registro.RootKey:= HKEY_LOCAL_MACHINE;

Registro.OpenKey('\SOFTWARE\Sistema Contabil',true);

Registro.WriteString('Valor',vChave);

FreeAndNil(Registro);

ShowMessage('Programa Registrado com sucesso');

end;

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Link para o comentário
Compartilhar em outros sites

  • 0

Não amigo. Desculpe me expressei mal.

Eu quis dizer pelo Delphi, se existe alguma função ou componente do Delphi que me de esta informação, se o sistema é 64 bits ou 32 bits?

E como gravo uma chave no Windows 64 bits??

Entendeu?

Abraços.

Link para o comentário
Compartilhar em outros sites

  • 0

Eu quis dizer pelo Delphi, se existe alguma função ou componente do Delphi que me de esta informação, se o sistema é 64 bits ou 32 bits?
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
function IsWindows64: Boolean;
type
  TIsWow64Process = function(AHandle:THandle; var AIsWow64: BOOL): BOOL; stdcall;
var
  vKernel32Handle: DWORD;
  vIsWow64Process: TIsWow64Process;
  vIsWow64: BOOL;
begin

  Result := False;

  vKernel32Handle := LoadLibrary('kernel32.dll');
  if (vKernel32Handle = 0) then Exit;

  try

  @vIsWow64Process := GetProcAddress(vKernel32Handle, 'IsWow64Process');
  if not Assigned(vIsWow64Process) then Exit;

  vIsWow64 := False;
  if (vIsWow64Process(GetCurrentProcess, vIsWow64)) then
    Result := vIsWow64;

  finally
    FreeLibrary(vKernel32Handle);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
   if IsWindows64 = true then
      showmessage('O sistema windows é 64 Bits')
   else
      showmessage('O sistema windows é 32 Bits')
end;

end.

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...