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

📄 filemgr.h

📁 远程控制系统,可以实现局域网内进行远程控制计算机,很方便,并且是学习用的非常好的资料.
💻 H
字号:
// filemgrview.h: interface for the CFileMgr class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_FILEMGRVIEW_H__52F24526_0766_476E_BB44_592F4828886C__INCLUDED_)
#define AFX_FILEMGRVIEW_H__52F24526_0766_476E_BB44_592F4828886C__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CFileMgr : public CDialogImpl<CFileMgr>, public CSockMgr
{
public:
	enum { IDD = IDD_FILEMGR };

	BEGIN_MSG_MAP(CFileMgr)
		MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
		MESSAGE_HANDLER(WM_SIZE, OnSize)
		MESSAGE_HANDLER(WM_SOCKET_READ, OnSocketRead)
		MESSAGE_HANDLER(WM_SOCKET_WRITE, OnSocketWrite)
		MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
		MESSAGE_HANDLER(WM_CONNECT_COMPLETE, OnConnOk)
		MESSAGE_HANDLER(WM_CONNECT_TIMEOUT, OnConnTimeOut)
		MESSAGE_HANDLER(WM_CONNECT_CREATED, OnConnectCreated)
		MESSAGE_HANDLER(WM_CONNECT_CLOSED, OnConnectClosed)
		COMMAND_ID_HANDLER(ID_FILEMGR_TOP, OnToolBarTop)
		COMMAND_ID_HANDLER(ID_FILEMGR_RELOAD, OnToolBarReload)
		COMMAND_ID_HANDLER(IDC_PATHLIST, OnPathSelect)
		COMMAND_ID_HANDLER(IDC_GOTO, OnGoto)
		COMMAND_ID_HANDLER(IDM_FILE_OPEN, OnFileOpen)
		COMMAND_ID_HANDLER(IDM_FILE_EXECUTE, OnFileExecute)
		COMMAND_ID_HANDLER(IDM_FILE_CUT, OnFileCut)
		COMMAND_ID_HANDLER(IDM_FILE_COPY, OnFileCopy)
		COMMAND_ID_HANDLER(IDM_FILE_PASTE, OnFilePaste)
		COMMAND_ID_HANDLER(IDM_FILE_DOWNLOAD, OnFileDownload)
		COMMAND_ID_HANDLER(IDM_FILE_UPLOAD, OnFileUpload)
		COMMAND_ID_HANDLER(IDM_FILE_DELETE, OnFileDelete)
		COMMAND_ID_HANDLER(IDM_DIRECTORY_CREATE, OnDirectoryCreate)
		COMMAND_ID_HANDLER(IDM_DIRECTORY_REMOVE, OnDirectoryRemove)
		NOTIFY_ID_HANDLER(IDC_FILELIST, OnFileSelect)
		ALT_MSG_MAP(1)
			MESSAGE_HANDLER(WM_CHAR, OnComboChar)
	END_MSG_MAP()

	LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnSize(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnSocketRead(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnSocketWrite(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnDestroy(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnConnOk(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnConnTimeOut(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnConnectCreated(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnConnectClosed(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnToolBarTop(int /*code*/, int /*id*/, HWND /*hWnd*/, BOOL& /*bHandled*/);
	LRESULT OnToolBarReload(int /*code*/, int /*id*/, HWND /*hWnd*/, BOOL& /*bHandled*/);
	LRESULT OnPathSelect(int /*code*/, int /*id*/, HWND /*hWnd*/, BOOL& /*bHandled*/);
	LRESULT OnGoto(int /*code*/, int /*id*/, HWND /*hWnd*/, BOOL& /*bHandled*/);
	LRESULT OnFileSelect(int /*wParam*/, LPNMHDR /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnComboChar(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	LRESULT OnFileOpen(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFileExecute(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFileCut(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFileCopy(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFilePaste(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFileDownload(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFileUpload(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnFileDelete(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnDirectoryCreate(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
	LRESULT OnDirectoryRemove(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);

	CFileMgr();
	virtual ~CFileMgr();

protected:
	CContainedWindow m_path;

private:
	typedef struct _FILE_LIST
	{
		struct _FILE_LIST *next;
		FILEMGR_FILEINFO fileinfo;
	} FILE_LIST, *PFILE_LIST;

	CReBarCtrl m_ReBar;
	CToolBarCtrl m_hToolBar;
	CListViewCtrl m_hFileList;
	CComboBox m_hPathList;
	SOCKET slave_sock;
	REQUEST_CONNECT rc;
	bool connwait;
	PWND_INIT_PARAM pwip;
	PFILE_LIST filelist;
	char szCurPath[MAX_PATH];
	int SortColumn;
	int SizeSortOrder[6];
	int ClipboardOperation;
	CString ClipboardData;

	static int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);
	void ParseDataPack(LPBYTE pData, ULONG nDataSize);
	void NumGrouping(char *buf, unsigned int hival, unsigned int loval, int width);
	void CleanupFileList();
	int GetIconIndex(const char *lpExtName, BOOL bSmallIcon, DWORD dwFileAttributes);
	void SetCurrentPath(const char *lpPath);
	int SendCommand(DWORD dwCommand, const char *lpPath);
	int SendCommandEx(DWORD dwCommand, const void *lpData, int cbData);
	bool GetSelectedFileName(CString &str, bool bIncludePath);
};

#endif // !defined(AFX_FILEMGRVIEW_H__52F24526_0766_476E_BB44_592F4828886C__INCLUDED_)

⌨️ 快捷键说明

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