ClientFtpDlg.h
上传用户:tjfeida
上传日期:2013-03-10
资源大小:1917k
文件大小:3k
源码类别:

Ftp客户端

开发平台:

Visual C++

  1. // ClientFtpDlg.h : 头文件
  2. //
  3. #if !defined(AFX_FTPSOCKETDLG_H__E0B6E988_9D2B_4461_8694_DDAB5027F497__INCLUDED_)
  4. #define AFX_FTPSOCKETDLG_H__E0B6E988_9D2B_4461_8694_DDAB5027F497__INCLUDED_
  5. #if _MSC_VER > 1000
  6. #pragma once
  7. #endif // _MSC_VER > 1000
  8. #include "afxcmn.h"
  9. #include "afxwin.h"
  10. #include "MyFtpClient.h"
  11. #include "MyFtpList.h"
  12. #define WM_SETFILE                 WM_USER +100
  13. #define WM_SETREDRAWFLAG           WM_USER +101
  14. #define WM_SETDIRECTORYDISPLAY     WM_USER +102
  15. #define WM_REDISPLAYFILE           WM_USER +103
  16. #define WM_SETDIR                  WM_USER +104
  17. //定义枚举文件量
  18. enum
  19. {
  20. FILEICON,
  21. DIRECTORYICON,
  22. LOCFILE,
  23. SERVFILE
  24. };
  25. // CClientFtpDlg 对话框
  26. class CClientFtpDlg : public CDialog
  27. {
  28. // 构造
  29. public:
  30. CClientFtpDlg(CWnd* pParent = NULL); // 标准构造函数
  31. // 对话框数据
  32. enum { IDD = IDD_CLIENTFTP_DIALOG };
  33. protected:
  34. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
  35. // 实现
  36. protected:
  37. HICON m_hIcon;
  38. // 生成的消息映射函数
  39. virtual BOOL OnInitDialog();
  40. afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
  41. afx_msg void OnPaint();
  42. afx_msg HCURSOR OnQueryDragIcon();
  43. DECLARE_MESSAGE_MAP()
  44. public:
  45. CListCtrl m_controlLocalFile;
  46. CListCtrl m_controlServerFile;
  47. CComboBoxEx m_controlLocalDir;
  48. CComboBoxEx m_controlServerDir;
  49. CString m_strPassWord;
  50. CString m_strServerAddress;
  51. CString m_strUserName;
  52. CString m_strMessage;
  53. int m_nPort;
  54. BOOL m_PASV;
  55. BOOL m_bHaveDotFlag;
  56. MyFtpClient ftp;
  57. CImageList* m_pDragImageList;
  58. CImageList m_ctImageList;
  59. int m_fileDirCount;
  60. typedef struct
  61. {
  62. char sFileName[200];
  63. char sFileDate[30];
  64. char sFileSize[20];
  65. int n_Type;
  66. }FTP_FILE_INFO;
  67. afx_msg void OnButtonConnect();
  68. afx_msg void OnNMDblclkListLocalFiles(NMHDR *pNMHDR, LRESULT *pResult);
  69. afx_msg void OnNMDblclkListServerFiles(NMHDR *pNMHDR, LRESULT *pResult);
  70. afx_msg void OnCbnSelchangeComboLocaldir();
  71. void OnInsertFile(CListCtrl* pListCtrl, LPVOID pIn, LPARAM lParam);
  72. void GetFileIcon(CString&fileName, int* iIcon, int* iIconSel);
  73. BOOL SetImageList(CListCtrl* pListCtrl, CComboBoxEx* pCombo);
  74. protected:
  75. void SetFileColumns(CListCtrl* pListCtrl);
  76. public:
  77. void GetLocalDir(void);
  78. int InsertLocalDir(CString& str, int iIcon, int iIconSel);
  79. void GetLocalCurrentDir(void);
  80. BOOL BeginFindLocalFile(void);
  81. void FindLocalFile(void);
  82. void SetServerDir(CString str);
  83. UINT FindServerFile(void);
  84. void AddLine(CString strLine);
  85. BOOL AddItem(MyFtpList* pItem);
  86. void SetServerFileColumns(CListCtrl* pListCtrl);
  87. void CD(CString dir);
  88. void Back(void);
  89. void UpLoadFile(CString LocalFilePath, CString LocalFileName, bool pasv, bool get);
  90. void DownLoadFile(CString ServerFilePath, CString ServerFileName, bool pasv, bool get);
  91. afx_msg  LRESULT OnReDisplayLocalFile(WPARAM wParam, LPARAM lParam);
  92. afx_msg  LRESULT OnSetLocalDirDisplay(WPARAM wParam, LPARAM lParam);
  93. afx_msg  LRESULT OnInsertLocalFile(WPARAM wParam,LPARAM lParam);
  94. afx_msg  LRESULT OnSetRedrawFlag(WPARAM wParam, LPARAM lParam);
  95. afx_msg  LRESULT OnSetLocalDir(WPARAM wParam, LPARAM lParam);
  96. afx_msg void OnBnClickedCanceal();
  97. };
  98. #endif