Next Topic

Previous Topic

Book Contents

Codificando seus próprios pacotes de configurações

A solução Kaseya Desktop Policy and Migration da Kaseya é composta de duas partes: um mecanismo para capturar os estados do usuário, e um grande conjunto de pacotes de configurações que definem qual estado a ser movido para. Há um pacote de configurações para as configurações de gerenciamento de energia, outro para configurações do Word, outro para configurações do mouse, e assim por diante. Cada uma destes pacotes de configurações informa ao mecanismo o que capturar e permite que o mecanismo se encarregue dos detalhes de como fazê-lo.

Os pacotes de configurações usam uma linguagem declarativa para especificar as configurações nele contidas. Esta linguagem é um dialeto XML. e fácil de editar usando o editor de texto de sua preferência.

Um pacote básico de configurações se parece com:

    <Package Category="Examples" Name="Pinball"  
    Type="Application" Platforms="Windows" Version="1">
        <Descrição>
            Migra a configuração de música do jogo Pinball.
        </Descrição>
        <Localizar>
            <Nome>pinball.exe</Nome>
            <Tipo de localização="file" File="%programfiles%\Windows NT\Pinball\PINBALL.EXE" />
        </Localizar>
        <Componente>
            <Nome da configuração="Music" Type="boolean">
            	<Tipo de localização="registry" DataType="dword">
                     HKCU\Software\Microsoft\Plus!\Pinball\Music
                </Localização>
            </Configuração>
        </Componente>
    </Pacote>

Localizando as configurações

Para poder efetuar a migração de qualquer coisa, é preciso saber onde estão armazenadas as configurações. Aqui estão algumas ferramentas que podemos usar para realizar isso e como usá-las.

  • Regedit - É uma boa ferramenta porque vem com o SO, portanto, nada precisa ser instalado. Permite explorar o registro e ver exatamente como o aplicativo modifica aqui os valores. Você pode exportar chaves do registro nas quais está interessado, efetuar as alterações apropriadas, e a seguir comparar o arquivo exportado com os valores atuais. Observe que muitos aplicativos somente gravam as alterações no registro quando estão sendo fechados.
  • RegMon - Quando você deseja monitorar um configuração única no registro, tente usar o RegMon da Microsoft. Isso permite ver eventos ao vivo do registro quando acontecem, mas pode ser muito ruidoso. Use filtros-o pequeno funil no topo-para diminuir o voluma de informações.
  • FileMon - O que o RegMon faz para o registro, o FileMon faz para arquivos. Tem uma grande quantidade das mesmas questões de ruído, portanto, você deveria usar um técnica de filtragem similar: somente mostrar o acesso do aplicativo com o qual está trabalhando.

Variáveis

Ha´diversas formas de instalar e configurar os estados do usuário de um SO, portanto, você deveria usar variáveis para diretórios comuns. Isso torna mais robusto o pacote de configurações em ambientes em mudança: se o Microsoft altera onde algo é armazenado—o que o Vista, por exemplo, fez para diversas coisas—a variável irá localizar de forma correta o diretório apropriado.

Todas as variáveis são usadas com os percentuais circundantes no estilo do Windows: %MyVariable%. Não são sensíveis a maiúsculas e minúsculas.

Nome da variável

Descrição

Informações do usuário

%appdata%, %applicationdata%

O diretório AppData específico do usuário.

%cookies%

O diretório dos cookies do Internet Explorer do usuário.

%desktop%

O diretório Desktop específico do usuário.

%favorites%

Os favoritos do usuário são armazenados neste diretório,

%history%

O diretório do histórico de navegação do Internet Explorer do usuário.

%internetcache%

O diretório do cache do Internet Explorer.

%localapplicationdata%

O diretório Local AppData específico do usuário Estas configurações não são movidas em um perfil de roaming.

%mymusic%

O diretório Minhas músicas do usuário.

%mypictures%

O diretório Minhas fotografias do usuário.

%personal%

O diretório Meus documentos do usuário.

%profile%, %userprofile%

O diretório Perfil ou Inicial do usuário.

%programs%

O diretório dos programas do menu Iniciar do usuário.

%quicklaunch%

O diretório dos programas de Início rápido do usuário

%recent%

O diretório de itens recentes do usuário

%sendto%

O diretório dos programas Enviar para do usuário

%startmenu%

O diretório de itens do menu Iniciar específicos do usuário

%startup%

O diretório de itens de Inicialização específico do usuário

%tempdirectory%

O diretório Temp específico do usuário.

%templates%

O diretório de modelos do usuário

%username%

O nome de login do usuário (não seu nome completo).

Arquivos comuns

%commonapplicationdata%

O diretório AppData de todos os usuários.

%commondesktop%

O diretório Desktop de todos os usuários.

%commondocuments%

O diretório Documents de todos os usuários.

%commonprogramfiles%

O diretório Common Files de todos os usuários.

%commonstartmenu%

Todos os diretórios de itens do menu Iniciar do usuário.

%fonts%

Onde o sistema mantém suas fontes.

%profiles%

Onde o sistema mantém diretórios do usuário.

%programfiles%

Onde o sistema mantém seus programas.

%os%

Onde o SO está instalado.

%system%

Onde os arquivos do sistema são instalados.

%windir%

Onde o Windows está instalado.

Informações do computador

%computername%

O nome deste computador. Precisa ser qualificado em um domínio.

Onde colocar seus arquivos

Após seu pacote estiver pronto, coloque-o no KServer em %KSERVER_ROOT%\WebPages\ManagedFiles\VSAHiddenFiles\KUSM\ClientApp\SettingsPackages. Talvez seja preciso criar aquela pasta.

Permissões

O pacote de configurações precisa ter permissão de acesso por usuários com acesso de usuário. Geralmente é mais fácil conceder a Todos no grupo o acesso de leitura.