⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wmsnodeuser.cpp

📁 ftpserver very good sample
💻 CPP
字号:
#include "StdAfx.h"#include "WarMmcSnapin.h"#include "WmsNodeUser.h"   // class implemented#include "WarCollector.h"#include "PropPageUserGeneral.h"#include "PropPageSharePerms.h"#include "PropPageOptions.h"/////////////////////////////// PUBLIC ///////////////////////////////////////// {58E521B9-C601-4788-8F06-B61A93E1206F}const GUID WmsNodeUser::thisGuid = { 0x58e521b9, 0xc601, 0x4788, { 0x8f, 0x6, 0xb6, 0x1a, 0x93, 0xe1, 0x20, 0x6f } };WmsNodeUser::WmsNodeUser(war_if_user_ptr_t& rUserPtr): mUserPtr(rUserPtr) {}WmsNodeUser::~WmsNodeUser(){}//============================= LIFECYCLE ====================================//============================= OPERATORS ====================================//============================= OPERATIONS ===================================//============================= CALLBACK   ===================================HRESULT WmsNodeUser::OnSelect(IConsole *pConsole, BOOL bScope, BOOL bSelect){    IConsoleVerb *pConsoleVerb;    HRESULT hr = pConsole->QueryConsoleVerb(&pConsoleVerb);    _ASSERT(SUCCEEDED(hr));    //hr = pConsoleVerb->SetVerbState(MMC_VERB_RENAME, ENABLED, TRUE);    // can't get to properties (via the standard methods) unless    // we tell MMC to display the Properties menu item and    // toolbar button, this wil give the user a visual cue that    // there's "something" to do    hr = pConsoleVerb->SetVerbState(MMC_VERB_PROPERTIES, ENABLED, TRUE);    pConsoleVerb->Release();    return S_OK;}HRESULT WmsNodeUser::CreatePropertyPages(IPropertySheetCallback *lpProvider,                                                LONG_PTR handle){    AFX_MANAGE_STATE(AfxGetStaticModuleState());        CPropertyPage *pprop_page = NULL;        pprop_page = new CPropPageUserGeneral(mUserPtr);    HRESULT hr = MMCPropPageCallback(&pprop_page->m_psp);    if (SUCCEEDED(hr))    {        PROPSHEETPAGE psp;        memset(&psp, 0, sizeof(psp));        memcpy(&psp, &pprop_page->m_psp, sizeof(pprop_page->m_psp));                psp.dwFlags = PSP_DEFAULT | PSP_USECALLBACK;        HPROPSHEETPAGE hpage = CreatePropertySheetPage(&psp);        if (NULL == hpage)            return E_UNEXPECTED;                lpProvider->AddPage(hpage);            }    pprop_page = new CPropPageSharePerms(mUserPtr);    hr = MMCPropPageCallback(&pprop_page->m_psp);    if (SUCCEEDED(hr))    {        PROPSHEETPAGE psp;        memset(&psp, 0, sizeof(psp));        memcpy(&psp, &pprop_page->m_psp, sizeof(pprop_page->m_psp));                psp.dwFlags = PSP_DEFAULT | PSP_USECALLBACK;        HPROPSHEETPAGE hpage = CreatePropertySheetPage(&psp);        if (NULL == hpage)            return E_UNEXPECTED;                lpProvider->AddPage(hpage);            }    pprop_page = new CPropPageOptions(mUserPtr->GetOptions(),        WarOption::OL_USER);    hr = MMCPropPageCallback(&pprop_page->m_psp);    if (SUCCEEDED(hr))    {        PROPSHEETPAGE psp;        memset(&psp, 0, sizeof(psp));        memcpy(&psp, &pprop_page->m_psp, sizeof(pprop_page->m_psp));                psp.dwFlags = PSP_DEFAULT | PSP_USECALLBACK;        HPROPSHEETPAGE hpage = CreatePropertySheetPage(&psp);        if (NULL == hpage)            return E_UNEXPECTED;                lpProvider->AddPage(hpage);       }    return S_OK;}//============================= ACCESS     ===================================//============================= INQUIRY    ===================================const int WmsNodeUser::GetBitmapIndex(){    return (mUserPtr->IsEnabled() && mUserPtr->IsOriginEnabled())        ? NICON_USER : NICON_USER_DISABLED;}const _TCHAR *WmsNodeUser::GetDisplayName(int nCol){    switch(nCol)    {    case 0:        return mUserPtr->GetUserName().c_str();    case 1:        return mUserPtr->GetAuthModuleName();    default:        return _T("Invalid column Index");    }}const GUID & WmsNodeUser::getNodeType(){    return thisGuid; }/////////////////////////////// PROTECTED  ////////////////////////////////////////////////////////////////// PRIVATE    ///////////////////////////////////

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -