Atenção estou com novo endereço web: página inicial: linguagemprisma.br4.biz blog: linguagemprisma.br4.biz/blog wordpress host: linguagemprismablog.wordpress.com Prisma4ever.
Continue readingUncategorized
Registro do Windows (deletando valores)
A novidade aqui é a função de apagar valores ou subchaves vazias. (o restante já foi explicado nos posts anteriores)
1 |
ret = win.RegDeleteValor( ch , 'TESTE_STR' ); |
Ela retorna verdadeiro em caso de sucesso ou nulo em caso de falha. Dica: use win.poe( win.ObtErroMsg() ) para ver o último erro em caso de falha; Obs. No Windows 7 e superiores é…
Continue readingRegistro do Windows ( escrevendo valores )
Exemplo de como escrever (definir) valores no registro do Windows. Segue o código comentado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
/** exemplo 02 como escrever (definir valor) em chave de registro **// inclua'win' //01 - abra um registro já criado em modo KEY_ESCRITA (ou crie um): k = win.RegAbraChave( HKEY_CURRENT_USER , 'PrismaInfo', KEY_ESCRITA); //gravando em [HKEY_CURRENT_USER>SessionInformation] /** poderia ser: HKEY_CLASSES_ROOT; HKEY_LOCAL_MACHINE; HKEY_USERS OU HKEY_CURRENT_CONFIG (ao critério do programador. ** //02 use a funcao win.RegDefValor(parametros: ( chave , 'nome' , TIPO , "valor"); se k entao //caso haja erro o retorno é nulo //________________________________________________________________________ //03 ESCREVENDO STRING ret = win.RegDefValor( k , 'TESTE_STR' , REG_SZ , conv_w'uma string em prisma'); se ret entao imprima"SUCESSO" senao imprima"ERRO" fim ret = win.RegDefValor( k , 'TESTE_MULTISTR' , REG_MULTI_SZ , //os argumentos podem ser em linhas diferentes sem problema, só não esqueça da vírgula {'primeira string' , 'segunda string' , 'terceira string','quarta string', 'quinta string' } ); se ret entao imprima"SUCESSO" senao imprima"ERRO" fim //abra o regedit e veja nessa chave acima o nome TESTE e seu valor! //________________________________________________________________________ //04 ESCREVENDO NÚMERO: //vamos aproveitar a mesma chave aberta, mas pode abrir outra se quiser ret = win.RegDefValor( k , 'TESTE_NUM' , REG_DWORD , 1000000); se ret entao imprima"SUCESSO" senao imprima"ERRO" fim //lembrando que no registro fica em formato hexa, mas a função de leitura //obtém o valor em formato número prisma novamente. //________________________________________________________________________ //05 ESCREVENDO BYTES(BINARIO): (passe uma tabela) ret = win.RegDefValor( k , 'TESTE_BIN' , REG_BINARY , {0X01,0X04,0XFF,0XAF,0X09} ); se ret entao imprima"SUCESSO" senao imprima"ERRO" fim //06 não esqueça de fechar a chave aberta após usada. win.RegFecheChave(k); senao //se o retorno de abertura da chave for nulo, esta exceção será executada imprima(conv_c'valor de chave inválido:' , k); //Esta é uma nova função simples de mensagem em win, sem título e com ícone de atenção. win.poe( conv_w'chave não pode ser aberta ou não foi encontrada'); fim //modifique o nome de chave na função win.RegAbraChave acima só para ver o erro; |
Detalhes: Veja que a função de abertura é simples: chave = win.RegAbraChave( HKEY_CHAVE , ‘NomeSubchave ‘, KEY_TIPO); em que: chave é o retorno da chave aberta ou nulo caso tenha erro. HKEY_CHAVE = é o nome da chave mestra onde…
Continue readingSequência de Fibonacci
1 2 3 4 5 6 7 8 9 10 11 12 13 |
//série de Fibonacci funcao fib(n) a, b = 0, 1 enquanto a < n inicio es.escreva(a, ' ') a, b = b, a+b fim imprima() fim fib(1000) // 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 |
Continue reading