AfxOleRegisterControlClass
Rejestruje Klasa sterowania z bazy danych rejestracji systemu Windows.
BOOL AFXAPI AfxOleRegisterControlClass(
HINSTANCE hInstance,
REFCLSID clsid,
LPCTSTR pszProgID,
UINT idTypeName,
UINT idBitmap,
int nRegFlags,
DWORD dwMiscStatus,
REFGUID tlid,
WORD wVerMajor,
WORD wVerMinor
);
Parametry
hInstance
Dojście wystąpienia modułu skojarzone z klasą kontroli.clsid
Klasa Unikatowy identyfikator formantu.pszProgID
Unikatowy identyfikator formantu.idTypeName
Identyfikator zasobu ciąg, który zawiera nazwę typu czytelny dla użytkownika dla formantu.idBitmap
Identyfikator zasobu mapa bitowa jest używany do reprezentowania formant OLE w pasku narzędzi lub palety.nRegFlags
Zawiera jeden lub więcej z następujących flag:afxRegInsertableUmożliwia sterowanie do stawienia się w oknie dialogowym Wstaw obiekt obiekty OLE.
afxRegApartmentThreadingUstawia model wątka w rejestrze, aby ThreadingModel = mieszkania.
afxRegFreeThreadingUstawia model wątka w rejestrze, aby ThreadingModel = wolny.
Można połączyć dwie flagi afxRegApartmentThreading i afxRegFreeThreading Aby ustawić ThreadingModel = zarówno.Zobacz InprocServer32 w Windows SDK uzyskać więcej informacji dotyczących rejestracji model wątków.
[!UWAGA]
W wersjach MFC przed MFC 4.2 intnRegFlags parametr był BOOL parametru, bInsertable, że dozwolone lub niedozwolone sterowania do wstawienia w oknie dialogowym Wstaw obiekt.
dwMiscStatus
Zawiera jeden lub więcej z następujących flag stanu (opis flag, zobacz OLEMISC wyliczenie w Windows SDK):OLEMISC_RECOMPOSEONRESIZE
OLEMISC_ONLYICONIC
OLEMISC_INSERTNOTREPLACE
OLEMISC_STATIC
OLEMISC_CANTLINKINSIDE
OLEMISC_CANLINKBYOLE1
OLEMISC_ISLINKOBJECT
OLEMISC_INSIDEOUT
OLEMISC_ACTIVATEWHENVISIBLE
OLEMISC_RENDERINGISDEVICEINDEPENDENT
OLEMISC_INVISIBLEATRUNTIME
OLEMISC_ALWAYSRUN
OLEMISC_ACTSLIKEBUTTON
OLEMISC_ACTSLIKELABEL
OLEMISC_NOUIACTIVATE
OLEMISC_ALIGNABLE
OLEMISC_IMEMODE
OLEMISC_SIMPLEFRAME
OLEMISC_SETCLIENTSITEFIRST
tlid
Unikatowy identyfikator klasy kontroli.wVerMajor
Główny numer wersji tej klasy formantu.wVerMinor
Numer wersji pomocniczej klasy formantu.
Wartość zwracana
Różna od zera, jeśli klasa sterowania został zarejestrowany; inny sposób 0.
Uwagi
Umożliwia to kontrolę posługuje się w pojemnikach, które są OLE-control.AfxOleRegisterControlClassaktualizuje rejestr o nazwie i lokalizacji w systemie kontroli, a także określa model wątka, który obsługuje formantu w rejestrze.Aby uzyskać więcej informacji, zobacz technicznej 64 Uwaga, "Komórkowy Model wątkowości w OLE formantów," i o procesy i wątki w Windows SDK.
Przykład
// Member function implementation of class COleObjectFactory::UpdateRegistry
//
BOOL CMyAxCtrl::CMyAxCtrlFactory::UpdateRegistry(BOOL bRegister)
{
// TODO: Verify that your control follows apartment-model threading rules.
// Refer to MFC TechNote 64 for more information.
// If your control does not conform to the apartment-model rules, then
// you must modify the code below, changing the 6th parameter from
// afxRegInsertable | afxRegApartmentThreading to afxRegInsertable.
if (bRegister)
return AfxOleRegisterControlClass(
AfxGetInstanceHandle(),
m_clsid,
m_lpszProgID,
IDS_NVC_MFCAXCTL,
IDB_NVC_MFCAXCTL,
afxRegInsertable | afxRegApartmentThreading,
_dwMyOleMisc,
_tlid,
_wVerMajor,
_wVerMinor);
else
return AfxOleUnregisterClass(m_clsid, m_lpszProgID);
}
W powyższym przykładzie pokazano, jak AfxOleRegisterControlClass jest wywoływana z Flaga dla wstawiony i Flaga dla apartament modelu operacja logiczna pogrupowane w celu utworzenia szósty parametr:
afxRegInsertable | afxRegApartmentThreading,
Formantu pojawią się w oknie dialogowym Wstaw obiekt włączonych kontenerów i będzie on apartament obsługujące model.Formanty obsługujące model Apartment zapewnić że klasy statyczne dane są chronione przez blokad, tak, że podczas kontroli w jednym apartamencie uzyskuje dostęp do danych statycznych, nie jest wyłączone przez harmonogram przed zakończeniem, a inne wystąpienie tej samej klasy rozpoczyna się przy użyciu tych samych danych statycznych.Wszelkich praw dostępu do danych statycznych jest otoczony kod sekcji krytycznej.
Wymagania
Nagłówek:<afxctl.h>
Zobacz też
Informacje
AfxOleRegisterPropertyPageClass