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

📄 wmsnodeprotocols.cpp

📁 ftpserver very good sample
💻 CPP
字号:
#include "StdAfx.h"#include "WarMmcSnapin.h"#include "WmsNodeProtocols.h"   // class implemented#include "WarCollector.h"#include "WarIfServer.h"#include "WmsNodeProtocolFtp.h"#include "WmsNodeProtocolHttp.h"/////////////////////////////// PUBLIC ///////////////////////////////////////// {7F79AF2B-BE28-4c54-B9A3-4F69ADB846EA}const GUID WmsNodeProtocols::thisGuid = { 0x7f79af2b, 0xbe28, 0x4c54, { 0xb9, 0xa3, 0x4f, 0x69, 0xad, 0xb8, 0x46, 0xea } };WmsNodeProtocols::WmsNodeProtocols(war_if_site_ptr_t& rSitePtr): mSitePtr(rSitePtr) // Deleted by parent{}WmsNodeProtocols::~WmsNodeProtocols(){}//============================= LIFECYCLE ====================================//============================= OPERATORS ====================================//============================= OPERATIONS ===================================//============================= CALLBACK     ===================================HRESULT WmsNodeProtocols::OnExpand(IConsoleNameSpace *pConsoleNameSpace,                                  IConsole *pConsole,                                  HSCOPEITEM parent){    if (GetHandle() == NULL)         SetHandle((HANDLE)parent);    if (!bExpanded)     {        // create the child nodes, then expand them        for(int i = 0; i < 2; i++)        {            CDelegationBase *pnew_node;            SCOPEDATAITEM sdi;            switch(i)            {            case 0:                pnew_node = new WmsNodeProtocolFtp(mSitePtr);                break;			case 1:				pnew_node = new WmsNodeProtocolHttp(mSitePtr);                break;            }            ZeroMemory(&sdi, sizeof(SCOPEDATAITEM));            sdi.mask = SDI_STR|   // Displayname is valid                SDI_PARAM     |   // lParam is valid                SDI_IMAGE     |   // nImage is valid                SDI_OPENIMAGE |   // nOpenImage is valid                SDI_PARENT    |                SDI_CHILDREN;                        sdi.relativeID  = (HSCOPEITEM)parent;            sdi.nImage      = pnew_node->GetBitmapIndex();            sdi.nOpenImage  = pnew_node->GetBitmapIndex();            sdi.displayname = MMC_CALLBACK;            sdi.lParam      = (LPARAM)pnew_node;     // The cookie                        HRESULT hr = pConsoleNameSpace->InsertItem(&sdi);            _ASSERT( SUCCEEDED(hr) );                        pnew_node->SetHandle((HANDLE)sdi.ID);        }    }     return S_OK;   }HRESULT WmsNodeProtocols::OnShow(IConsole *pConsole,                                   BOOL bShow,                                   HSCOPEITEM scopeitem){    AFX_MANAGE_STATE(AfxGetStaticModuleState());    HRESULT      hr = S_OK;        IHeaderCtrl *pHeaderCtrl = NULL;    IResultData *pResultData = NULL;        if (bShow)     {        hr = pConsole->QueryInterface(IID_IHeaderCtrl, (void **)&pHeaderCtrl);        _ASSERT(SUCCEEDED(hr));                hr = pConsole->QueryInterface(IID_IResultData, (void **)&pResultData);        _ASSERT(SUCCEEDED(hr));        CString hdr1_name, hdr2_name, hdr3_name;        hdr1_name.LoadString(IDS_PROTOCOL_NAME);        hdr2_name.LoadString(IDS_PROTOCOL_ENABLED);        MAKE_WIDEPTR_FROMTSTR(ptr_hdr1, hdr1_name);        MAKE_WIDEPTR_FROMTSTR(ptr_hdr2, hdr2_name);                // Set the column headers in the results pane        hr = pHeaderCtrl->InsertColumn( 0, ptr_hdr1, 0, MMCLV_AUTO );        _ASSERT( S_OK == hr );        hr = pHeaderCtrl->InsertColumn( 1, ptr_hdr2, 0, MMCLV_AUTO );        _ASSERT( S_OK == hr );               hr = pResultData->DeleteAllRsltItems();        _ASSERT( SUCCEEDED(hr) );                pHeaderCtrl->Release();        pResultData->Release();    }        return hr;}//============================= ACCESS     ===================================//============================= INQUIRY    ===================================const int WmsNodeProtocols::GetBitmapIndex(){    return NICON_PROTOCOL;}const _TCHAR *WmsNodeProtocols::GetDisplayName(int nCol){    static _TCHAR szDisplayName[256] = {0};        if (!*szDisplayName)    {        LoadString(g_hinst,             IDS_NODE_PROTOCOLS,             szDisplayName,             sizeof(szDisplayName));    }        return szDisplayName; }const GUID & WmsNodeProtocols::getNodeType(){    return thisGuid; }/////////////////////////////// PROTECTED  ////////////////////////////////////////////////////////////////// PRIVATE    ///////////////////////////////////

⌨️ 快捷键说明

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