AJUDA COM ALGORITMO GRAVAR CHAVE NO REGISTRO DO WI

TIDY 11/09/2013 17:31:52
#428720
desculpe pois o codigo eh em c++ e aqui nao tinha opção c++

o algoritmo eh de gravar uma chave no registro do windows mas nao estou conseguindo criar

#include <windows.h>

int main()
{
HKEY chave;
char regname[37]={[Ô]\\SOFTWARE\\Microsoft\\MSNQ\    este[Ô]};

RegCreateKey(HKEY_LOCAL_MACHINE,regname,&chave) != 0;

//{
//MessageBox(0,[Ô]Ocorreu um erro ao criar a chave![Ô],[Ô]Erro[Ô],0x10);
//return 1;//}
int numero=1;
RegSetValueEx(chave,[Ô]Nome[Ô],0,REG_DWORD,(LPBYTE)&numero,sizeof(1));
RegCloseKey(chave);

return 0;
}
OCELOT 12/09/2013 10:25:19
#428748
Não conferi realmente se tem algo errado ou não, mas como você está tentando gravar no HKEY_LOCAL_MACHINE a primeira coisa que me vem a cabeça que pode dar problema é que isso requer permissão de administrador, então tem certeza que o seu programa está sendo executado como administrador?
AJSO 12/09/2013 13:22:54
#428759
Caro TIDY

Para cada variável que vc faz no seu código [ô]caminho[ô] sugiro vc verificar para se é válido ou não..............

Olhe este exemplo do MSDN

// registry_write.cpp
// compile with: /clr
using namespace System;
using namespace Microsoft::Win32;

int main()
{
// The second OpenSubKey argument indicates that
// the subkey should be writable.
RegistryKey^ rk;
rk = Registry::CurrentUser->OpenSubKey([Ô]Software[Ô], true);
if (!rk)
{
Console::WriteLine([Ô]Failed to open CurrentUser/Software key[Ô]);
return -1;
}

RegistryKey^ nk = rk->CreateSubKey([Ô]NewRegKey[Ô]);
if (!nk)
{
Console::WriteLine([Ô]Failed to create [ô]NewRegKey[ô][Ô]);
return -1;
}

String^ newValue = [Ô]NewValue[Ô];
try
{
nk->SetValue([Ô]NewKey[Ô], newValue);
nk->SetValue([Ô]NewKey2[Ô], 44);
}
catch (Exception^)
{
Console::WriteLine([Ô]Failed to set new values in [ô]NewRegKey[ô][Ô]);
return -1;
}

Console::WriteLine([Ô]New key created.[Ô]);
Console::Write([Ô]Use REGEDIT.EXE to verify [Ô]);
Console::WriteLine([Ô][ô]CURRENTUSER/Software/NewRegKey[ô]
[Ô]);
return 0;
}



Boa sorte
Faça seu login para responder