Clave ProgID

Un identificador de programación (ProgID) es una entrada del Registro que se puede asociar a un CLSID. Al igual que CLSID, el ProgID identifica una clase, pero con menos precisión porque no se garantiza que sea única globalmente.

Entrada del Registro

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\{ProgID}

Clave del Registro Descripción
CLSID Asocia un ProgID a un CLSID.
Insertable Indica que esta clase se puede insertar en contenedores OLE 2.
Protocolo Indica que esta clase OLE 2 se puede insertar en contenedores OLE 1.
Shell Proporciona información sobre la impresión del shell de Windows 3.1 y la apertura de archivos.

 

Comentarios

Puede usar un ProgID en situaciones de programación en las que no es posible usar un CLSID. Los progID no deben aparecer en la interfaz de usuario. No se garantiza que los progID sean únicos, por lo que solo se pueden usar cuando se pueden administrar las colisiones de nombres.

El formato de un ProgID es <Programa>.<Componente>.<Versión>, separado por puntos y sin espacios, como en "Word.Document.6". ProgID debe cumplir los siguientes requisitos:

  • No tener más de 39 caracteres.
  • No contener puntuación (incluidos los guiones bajos y barras diagonales), excepto uno o varios puntos.
  • No empezar por un dígito.
  • Ser diferente del nombre de clase de cualquier aplicación OLE 1, incluida la versión OLE 1 de la misma aplicación, si hay alguna.

Dado que progID no debe aparecer en la interfaz de usuario, puede obtener un nombre para mostrar llamando a IOleObject::GetUserType. Consulte también OleRegGetUserType.

La clave HKEY_LOCAL_MACHINE\SOFTWARE\Classes corresponde a la clave HKEY_CLASSES_ROOT, que se conservaba por la compatibilidad con versiones anteriores de COM.

IOleObject::GetUserType

OleRegGetUserType