Galera, desenvolvi essa matéria com diversos fins...
O primeiro deles é que ao final dessa matéria, você entenda um pouco mais sobre o nosso amado "teclado", e por fim, vou ensina-los como desativar teclas e inverte-las...
PARTE 1: Conhecendo o Teclado...
Bom, o teclado é um dispositivo excencial para o uso do pc, sem ele a interatividade e a produtividade do uso da míquina cairiam drísticamente.
A maioria das pessoas sabem que de fato o teclado é um hardware importante.
Quando muitos de nós percebemos que uma míquina não tem teclado, a primeira coisa que se passa na cabeça é: "a míquina estí inoperante", como se o teclado interfirisse diretamente no funcionamento de todo o resto, mas isso é normal porque o teclado é o principal fator que liga o homem com a maquina...
Imagine você postando no forum sem teclado... Ou mesmo no MSN...
Deu pra lembrar a importância do teclado?
Jí que o teclado é tão importante assim, porque não conhecermos mais sobre ele?
vamos entender o seu funcionamento...
Introdução e Funcionamento:-Teclado é o dispositivo de entrada mais comum e o principal periférico usado na interação direta com o computador. Permite operação de entrada de dados, um caracter (ou sàmbolo) de cada vez
-Surgiu juntamente com a primeira míquina de escrever.
-O princàpio de funcionamento do teclado consiste em uma interface que converte a seqüência de impulsos elétricos em sinais digitais e transfere os dados para a memória. Segue-se os seguintes passos desde a tecla quando pressionada até aparecer no vàdeo:
* Um chip no teclado varre a tecla pressionada e identifica através de um código que representa as letras do alfabeto.
* O processador transfere essa informação para a RAM que armazena a letra até que o PC esteja pronto para utilizar.
* Ao mesmo tempo o processador do teclado envia a informação para outro dispositivo, o Controlador de Interrupção.
* O Int Controller avisa ao PC para interromper seu trabalho e dar atenção para a seqüência de teclas armazenadas.
* A CPU passa o controle para a ROM BIOS que busca o código na RAM, checa a letra e envia à placa adaptadora de vàdeo para mostrar na tela.
[/b]
Tipos de Teclado:Vantagens:EXISTEM DOIS PROJETOS MAIS COMUNS, QUE SàO:
* Teclado capacitivo.
* Teclado de contato.
TECLADO CAPACITIVO
A movimentação de uma tecla altera a distância entre duas placas paralelas, mudando a capacitância entre elas, essa variação é detectada pelo circuito de varredura.Tipos de Contatos:* Cada tecla pode ser pressionada mais de 10 milhões de vezes(muio mais do que teclados de contato).
* Não apresentam problemas de quebra ou desgaste, jí que não existe contatos elétricos ou mecânicos
Regiões de um Teclado:? Contato mecânico: utiliza molas para voltar à posição inicial da tecla.
* Domo de borracha: contato reside no interior do domo, e a própria borracha força a tecla para sua posição inicial.
* Chaves de membrana: semelhante aos domos, mas de menor tamanho. São ideais para ambientes hostis, úmidos ou corrosivos, pois, isolam os contatos dentro do plístico.Layouts de um Teclado:Existem 3 regiões principais: Numérico, Alfanumérico e Funções especiais:
? O Teclado Numérico tem por finalidade facilitar a digitação de números e sinais de operação aritmética.
? Alfanumérico é utilizado como numa míquina de escrever comum, onde o caractere digitado é aceito pelo computador como tal.
* FUNÇÕES ESPECIAIS
* A tecla SHIFT mantida apertada, as letras maiúsculas e os caracteres de cima das teclas serão ativados.
* Tecla CAPS LOCK (Capitals Lock): Esta tecla quando ligada, fixa as letras em maiúsculas. Uma luz se acende no teclado indicando o estado de ligado da tecla.
* Tecla Back Space , Teclas de função F1 até F12 e etcManutenção de um Teclado:Salvo variações regionais e lingüàsticas, os teclados utilizam a disposição QWERTY, assim denominada pelas seis letras do canto superior esquerdo do teclado, originou-se das primeiras míquinas de escrever. Uma das únicas variações existentes é o layout de Dvorak-Dealey, sua idéia bísica era de aumentar a velocidade de digitação alternando os toques entre as mãos esquerda e direita, concentrando as vogais na esquerda e as consoantes mais utilizadas na direita.Scan Code:
O acúmulo de pó e outros resàduos no interior do teclado provocam o mau funcionamento. Para solucionar e prevenir este tipo de problema , devemos remover a tampa do teclado com cuidado para não desmontar as teclas e limpar os contatos com algodão seco.Código ASCII:
O teclado não conhece o sàmbolo associado a tecla pressionada ele apenas gera um código numérico(chamado código de varredura ou scan code) associado a tecla pressionada. Quando a tecla é liberada e gerado um novo código diferente do código de acionamentoComo evitar a "LER" (Lesão por esforço repetitivo):O BIOS transforma o código de varredura em código ASCII e o coloca em um buffer.A cada 45 minutos de digitação descanse 10 fazendo exercàcios com as mãos e pulsos. Consulte um especialista para ensinar-lhe os exercàcios.
As imagens a seguir ilustram o uso correto do teclado...
PARTE 2: Desativando e Alterando teclas:
Bom galera, nessa parte eu vou ensinar a vcs como se inverter teclar (swap) ou desativar teclas do teclado... Para isso usaremos uma tabela que se chama ScanCode.
DESATIVANDO
Para desativar uma ou mais teclas, primeiramente teremos que entender como é feito o processo.
Tomarei como exemplo a tecla "Insert", que é geralmente uma tecla que atrapalha um pouco...
O primeiro passo é saber o código da tecla na tabela ScanCode, o seu código na tabela abaixo é o "Scan 1 Make", de acordo com a tabela o código da tecla "Insert" é: E0 52.
Para desativarmos essa tecla, teremos que alteras o seu código para 0000, assim o teclado não irí entender quando a tecla for presionada, assim tornando-a inativa!
Para isso crie um valor binírio no registro com o nome de ScanCode Map em:HKLH\system\CurrentControlSet\Control\Keyboard Layout
Agora iremos atribuir um valor a ela, e nesse valor iremos remover o código da tecla...
PRESTE BASTANTE ATENÇàO NESSA PARTE!Esse é o padrão a se seguir ao remover uma tecla!
0x00000000 Header: Version. Set to all zeroes.
0x00000000 Header: Flags. Set to all zeroes.
0x00000003 Three entries in the map (including null entry).
0xE0520000 Remove Insert key (0xE052 --> 0x00).
0x00000000 Null terminator
O valor a ser atribuido ao ScanCode vai ser com base nessa tabela acima.
-A linha em verde indica o Header Version, sempre serí preenchida com zeros!
-A linha em azul marinho indica o Header Flags, sempre serí preenchida com zeros!
-A linha em marron indica as entradas no mapa, sempre serí 3!
-A linha em vermelho indica o codigo da tecla e o valor atribuido a ele, no caso CÓDIGO: E052 VALOR A SER ATRIBUIDO: 0000 (desativar)
-A linha em azul é a terminação que sempre serí preenchida com zeros!
só que no registro o valor binírio a ser atribuido deve ser invertido, usarei as cores para esclarecer;
00 00 00 00 00 00 00 00
03 00 00 00 52 e0 00 00
00 00 00 00 00 00
OBS: Esses dois últimos zeros devem ser colocados no caso de desativar uma tecla.
Adicionando esse valor ao ScanCode Map, ao reiniciar o pc, o insert não funcionarí mais!
INVERTENDO
Para se inverter uma é necerrírio atribuir o valor de uma pra outra como o exemplo abaixo:
tecla A
tecla B
Inversão:
tecla A <- tecla B
tecla B <- tecla A
Agora como botarmos isso no registro?
Fícil, ao invés de atribuirmos o valor 0000 (desativar) atribuimos o valor X (valor da tecla a ser invertida) e vice versa!
exemplo de inversão: Trocando o ENTER pelo CAPS LOCK
Após reiniciar, note a alteração!00 00 00 00 00 00 00 00
03 00 00 00 3A 00 1C 00
1C 00 3A 00 00 00 00 00
Tabela ScanCode
Para reverter o efeito de qualquer alteração, basta remover a chave criada (ScanCode Map) e reiniciar! pronto!
Note que é um assunto complicado e que necessita estudar pra pegar ele certinho...
Isso é legal pra fazer virus que inverte ou desativa teclas da vàtima...
Eh isso ae galera... qualquer coisas estamos ae...
vou dar alguns links de suporte para quem se interessar:
http://www.microsoft.com/whdc/device/in ... n-map.mspx
http://babbage.cs.qc.edu/courses/cs345/ ... ncodes.pdf







Responder com Citação
