Antes de a Microsoft começar a usar o registro, eles tinham arquivos INI (arquivos de texto). Eles acharam muito difícil desenvolver uma boa plataforma usando apenas arquivos INI porque:
- Não é fácil suportar o Unicode.
-
É um arquivo de texto, portanto, as permissões são definidas no nível do arquivo, não no nível da chave. Quem tiver acesso ao arquivo tem acesso a todos os parâmetros.
-
Se dois segmentos estiverem tentando atualizar um arquivo INI simultaneamente, eles poderão excluir acidentalmente as alterações feitas pelo outro.
- Um programa pode abrir um arquivo INI no modo exclusivo e bloquear todos os demais.
- Os arquivos INI contêm apenas strings. Se você deseja armazenar dados binários, você tem que codificá-lo de alguma forma como uma string.
- A análise de um arquivo INI é lenta.
- A administração central de arquivos INI é difícil. Como eles podem estar em qualquer lugar do sistema, um administrador de rede não pode escrever scripts para verificar o status do aplicativo e atualizar os desatualizados.
- Os sistemas começaram a ser multiusuários e o controle das configurações de todos os usuários começou a ser impressionante. Isso significava, às vezes, arquivos INI separados para cada usuário.
Esses são os principais pontos que influenciaram a Microsot a procurar uma nova solução, e eles vieram com o registro. O registro é um banco de dados, então resolve os problemas anteriores, mas criou novos:
- É um ponto único de falha.
- É binário. Em caso de danos é muito difícil repará-lo com as próprias mãos.
- Aplicativos que colocam suas configurações no registro são menos portáveis.
- Navegação complexa.
Crédito para fonte significativa: link