Escritos
B. Piropo
Anteriores:
< Trilha Zero >
Volte de onde veio
06/04/1998

< Autorun II: Ajustando o Autorun >


A função "autorun", concebida para discos CD-ROM, pode ser usada com outros meios de armazenamento. Tanto é assim que na seção Dicas de minha página pessoal em [http://www.bpiropo.com.br] a dica "Windows 95: Trocando os ícones dos drives" tira proveito justamente dela para alterar os ícones que Windows 95 usa para representar discos rígidos. Na verdade a função "autorun" pode ser ativada até mesmo em drives de disquetes. O problema é que, neste caso, é preciso modificar o Registro, tarefa que não recomendo exceto para os usuários mais destemidos. Portanto, se você resolver fazê-lo em sua máquina, faça-o por sua conta e risco e se algo vier a dar errado não me venha com reclamações nem diga que não avisei.

Embora Windows 95 possa reconhecer arquivos Autorun.Inf em diversos meios, por padrão ele é ajustado para investigá-los apenas em alguns. Esta configuração está armazenada em uma chave do Registro denominada "NoDriveTypeAutoRun", encontrada em "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer". Seu conteúdo é do tipo binário e seu valor padrão (expresso em hexadecimal, como os demais valores do tipo binário do Registro) é 95 00 00 00. Os últimos três bytes assumem sempre o valor zero. O primeiro é uma "máscara de bits" ("bit mask") que define o tipo de drive onde a função é ativada. Uma máscara de bits é um valor binário que usa seus bits como "chave". Neste caso particular cada bit representa um tipo de meio de armazenamento e, ao assumir o valor "zero" ativa a função no meio correspondente. Na chave "NoDriveTypeAutoRun", os meios representados pelos bits, da esquerda para a direita (para os puristas: do bit sete para o bit zero) são: reservado, disco RAM, disco CD-ROM, drive remoto, disco rígido, disco removível, "NO_ROOT_DIR" e desconhecido (a MS não esclarece o que é o tipo "NO_ROOT_DIR" e o último tipo consta mesmo como "desconhecido"). Em binário, o valor padrão hexadecimal "95" assume a forma "1001 0101". Comparando os valores dos bits com os meios que representam percebe-se que por padrão a função está habilitada para discos RAM, discos CD-ROM, discos rígidos (por isto seu ícone pode ser mudado usando a função "autorun") e o estranho "NO_ROOT_DIR", seja lá que diabo isto for. Pronto: agora podemos ajustar a função "autorun".

Por exemplo: para desabilitá-la para todo e qualquer tipo de meio, inclusive drives de CD-ROM (semana passada vimos como fazê-lo para cada drive, individualmente), deve-se ajustar para "um" o valor dos bits correspondentes. A máscara de bits assume a forma "1011 1101", que em hexadecimal se exprime por "BD". O valor da chave seria então BD 00 00 00. Já se você deseja habilitar a função "autorun" para os meios removíveis (o que inclui disquetes), altere a máscara de bits para "1001 0001", ou "91" em hexadecimal. O valor da chave passará então a ser 91 00 00 00.

Para isto faça uma cópia de segurança do Registro e em seguida, com o editor de Registro RegEdit que mora no seu diretório WINDOWS, procure pela chave "NoDriveTypeAutoRun", cujo valor deve ser 95 00 00 00. Com cuidado, altere-o para 91 00 00 00 e saia do editor (se você não sabe como fazer uma cópia de segurança do Registro e não se sente à vontade usando um editor de Registro, refresque a memória com a série de colunas sobre o assunto publicada de 16/03 a 31/06/97 que pode ser encontrada na sua coleção ou na seção Escritos/Anos Anteriores da minha página pessoal).

Isto habilita Windows 95 a reconhecer os arquivos Autorun.Inf em disquetes. Agora, é preciso criá-los. Com um editor de textos tipo "ASCII puro" como o Notepad, crie um texto de duas linhas. A primeira deve conter apenas a expressão "[autorun]" (assim mesmo, entre colchetes, porém sem aspas) e a segunda "ICON = nomearq.ico". Grave este arquivo texto com o nome "Autorun.Inf" no diretório raiz de cada disquete que desejar exibir com seu próprio ícone. Grave também no diretório raiz do disquete o arquivo "Nomearq.Ico" do ícone desejado. Isto é tudo. A partir daí, sempre que um destes disquetes for introduzido no drive e o Windows Explorer for carregado, exibirá o ícone "nomearq" para representar o drive correspondente (se o Explorer já houver sido carregado antes de introduzir o disquete, basta selecionar o drive e teclar F5 para atualizar o ícone). E mais: se ao arquivo Autorun.Inf for acrescentada a linha "OPEN = nomearq.exe" especificando o nome de um arquivo executável também gravado no diretório raiz do disquete, um clique duplo sobre o ícone do drive na janela "Meu Computador" ou na janela direita do Explorer, ao invés de exibir o conteúdo do disquete, executará o arquivo especificado na linha "OPEN". Isto vale não apenas para disquetes, como para quaisquer meios removíveis (testei nos discos Jaz da Iomega e funcionou; não testei nos discos Zip, mas muito provavelmente funcionará também). Em máquinas com o Internet Explorer 4 o comportamento é ligeiramente diferente, mas também funciona.

B. Piropo