Chave ProgID independente de versão
Associa um ProgID a um CLSID. Essa chave é usada para determinar a versão mais recente de um aplicativo de objeto.
Entrada do Registro
HKEY_LOCAL_MACHINE\SOFTWARE\Classes
<version-independent ProgID>
CurVer = ProgID
Comentários
A chave HKEY_LOCAL_MACHINE\SOFTWARE\Classes corresponde à chave HKEY_CLASSES_ROOT, que foi mantida para compatibilidade com versões anteriores do COM.
O formato do <ProgID> independente de versão é <programa.<>componente>, separado por pontos, sem espaços e sem número de versão. O ProgID independente de versão, como o ProgID, pode ser registrado com um nome legível por humanos.
ProgID é o ProgID da versão mais recente instalada da classe.
Os aplicativos devem registrar um identificador programático independente de versão sob a chave ProgID independente de versão. O ProgID independente de versão refere-se à classe do aplicativo e não muda de versão para versão, permanecendo constante em todas as versões, por exemplo, Documento do Microsoft Word. Ele é usado com linguagens de macro e refere-se à versão atualmente instalada da classe do aplicativo. O ProgID independente de versão deve corresponder ao nome da versão mais recente do aplicativo objeto.
Por exemplo, o ProgID independente de versão é usado quando um aplicativo de contêiner cria um gráfico ou tabela com um botão da barra de ferramentas. Nessa situação, o aplicativo pode usar o ProgID independente de versão para determinar a versão mais recente do aplicativo de objeto necessário.
O ProgID independente de versão é armazenado e mantido exclusivamente pelo código do aplicativo. Quando fornecido o ProgID independente de versão, a função CLSIDFromProgID retorna o CLSID da versão atual.
Você pode usar CLSIDFromProgID e ProgIDFromCLSID para converter entre essas duas representações.
Você pode usar IOleObject::GetUserType ou OleRegGetUserType para alterar o identificador para uma cadeia de caracteres exibível.
Se um manipulador personalizado não for usado, a entrada deverá ser definida como OLE32.DLL, conforme mostrado no exemplo a seguir:
HKEY_CLASSES_ROOT\CLSID\{00000402-0000-0000-C000-000000000046}
InprocHandler = ole32.dll
Tópicos relacionados