참고 :
http://msdn2.microsoft.com/en-us/library/ms687763(VS.85).aspx
http://msdn2.microsoft.com/en-us/library/ms682790(VS.85).aspx

기본 속성 읽어오기

try
{
ICOMAdminCatalogPtr spCatalog(_T("COMAdmin.COMAdminCatalog"));
spCatalog->Connect(_T("localhost"));

ICatalogCollectionPtr spCatalogCollection =
(ICatalogCollectionPtr)spCatalog->GetCollection(_T("LocalComputer"));
spCatalogCollection->Populate();

long nCount = 0;
nCount = spCatalogCollection->Count;
if (nCount == 0)
{
AfxMessageBox(_T("내 컴퓨터의 DCOM 통신 속성을 읽어오지 못하였습니다."));
return;
}

ASSERT(nCount == 1);

ICatalogObjectPtr spCatalogObject;
spCatalogCollection->get_Item(0, (IDispatch**)&spCatalogObject);

_variant_t value;
spCatalogObject->get_Value(_T("DefaultAuthenticationLevel"), &value);
if (value.vt == VT_I4)
{
if (value.lVal >= 0 && value.lVal <= 6) { CComboBox* pAuthCombo = (CComboBox*)GetDlgItem(IDC_CBO_AUTH); pAuthCombo->SetCurSel(value.lVal);
}
}

spCatalogObject->get_Value(_T("DefaultImpersonationLevel"), &value);
if (value.vt == VT_I4)
{
if (value.lVal >= 1 && value.lVal <= 4) { CComboBox* pImpersonationCombo = (CComboBox*)GetDlgItem(IDC_CBO_IMPERSONATION); pImpersonationCombo->SetCurSel(value.lVal);
}
}
} catch (_com_error& e) {
AfxMessageBox(e.Description());
}
Read More