 |
 |
 |
Autor |
Mensagem |
Lemos
Usuário


Registrado: 14/04/09 Mensagens: 802 Localização: Rio de Janeiro - RJ |
|
Qual o erro no Script: reconhecer o PC e alterar a variável? |
|
Amigos, segui a dica do Edirlei e fiz o Seguinte:
//---Begin Script Builder: Mostrar a chave do meu Windows no label Key---//
SetLabelText('Key', 'Key: '+RegReadString($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','ProductId','0'));
//---End Script Builder---//
WriteGlobalVar('PCID', 0);
//---Begin Script Builder: Alterar a variável PCID em função da identidade do Windows e mostrar o resultado no label PcID---//
if (RegValueExists($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','CHAVE MOSTRADA NO LABEL') = true) then
WriteGlobalVar('PCID', 1);
//---End Script Builder---//
SetLabelText('Objeto16', 'PcID:' +IntToStr(ReadGlobalVar('PCID')));
Vamos lá:
//---Begin Script Builder: Mostrar a chave do meu Windows no label Key---//
SetLabelText('Key', 'Key: '+RegReadString($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','ProductId','0'));
//---End Script Builder---//
Aqui a chave do PC onde roda o Jogo é mostrada no Label Key
//---Begin Script Builder: Alterar a variável PCID em função da identidade do Windows e mostrar o resultado no label PcID---//
if (RegValueExists($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','CHAVE MOSTRADA NO LABEL') = true) then
WriteGlobalVar('PCID', 1);
//---End Script Builder---//
SetLabelText('Objeto16', 'PcID:' +IntToStr(ReadGlobalVar('PCID')));
Primeiro eu declarei a variável PCID=0. Depois eu usei a função RegValueExists para checar a chave existente. Pelo que entendi, se a chave for igual, ela retorna true. Então fiz um script que se ela fosse = a true, a variável PCID mudaria para 1. Depois eu fiz ela aparecer no Label Objeto16: SetLabelText('Objeto16', 'PcID:' +IntToStr(ReadGlobalVar('PCID')));
A verificação não mostra erros, eu salvei e rodei, mas a variável PCID, mostrada no Label, não sai de zero, testei colocando a chave mostrada no Label certinha, do jeito que está escrito e testei com uma outra chave.
O Objetivo é alterar uma variável global em função da chave do PC. O mapa inicial só carregaria se a chave checada fosse a correta, a variável retornaria 1. Qualquer valor diferente retorna 0 e o mapa não carrega, ou carrega um mapa com uma mensagem de erro.
Abraço!
_________________ Lemos
http://alemdanimacao.zip.net/
 |
|
Qua Out 28, 2009 4:06 pm |
 |
 |
Edirlei
Administrador


Registrado: 15/03/08 Mensagens: 760
|
|
|
|
Você não pode passar o valor da chave na função RegValueExists, com essa função só vai ser retornado true se você verificar se existe o "ProductId".
if (RegValueExists($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','CHAVE MOSTRADA NO LABEL') = true) then
A função não vai ler o dado associado, e sim se aquele valor existe, mas não verifica o que esta gravado nele.
Um código fala mais do que mil palavras:
 |  | if (RegValueExists($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','ProductId') = true) then
begin
if (RegReadString($80000002, 'SOFTWARE\Microsoft\Windows\CurrentVersion\','ProductId','0') == 'CHAVE MOSTRADA NO LABEL') then
begin
//O valor ProductId existe e o dado associado a ele é o mesmo que foi mostrado antes no label.
end
else
//O valor ProductId existe mas o dado associado a ele é diferente do que foi mostrado antes no label.
end
else
//O valor ProductId não existe. |
|
|
Qui Out 29, 2009 3:29 am |
 |
 |
Lemos
Usuário


Registrado: 14/04/09 Mensagens: 802 Localização: Rio de Janeiro - RJ |
|
|
|
Cara, vou checar isso o quanto antes, valeu mesmo! Mas me fala só mais uma coisa, para aprender essa linguagem, o que eu tenho que procurar, pque os materiais que eu tenho de Pascal nunca mostram elementos como esses que você passa, é como se eu estivesse estudando álgebra para uma prova de geometria... Se for necessário, penso em fazer um curso mesmo, mas queria ir na boa, para não perder tempo e dinheiro.
Se nessa nova versão você melhorar a documentação com pelo menos 1 exemplo como esse para cada script, já vai clarear muito a nossa vida!
Mais uma vez, obrigado.
_________________ Lemos
http://alemdanimacao.zip.net/
 |
|
Qui Out 29, 2009 11:28 am |
 |
 |
Lemos
Usuário


Registrado: 14/04/09 Mensagens: 802 Localização: Rio de Janeiro - RJ |
|
|
|
Edirlei, consegui! Segui todo o passo-a-passo! Na condição = true (a chave existe e é igual, eu coloquei a variável em 1, na condição 2, existe mas é diferente, a variável muda para 2). Na condição = false, a chave inexiste, a variável ficaria em 0. Usei como teste as chaves do pc da firma e do meu e as variáveis mudam perfeitamente!
Com as variáveis sendo afetadas, basta fazer com que o mapa inicial só carregue se a variável PCID = 1, caso contrário carregaria um mapa com uma mensagem de erro!
Obrigado mesmo!
Agora vou aperfeiçoar o script para que os dados possam ser gravados em banco de dados.
Abraço!
_________________ Lemos
http://alemdanimacao.zip.net/
 |
|
Qui Out 29, 2009 11:09 pm |
 |
 |
|
|
 |
 |
 |
|