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

📄 hnetbartree.h

📁 枚举主机网络设备
💻 H
字号:
// HNetBarTree.h: interface for the CHNetBarTree class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_HNETBARTREE_H__5EB15CD2_22AA_4849_805F_2EFAE5D2A223__INCLUDED_)
#define AFX_HNETBARTREE_H__5EB15CD2_22AA_4849_805F_2EFAE5D2A223__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "HResource.h"
#include "HADOSpirit.h"

#define		UM_GET_DLG_OUTPUT		WM_USER+801

#define		ITEM_DATA_ROOT			0
#define		ITEM_DATA_PROVINCE		1
#define		ITEM_DATA_CITY			2
#define		ITEM_DATA_DISTRICT		3
#define		ITEM_DATA_NET_BAR		4
#define		ITEM_DATA_CLIENT_GOT	5
#define		ITEM_DATA_CLIENT		6

#define		UM_EXPAND_TREE			WM_USER+1100
#define		UM_CLICK_TREE_ITEM		WM_USER+1101
#define		UM_TREE_ITEM_ADD		WM_USER+1200
#define		UM_TREE_ITEM_DELETE		WM_USER+1201
#define		UM_TREE_ITEM_UPDATE		WM_USER+1202
#define		UM_TREE_ITEM_SELECT		WM_USER+1203

#define		UM_NP_TEST_CLIENT						WM_USER+1300
#define		UM_NP_TEST_NET_BAR						WM_USER+1301
#define		UM_NP_TEST_CLIENT_GROUP_POLICY			WM_USER+1302
#define		UM_NP_TEST_CLIENT_LOG_QUERY				WM_USER+1303
#define		UM_NP_TEST_REMOTE_USER_QUERY			WM_USER+1304
#define		UM_NP_TEST_CLIENT_UPSEND_LOG_QUERY		WM_USER+1305
#define		UM_NP_TEST_CLIENT_UNHEALTYH_INFO		WM_USER+1306
#define		UM_NP_TEST_BROADCAST_BLACKLIST			WM_USER+1307
#define		UM_NP_TEST_BROADCAST_CONTROL_PROCESS	WM_USER+1308
#define		UM_NP_TEST_BROADCAST_UPDATE_FILE		WM_USER+1309
#define		UM_NP_TEST_BROADCAST_GROUP_POLICY		WM_USER+1310

#define		UM_NP_CLIENT_SESSION					WM_USER+1311
#define		UM_NP_CLIENT_SESSION_SEND_MSG			WM_USER+1312
#define		UM_NP_CLIENT_SESSION_LOCK_SCREEN		WM_USER+1313
#define		UM_NP_CLIENT_SESSION_GET_SYS_INFO		WM_USER+1314
#define		UM_NP_CLIENT_SESSION_GET_PROCESS		WM_USER+1315
#define		UM_NP_CLIENT_SESSION_LOGOFF				WM_USER+1316
#define		UM_NP_CLIENT_SESSION_REBOOT				WM_USER+1317
#define		UM_NP_CLIENT_SESSION_SHUTDOWN			WM_USER+1318

class AFX_EXT_CLASS CTreeItemSelChangedParm
{
public:
	CTreeItemSelChangedParm(){
		m_nID=-1;
		m_strPath="";
		m_bFromTree=TRUE;
	};
	CTreeItemSelChangedParm(CTreeItemSelChangedParm& other){
		(*this)=other;
	};
	CTreeItemSelChangedParm(UINT nID,CString strPath,BOOL bFromTree=TRUE){
		m_nID=nID;
		m_strPath=strPath;
		m_bFromTree=bFromTree;
	}
	~CTreeItemSelChangedParm(){};
	CTreeItemSelChangedParm& operator=(CTreeItemSelChangedParm& other){
		m_nID=other.m_nID;
		m_strPath=other.m_strPath;
		m_bFromTree=other.m_bFromTree;
		return other;
	}
	UINT	m_nID;
	CString m_strPath;
	BOOL	m_bFromTree;
};

class AFX_EXT_CLASS CHNetBarTree : public CTreeCtrl,public CHADOSpirit
{
// Construction
public:
	CHNetBarTree();

// Attributes
public:
	HTREEITEM GetItemByPath(CString strPath="");
	HTREEITEM GetChildItemByText(HTREEITEM hParent,CString strText);
	BOOL SetParam(CStringArray &saParam,CIntArray &snIcon);
protected:
	CString		m_strSQLConnectToLocal;			//连接本地数据库用
	CString		m_strSQLGetProvincesFormat;		//提取省名用
	CString		m_strSQLGetCitysFormat;			//提取市名用
	CString		m_strSQLGetDistrictsFormat;		//提取区名用
	CString		m_strSQLGetNetBarsFormat;		//提取网吧名用
	CString		m_strSQLGetNetBarIpFormat;		//提取网吧IP用
	CString		m_strSQLConnectToClientFormat;	//连接远程数据库用
	CString		m_strSQLGetClientIp;			//提取远程数据库中的终端机IP用
	CIntArray	m_snIcon;						//树节点图标索引
protected:
	CImageList			m_imaLarge;
	CImageList			m_imaSmall;
	int					m_nSelItemData;
private:
	BOOL MessageLoop() const;
// Operations
public:
	CString GetPath(HTREEITEM hItem);
	int GetPath(HTREEITEM hItem,CStringArray &saPath);
	long FetchChildren(HTREEITEM hSelItem,CStringArray &saPath);

private:
private:
	CWnd* GetOutput2Ptr();
	CString GetNetBarIP(CString strPath);
	CString GetNetBarIP(CString strNetBar,
					  CString strDistrict,
					  CString strCity,
					  CString strProvince);
	int GetProvinces(CStringArray &saProvince);
	int GetCitys(CStringArray &saCity,CString strProvince);
	int GetDistricts(CStringArray &saDistrict,CString strProvince,CString strCity);
	int GetNetBars(CStringArray &saNetBar,CString strProvince,CString strCity,CString strDistrict);
	void AddCitys(HTREEITEM hSelItem,CString strProvince);
	void AddDistricts(HTREEITEM hSelItem,CString strProvince,CString strCity);
	void AddNetBars(HTREEITEM hSelItem,CString strProvince,CString strCity,CString strDistrict);
// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CHNetBarTree)
	//}}AFX_VIRTUAL

// Implementation
public:
	BOOL IsNetBarOnLine(CString strPath);
	void DeleteChildrenItem(HTREEITEM hItem);
	void SelectParent();
	void SelectItemByPath(CString strPath);
	int GetChildrenItemTexts(HTREEITEM hItem,CStringArray &saChildrenItemTexts);
	void SetImglst();
	void FillChildren(HTREEITEM hSelItem);
	void PopulateTree();
	void WhenTreeItemSelected(HTREEITEM hItem);
	virtual ~CHNetBarTree();

	// Generated message map functions
protected:
	//{{AFX_MSG(CHNetBarTree)
	afx_msg void OnItemexpanding(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnRclick(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnPopTreeUpdate();
	afx_msg long OnTreeItemAdd(UINT wParm,LONG lParm);
	afx_msg long OnTreeItemSelect(UINT wParm,LONG lParm);
	afx_msg long OnTreeItemDelete(UINT wParm,LONG lParm);
	afx_msg long OnTreeItemUpdate(UINT wParm,LONG lParm);
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnPopTreeTestClient();
	afx_msg void OnPopTreeTestNetBar();
	afx_msg void OnPopTreeLogQuery();
	afx_msg void OnPopTreeUpsendLogQuery();
	afx_msg void OnPopTreeUnhealthyInfo();
	afx_msg void OnClick(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnPopTreeExpand();
	afx_msg void OnPopTreeIdmPopTreeCollapse();
	afx_msg void OnPopTreeBroadcastBlacklist();
	afx_msg void OnPopTreeBroadcastControlProcess();
	afx_msg void OnPopTreeBroadcastUpdateFile();
	afx_msg void OnTreeGroupPolicy();
	afx_msg void OnPopTreeBroadcastGroupPolicy();
	afx_msg void OnTreeRemoteUser();
	afx_msg void OnPopTreeSendMsg();
	afx_msg void OnPopTreeLockScreen();
	afx_msg void OnPopTreeGetSysInfo();
	afx_msg void OnPopTreeGetProcessList();
	afx_msg void OnPopTreeUnlockScreen();
	afx_msg void OnPopTreeLogoff();
	afx_msg void OnPopTreeReboot();
	afx_msg void OnPopTreeShutdown();
	//}}AFX_MSG

	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
#endif // !defined(AFX_HNETBARTREE_H__5EB15CD2_22AA_4849_805F_2EFAE5D2A223__INCLUDED_)
/////////////////////////////////////////////////////////////////////////////

⌨️ 快捷键说明

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