BOOL AFXAPI AfxOleRegisterControlClass (HINSTANCE hInstance, REFCLSID clsid, LPCTSTR pszProgID, UINT idTypeName, UINT idBitmap, int nRegFlags, DWORD dwMiscStatus, REFGUID tlid, 단어 wVerMajor, 단어 wVerMinor );
# include lt;afxctl.h>
반환 값
0이 아닌 경우 control 클래스 등록 되었다; 그렇지 않으면 0。
매개 변수
hInstance
컨트롤 클래스와 연관 된 모듈의 인스턴스 핸들。
clsid
컨트롤의 고유 클래스 ID。
pszProgID
컨트롤의 고유 프로그램 ID。
idTypeName
컨트롤에 대해 사용자가 읽을 수 있는 형식 이름을 포함 하는 문자열의 리소스 ID。
idBitmap
도구 모음 또는 팔레트에서 OLE 컨트롤을 나타내는 데 사용 되는 비트맵의 리소스 ID。
nRegFlags
다음 플래그 중 하나 이상 포함:
메모nbsp;??MFC 4.2 이전 MFC 버전, int nRegFlags 매개 변수는 BOOL 매개 변수를 bInsertable, 허용 또는 개체 삽입 대화 상자에서 삽입할 컨트롤을 허용 안 함(&N)。
dwMiscStatus
(플래그 OLE 프로그래머용 참조참조 OLEMISC 열거형의 설명)에 대 한 다음과 같은 상태 플래그를 하나 이상 포함:
tlid
Control 클래스의 고유 ID。
wVerMajor
Control 클래스의 주 버전 번호。
wVerMinor
Control 클래스의 부 버전 번호。
주의
Control 클래스는 Windows 등록 데이터베이스에 등록합니다. 이 컨트롤을을 인식 OLE 컨트롤 컨테이너에서 사용할 수 있습니다. AfxOleRegisterControlClass 컨트롤의 이름 및 위치는 시스템 레지스트리를 업데이트 하 고 또한 레지스트리에 컨트롤 지원 스레딩 모델을 설정 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 기술 참고 64, 아파트 모델 스레딩에서 OLE 컨트롤 "," 및 에 대 한 프로세스와 스레드 Win32 SDK에서。
예제
/ 멤버 함수 구현 클래스 COleObjectFactory::UpdateRegistry / / /
BOOL CMyApartmentAwareCtrl::CApartmentCtrlFactory::UpdateRegistry(BOOL bRegister)
{
/ / TODO: 컨트롤을 다음과 같이 확인 / / 아파트 모델 스레딩 규칙.
/ 자세한 정보에 대 한 MFC TechNote 64를 참조 하십시오.
/ / 컨트롤에 부합 하지 않는 경우는 / / 아파트 모델 규칙을 수정 해야 합니다
/ / 코드를 아래에서 6 매개 변수 변경
/ / afxRegInsertable | Afxregapartmentthreading을
/ / afxRegInsertable.
nbsp; 경우 (bRegister)
???? Afxoleregistercontrolclass()을 반환 합니다.
??????? AfxGetInstanceHandle(),
??????? m_clsid,
??????? m_lpszProgID,
??????? IDS_APARTMENT,
??????? IDB_APARTMENT,
??????? afxRegInsertable | afxRegApartmentThreading,
??????? _dwApartmentOleMisc,
??????? _tlid,
??????? _wVerMajor,
??????? _wVerMinor);
? 다른
???? AfxOleUnregisterClass (m_clsid, m_lpszProgID)를 반환 합니다(&N).
위의 예제에서는 AfxOleRegisterControlClass 는 호출 방법에 대 한 플래그와 함께 삽입 가능와 함께 여섯 번째 매개 변수를 만들려고 ORed 아파트 모델에 대 한 플래그:
afxRegInsertable | afxRegApartmentThreading
컨트롤이 활성화 된 컨테이너에 대해 개체 삽입 대화 상자에 표시 됩니다 그리고 아파트 모델 인식 될 것입니다. 아파트 모델 인식 컨트롤 한 아파트에 있는 컨트롤에는 정적 데이터에 액세스 하는, 하는 동안 그것은 되지 않습니다 함으로 스케줄러 전에 완료 되 고 같은 정적 데이터를 사용 하 여 같은 클래스의 다른 인스턴스 시작 되도록 데이터 잠금에 의해 보호 되는 정적 클래스를 확인 해야 합니다. 정적 데이터에 대 한 모든 액세스는 임계 코드 둘러싸여 있을 것입니다.
참고 항목nbsp;AfxOleRegisterPropertyPageClass, AfxOleRegisterTypeLib, AfxOleUnregisterClass, AfxOleUnregisterTypeLib(&N)