Udostępnij za pośrednictwem


Klucz progID

Identyfikator programowy (ProgID) to wpis rejestru, który można skojarzyć z identyfikatorem CLSID. Podobnie jak CLSID, identyfikator ProgID identyfikuje klasę, ale z mniejszą precyzją, ponieważ nie ma gwarancji, że jest globalnie unikatowy.

Wpis rejestru

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\{ProgID}

Klucz rejestru Opis
CLSID Kojarzy identyfikator progID z identyfikatorem CLSID.
z możliwością wstawiania Wskazuje, że ta klasa można wstawić w kontenerach OLE 2.
protokołu Wskazuje, że ta klasa OLE 2 jest wstawiane w kontenerach OLE 1.
Shell Udostępnia drukowanie powłoki systemu Windows 3.1 i plik Otwórz informacje.

 

Uwagi

Można użyć identyfikatora ProgID w sytuacjach programistycznych, w których nie można użyć identyfikatora CLSID. Identyfikatory ProgID nie powinny być wyświetlane w interfejsie użytkownika. ProgID nie mają gwarancji, że są unikatowe, dlatego mogą być używane tylko wtedy, gdy można zarządzać kolizjami nazw.

Format progID to <Program>.<Składnik>.<wersja>, oddzielona kropkami i bez spacji, jak w programie Word.Document.6. Identyfikator ProgID musi spełniać następujące wymagania:

  • Nie ma więcej niż 39 znaków.
  • Nie zawiera znaków interpunkcyjnych (w tym podkreśleń i ukośników) z wyjątkiem co najmniej jednego kropki.
  • Nie zaczynaj od cyfry.
  • Być inny niż nazwa klasy dowolnej aplikacji OLE 1, w tym OLE 1 w tej samej aplikacji, jeśli istnieje.

Ponieważ identyfikator ProgID nie powinien być wyświetlany w interfejsie użytkownika, można uzyskać nazwę wyświetlaną, wywołując IOleObject::GetUserType. Zobacz również OleRegGetUserType.

Klucz HKEY_LOCAL_MACHINE\SOFTWARE\Classes odpowiada kluczowi HKEY_CLASSES_ROOT, który został zachowany w celu zachowania zgodności z wcześniejszymi wersjami modelu COM.

IOleObject::GetUserType

OleRegGetUserType