| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 
 |  
	if (bRegister)
    {
      BOOL retVal= AfxOleRegisterControlClass(
			                                        AfxGetInstanceHandle(),
			                                        m_clsid,
			                                        m_lpszProgID,
			                                        IDS_RES,
			                                        IDB_RES,
			                                        afxRegApartmentThreading,
			                                        _dwApartmentOleMisc,
			                                        _tlid,
			                                        _wVerMajor,
			                                        _wVerMinor);
 
      // mark as safe for scripting--failure OK
		  HRESULT hr = CreateComponentCategory(CATID_SafeForScripting, 
			  L"Controls that are safely scriptable");
 
		  if (SUCCEEDED(hr))
			  // only register if category exists
			  RegisterCLSIDInCategory(m_clsid, CATID_SafeForScripting);
			  // don't care if this call fails
 
		  // mark as safe for data initialization
		  hr = CreateComponentCategory(CATID_SafeForInitializing, 
			  L"Controls safely initializable from persistent data");
 
		  if (SUCCEEDED(hr))
			  // only register if category exists
			  RegisterCLSIDInCategory(m_clsid, CATID_SafeForInitializing);
			  // don't care if this call fails
		  return retVal;
    }
	else
		return AfxOleUnregisterClass(m_clsid, m_lpszProgID); | 
Partager