Página 1 de 1

RegistryWrite() Tem como apagar uma chave no RegEdit?

Enviado: 29 Jan 2017 16:58
por NiltonGM
Amigos,

Tem como eu apagar uma chave no registro do Windows (Regedit)?
Para Gravar uma Chave e seu conteúdo eu uso: RegistryWrite( "HKEY_CURRENT_USER\SOFTWARE\Sistrom\MinhaChaveErrada", "Conteudo da chave" )
Para Ler um Conteúdo da minha Chave eu uso: var := RegistryRead( "HKEY_CURRENT_USER\SOFTWARE\Sistrom\MinhaChaveErrada" )
E para apagar a chave e seu conteúdo, como faço? Só manualmente?

RegistryWrite() Tem como apagar uma chave no RegEdit?

Enviado: 29 Jan 2017 23:50
por Toledo
Amigo, tente o seguinte:

win_regDelete( "HKEY_CURRENT_USER\SOFTWARE\Sistrom\MinhaChaveErrada" )

Abraços,

RegistryWrite() Tem como apagar uma chave no RegEdit?

Enviado: 30 Jan 2017 08:24
por Pablo César
Está certo o nobre colega Toledo. Esta é a função em Harbour e com certeza irá funcionar com qualquer ferramenta em que utilize-se o Harbour.

As funções RegistryWrite e RegistryRead em HMG, nada mais é que um pseudo-function. Isto é outra forma de chamar as mesmas funções win_regread e win_regwrite pelo #xtranslate em Harbour.

E essas funções do Harbour foram disponibilizadas apartir de 2012, veja o ChangeLog:
Screen68.png
Eu na minha ultima aplicação que fiz sobre alteração de registro do Windows, preferi apenas inutilizar a chave para "" do que deletá-la. Ora porque essa chave pode mudar o seu valor. Mas a chave que eu crio nesse app é sempre a mesma, portanto não crio algo errado. Alias prefiro deixar esse lixinho no registro do que ficar excluindo muito... tem que haver precaução mais ainda quando trata-se de usuário comum. Em alguns casos exige direitos de administrador para efetivar alguma mudança. Isso por causa do UAC.

RegistryWrite() Tem como apagar uma chave no RegEdit?

Enviado: 30 Jan 2017 08:32
por Pablo César
Correção: a win_regwrite existe desde 2011 em Harbour pelo grande Viktor Szakats

RegistryWrite() Tem como apagar uma chave no RegEdit?

Enviado: 30 Jan 2017 17:07
por NiltonGM
Muito obrigado Toledo.
Pablo, na verdade não se trata de uma chave errada, o exemplo acima foi só para ilustrar, trata-se de uma atualização de meu aplicativo já rodando algum tempo, por isso umas 3 ou 4 chaves ficaram obsoletas.

Abraços

RegistryWrite() Tem como apagar uma chave no RegEdit?

Enviado: 31 Jan 2017 07:32
por Pablo César
Pablo César escreveu:Mas a chave que eu crio nesse app é sempre a mesma, portanto não crio algo errado.
Estou falando do meu caso. Mas tudo bem, entendi.