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 copie associações de ficheiros do Registo
- Evite Hard-Coding caminhos para o registro sempre que possível
- Sempre envolver strings expansíveis em aspas
- Não confunda reprodução automática/execução automática com associações de ficheiros
- Não confunda o banco de dados MIME do Internet Explorer com associações de arquivo
- usar ProgIDs devidamente formados e versionados
- não use extensões de nome de arquivo curto
- registrar novos tipos de arquivo no banco de dados MIME IANA
- Inscreva-se no Windows Web Service para associações de ficheiros
- Tópicos relacionados
Não copie associações de arquivo do registro
Recomendamos que você não copie associações de arquivo existentes do Registro. Isso muitas vezes 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 arquivo.
Evite Hard-Coding caminhos para o registro sempre que possível
Assim como os caminhos de codificação fixa em programas podem causar problemas, os caminhos de codificação fixa no registro do sistema 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 envolva cadeias de caracteres em expansão entre aspas
Quando se expandem, as strings podem conter espaços. Como os espaços são frequentemente interpretados como delimitadores de argumentos, 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 é o caminho completo para um nome de arquivo, e %2 é uma opção para indicar alguma ação. Se este comando for executado com argumentos C:\Program Files\My Documents\document.txt e /print, e assumindo uma raiz de sistema de C:\WINNT, ele se expande 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 estiverem entre aspas da seguinte maneira:
"%SYSTEMROOT%\MyProgram" "%1" "%2"
Não confunda reprodução automática/execução automática com associações de ficheiros
As associações de arquivos são semelhantes à reprodução automática/execução automática em alguns aspetos. No entanto, Autoplay/Autorun oferece recursos separados e distintos daqueles fornecidos por associações de arquivos. Para obter mais informações, consulte Criação de uma aplicação com suporte para AutoRun CD-ROM.
Não confunda o banco de dados MIME do Internet Explorer com associações de arquivo
As associações de arquivo são semelhantes ao banco de dados MIME do Windows Internet Explorer, em que os tipos de arquivo podem (e devem) incluir uma definição de tipo MIME. No entanto, o banco de dados MIME do Internet Explorer é separado e distinto das associações de arquivo.
Usar ProgIDs devidamente formados e versionados
Sempre use ProgIDs versionados, mesmo que haja apenas uma versão do ProgID. Os ProgIDs versionados ajudam a evitar conflitos de ProgID e sobreposições. Eles também permitem que diferentes versões de um aplicativo coexistam.
Não use extensões de nome de arquivo curto
As extensões de nome de arquivo longo oferecem as seguintes vantagens:
- O comprimento limitado de extensões curtas torna-as 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 ficheiro. O uso de extensões longas diminui significativamente as chances de 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 incorporadas na extensão.
Para obter mais informações, consulte as extensões de nome de ficheiro .
Registrar novos tipos de arquivo no banco de dados MIME IANA
A Internet Assigned Numbers Authority (IANA) mantém uma base de dados pública de tipos MIME registados. 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á custo para inscrição.
Inscreva-se no Windows Web Service para associações de arquivos
Os desenvolvedores de aplicativos podem se inscrever no Windows Web Service que os usuários usam para localizar aplicativos que podem operar em tipos de arquivo específicos. O processo de registo no serviço web é detalhado no processo de integração do Sistema de Associação de Arquivos do Windows (KB 929149).
Tópicos relacionados