正好前段时间对活动目录有一些了解。BOOL CreateWebSite(CString& strRootPath)
{
IADsContainer* iContainer;
IADs* iAds;
CString strAppPath;
char szExeName[_MAX_PATH+1];
char szDrive[_MAX_DRIVE];
char szDir[_MAX_DIR];
char szFName[_MAX_FNAME];
char szExt[_MAX_EXT];
GetModuleFileName(NULL,szExeName,_MAX_PATH);
_splitpath(szExeName,szDrive,szDir,szFName,szExt);
strAppPath=szDrive;
strAppPath+=szDir;
strRootPath=strAppPath;
//AfxMessageBox(strAppPath);
if(ADsGetObject(L"IIS://localhost/w3svc",IID_IADsContainer,(void**)&iContainer)==S_OK)
{
if(iContainer->GetObject(_bstr_t("IIsWebServer"), _bstr_t("1"),(IDispatch**)&iAds)==S_OK)
{
if(iAds->QueryInterface(IID_IADsContainer,(void**)&iContainer)==S_OK)
{
//获得网站的根目录
if(iContainer->GetObject(_bstr_t("IIsWebVirtualDir"),_bstr_t("Root"),(IDispatch**)&iAds)==S_OK)
{
//设置目录
if(iAds->Put(_bstr_t("Path"),_variant_t(strAppPath))==S_OK)
{
if(iAds->SetInfo()==S_OK)
{
iContainer->Release();
iAds->Release();
iContainer->Release();
iAds->Release();
return TRUE;
}
else
{
iContainer->Release();
iAds->Release();
iContainer->Release();
iAds->Release();
return FALSE;
}
}
else
{
iContainer->Release();
iAds->Release();
iContainer->Release();
iAds->Release();
return FALSE;
}
}
else
{
iContainer->Release();
iAds->Release();
iContainer->Release();
return FALSE;
}
}
else
{
iContainer->Release();
iAds->Release();
return FALSE;
}
}
else
{
iContainer->Release();
return FALSE;
}
}
else
{
return FALSE;
}
}