junapaula Novato


Registrado: Segunda-Feira, 10 de Julho de 2023 Mensagens: 6
|
Enviada: Qua Jul 26, 2023 6:05 pm Assunto: erro registro windows 10 Lazarus |
|
|
Estou utilizando este código no windows 10 para escrever no registro e estou obtendo erro, nai deixa gravar no registro... programa sendo executado como administrador (estou usando o lazarus, pois ele gera executável de 64bits diferente da minha versão de delphi7).
Código: | Uses
Windows, Messages .... Registry; // Não esqueça de adicionar a Unit Registry na sessão uses...
procedure TForm1.Button1Click(Sender: TObject);
Var
Reg : TRegistry;
Begin
Reg := TRegistry.Create;
try
with Reg do
begin
RootKey := HKEY_CLASSES_ROOT;
OpenKey('\MeuPrograma', True);
WriteString('', 'Arquivo do meu programa'); //Nome dado ao arquivo de sua aplicação. "Ex: Imagem Gif".
CloseKey;
OpenKey('MeuPrograma\DefaultIcon', True);
// O primeiro parâmetro da linha de comando abaixo, é para escrever uma string vazia.
// E o último parâmetro é para colocar o ícone da sua aplicação nos arquivos que serão abertos por ela.
WriteString('', Application.ExeName + ',0');
CloseKey;
OpenKey('MeuPrograma\shell\open\command', True);
WriteString('', Application.ExeName + ' "%1"');
CloseKey;
RootKey := HKEY_CLASSES_ROOT;
OpenKey('\.ext', True); // Substitua o "ext" pela extensão que você deseja utilizar.
WriteString('', 'MeuPrograma');
CloseKey;
end;
finally
Reg.CloseKey;
Reg.Free;
end;
End;
|
a mesma dica funciona perfeitamente em windows 7 |
|
johnny-walker Moderador


Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Sex Ago 25, 2023 7:20 am Assunto: |
|
|
Certos locais do registro somente podem ser lidas pelo administrador, tente abrir a chave em vez de OpenKey abrir com OpenKeyReadOnly.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|