Compartilhar via


Práticas recomendadas para associações de arquivos

A lista a seguir são práticas recomendadas que você deve usar ao trabalhar com associações de arquivos.

Não copiar associações de arquivos do Registro

Recomendamos que você não copie as associações de arquivo existentes do registro. Isso geralmente leva à propagação de associações de arquivos mal formadas. Em vez disso, você deve seguir as etapas descritas em Cenário de Exemplo de Associação de Arquivos.

Evite Hard-Coding caminhos para o Registro sempre que possível

Assim como caminhos de codificação em programas podem causar problemas, caminhos de codificação rígida no registro também podem levar a problemas. Em vez disso, você deve usar cadeias de caracteres de expansão do Registro (REG_EXPAND_SZ) para fornecer independência de caminho quando aplicável. Por exemplo, em vez de usar este método:

HKEY_CLASSES_ROOT
   MyVendor.MyProgram.1
      DefaultIcon
         (Default) = C:\WINNT\hta.exe,1

Você deve usar este método:

HKEY_CLASSES_ROOT
   MyVendor.MyProgram.1
      DefaultIcon
         (Default) = "%SYSTEMROOT%\hta.exe,1"

Sempre encapsular cadeias de caracteres em expansão entre aspas

A expansão de cadeias de caracteres pode conter espaços quando elas se expandem. Como os espaços geralmente são interpretados como delimitadores de argumento, eles causam problemas em determinadas circunstâncias. Por exemplo, um comando para invocar MyProgram pode ser armazenado no registro como:

%SYSTEMROOT%\MyProgram %1 %2

MyProgram espera que %1 seja o caminho completo para um nome de arquivo e %2 é uma opção para indicar alguma ação. Se esse comando for executado com os argumentos C:\Program Files\My Documents\document.txt e /print e supondo um SYSTEMROOT de C:\WINNT, ele se expandirá para:

C:\WINNT\MyProgram C:\Program Files\My Documents\document.txt /print

Nesse caso, MyProgram interpreta que o primeiro argumento é C:\Program e o segundo argumento é Files\My, que não é o comportamento pretendido. Os argumentos são interpretados corretamente, no entanto, independentemente de conterem espaços, se as cadeias de caracteres em expansão forem encapsuladas entre aspas da seguinte maneira:

"%SYSTEMROOT%\MyProgram" "%1" "%2"

Não confunda reprodução automática/autorun com associações de arquivos

As Associações de Arquivos são semelhantes à Reprodução Automática/Autorun de algumas maneiras. No entanto, a Reprodução Automática/Autorun oferece instalações separadas e distintas daquelas fornecidas por associações de arquivos. Para obter mais informações, consulte Criando um aplicativo CD-ROM habilitado para Execução Automática.

Não confunda a Internet Explorer banco de dados MIME com associações de arquivos

As Associações de Arquivos são semelhantes ao banco de dados MIME do Windows Internet Explorer, na medida em que os tipos de arquivo podem (e devem) incluir uma definição de tipo MIME. No entanto, o banco de dados MIME Explorer internet é separado e distinto das associações de arquivos.

Usar ProgIDs formados e com versão adequados

Sempre use ProgIDs com controle de versão, mesmo que haja apenas uma versão do ProgID. Os ProgIDs com controle de versão ajudam a evitar conflitos e substituições de ProgID. Eles também permitem que diferentes versões de um aplicativo coexistam.

Não usar extensões de nome de arquivo curto

Extensões de nome de arquivo longo oferecem as seguintes vantagens:

  • O comprimento limitado de extensões curtas as torna propensas a colisões de extensão. Uma colisão de extensão ocorre quando a mesma extensão é usada para classificar vários tipos de arquivo. O uso de extensões longas diminui significativamente as chances de uma colisão.
  • Nomes de arquivos curtos tendem a ser um pouco enigmáticos. Extensões longas tendem a ser mais significativas porque informações adicionais podem ser inseridas na extensão.

Para obter mais informações, consulte extensões de nome de arquivo.

Registrar novos tipos de arquivo no banco de dados MIME IANA

A IANA (Autoridade de Números Atribuídos à Internet) mantém um banco de dados público de tipos MIME registrados. Ao definir um novo tipo de arquivo público, recomendamos que você também defina um tipo MIME para o tipo de arquivo e registre esse tipo com o IANA. Não há nenhum custo para o registro.

Inscrever-se com o Serviço Web do Windows para Associações de Arquivos

Os desenvolvedores de aplicativos podem se inscrever no Serviço Web do Windows que os usuários usam para encontrar aplicativos que podem operar em tipos de arquivo específicos. O processo de inscrição no serviço Web é detalhado no processo de integração do Sistema de Associação de Arquivos do Windows (KB 929149).

Cenário de exemplo de associação de arquivos

Diretrizes para gerenciar aplicativos padrão no Windows Vista e posterior

Programas padrão

Definir o acesso ao programa e os padrões do computador (SPAD)