www.pudn.com > Nethief.rar > NethiefDoc.h


// NethiefDoc.h : interface of the CNethiefDoc class 
#include "MainFrm.h" 
///////////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_NETHIEFDOC_H__2DA6D10B_AC2D_11D4_89D9_2C4705C10000__INCLUDED_) 
#define AFX_NETHIEFDOC_H__2DA6D10B_AC2D_11D4_89D9_2C4705C10000__INCLUDED_ 
 
#if _MSC_VER >= 1000 
#pragma once 
#endif // _MSC_VER >= 1000 
//将所有的处理函数都放到CNethiefDoc里面,以方便处理 
 
//************************************* 
#pragma pack(1) //字节对齐 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strClientName; 
	BOOL			bIsHttpTunnel; 
} 
NOTIFY_CLIENT_CONNECT_THREAD_PARAM,*pNOTIFY_CLIENT_CONNECT_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strPath; 
} 
EXPAND_DIRECTORY_THREAD_PARAM,*pEXPAND_DIRECTORY_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strPath; 
} 
SHOW_FILELIST_THREAD_PARAM,*pSHOW_FILELIST_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strPath; 
	CString			strFilename1; 
	CString			strFilename2; 
} 
RENAME_FILE_THREAD_PARAM,*pRENAME_FILE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFullFilename; 
} 
NEW_FILE_THREAD_PARAM,*pNEW_FILE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFullFilename; 
} 
NEW_FOLDER_THREAD_PARAM,*pNEW_FOLDER_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFrom; 
} 
DELETE_FILE_THREAD_PARAM,*pDELETE_FILE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFrom; 
	CString			strTo; 
	DWORD			dwFOFlags; 
} 
REMOTE_PASTE_THREAD_PARAM,*pREMOTE_PASTE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFrom; 
} 
GET_OPERATION_OBJECT_THREAD_PARAM,*pGET_OPERATION_OBJECT_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFilename1; 
	CString			strFilename2; 
	DWORD			dwStartPosition; 
	BOOL			bIsCut; 
} 
DOWNLOAD_FILE_THREAD_PARAM,*pDOWNLOAD_FILE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFilename1; 
	CString			strFilename2; 
	DWORD			dwStartPosition; 
	BOOL			bIsCut; 
} 
UPLOAD_FILE_THREAD_PARAM,*pUPLOAD_FILE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strPath; 
} 
SHOW_PROPERTY_MULTI_THREAD_PARAM,*pSHOW_PROPERTY_MULTI_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFilename; 
} 
SHOW_PROPERTY_SINGLE_THREAD_PARAM,*pSHOW_PROPERTY_SINGLE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFilename; 
	DWORD			dwFileAttributes; 
} 
MODIFY_PROPERTY_SINGLE_THREAD_PARAM,*pMODIFY_PROPERTY_SINGLE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strDiskDrive; 
} 
SHOW_PROPERTY_DISKDRIVE_THREAD_PARAM,*pSHOW_PROPERTY_DISKDRIVE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strDiskDrive; 
	CString			strVolumeName; 
} 
MODIFY_PROPERTY_DISKDRIVE_THREAD_PARAM,*pMODIFY_PROPERTY_DISKDRIVE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFilename; 
	CString			strParam; 
	int				nShowCmd; 
} 
REMOTE_RUN_THREAD_PARAM,*pREMOTE_RUN_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
} 
REMOTE_UNINSTALL_THREAD_PARAM,*pREMOTE_UNINSTALL_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFindDir; 
	CString			strFindFile; 
	BOOL			bSearchSubdir; 
} 
FIND_FILE_THREAD_PARAM,*pFIND_FILE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
} 
SHOW_NOTE_THREAD_PARAM,*pSHOW_NOTE_THREAD_PARAM; 
 
typedef struct 
{ 
	CFileSocket*	pFileSocket; 
	CString			strHostName; 
	CString			strFilename; 
} 
GET_FILE_INFO_THREAD_PARAM,*pGET_FILE_INFO_THREAD_PARAM; 
 
#pragma pack()	//使用缺省对齐 
//************************************* 
UINT NotifyClientConnectProc(LPVOID pParam);			//通知服务端开始连接 
UINT Command_IDVerifyProc(LPVOID pParam);				//服务端身份验证 
UINT Command_DownloadDiskDriveInfoProc(LPVOID pParam);	//下载服务端信息 
UINT Command_ExpandDirectoryProc(LPVOID pParam); 
UINT Command_ShowFileListProc(LPVOID pParam); 
UINT Command_RenameFileProc(LPVOID pParam); 
UINT Command_NewFileProc(LPVOID pParam); 
UINT Command_NewFolderProc(LPVOID pParam); 
UINT Command_DeleteFileProc(LPVOID pParam); 
UINT Command_RemotePasteProc(LPVOID pParam); 
UINT Command_GetOperationObjectProc(LPVOID pParam); 
UINT Command_DownloadFileProc(LPVOID pParam); 
UINT Command_UploadFileProc(LPVOID pParam); 
UINT Command_ShowPropertyMultiProc(LPVOID pParam); 
UINT Command_ShowPropertySingleProc(LPVOID pParam); 
UINT Command_ModifyPropertySingleProc(LPVOID pParam); 
UINT Command_ShowPropertyDiskdriveProc(LPVOID pParam); 
UINT Command_ModifyPropertyDiskdriveProc(LPVOID pParam); 
UINT Command_RemoteRunProc(LPVOID pParam); 
UINT Command_RemoteUninstallProc(LPVOID pParam); 
UINT Command_FindFileProc(LPVOID pParam); 
UINT Command_ShowNoteProc(LPVOID pParam); 
UINT Command_GetFileInfoProc(LPVOID pParam); 
 
class CNethiefDoc : public CDocument 
{ 
protected: // create from serialization only 
	CNethiefDoc(); 
	DECLARE_DYNCREATE(CNethiefDoc) 
 
// Attributes 
public: 
	//***************************************************************** 
	////////////////////////成员变量///////////////////////////// 
	CMainFrame*		m_pFrame; 
	CMyTreeView*	m_pTreeView; 
	CMyListView*	m_pListView; 
	CTreeCtrl*		m_Tree; 
	CListCtrl*		m_List; 
	CStatusBar*		m_pStatusBar;//状态栏 
//	CCommunity*		m_pCommunity; 
	CFileSocket*	m_pFileSocket; 
 
	CImageList		m_ListImageList;//列表映象列表(用于ListView) 
	CImageList		m_TreeImageList;//树映象列表(用于TreeView) 
	HICON			m_hIcon_Folder;//列表映象列表里常用的文件夹图标 
	HICON			m_hIcon_UnknownFile;//列表映象列表里常用的未知文件图标 
 
	CProgressCtrl	m_Progress;//状态栏进度条 
	CStatic			m_Static_Offline;//状态栏离线状态 
	CStatic			m_Static_Busy; 
	HICON			m_hIcon_Offline; 
	HICON			m_hIcon_Busy; 
	BOOL			m_bIsBusy; 
 
	DWORD			m_dwFOFlags; 
	CString			m_strFOHostName; 
	HTREEITEM		m_hCutParentItem; 
	DWORD			m_dwNewClipboardFormat; 
	DWORD			m_dwClipboardDataSize; 
 
	CString			m_strIndicatorStatus; 
	BOOL			m_bIsOnline; 
	BOOL			m_bLogoning; 
	BOOL			m_bFlashIcon; 
	int				m_nCount; 
	int				m_nCount2; 
	int				m_nCount3; 
	CString			m_strServerNum; 
	///////////////////////////////////////////// 
	CWinThread*		m_pFileSocketThread; 
 
	///////////客户端设置变量//////////// 
	CString			m_strFileViewer;//用于查看文件的自定义程序 
	////////////////////////成员函数///////////////////////////// 
	void OnInitial(); 
	void OnClose(); 
	void OnTreeInitalUpdate(); 
	void OnListInitalUpdate(); 
	void OnListDestroy(); 
	////////////////////////////////////////// 
	void AddDiskDriveToTree(HTREEITEM hItem);//添加磁盘驱动器到树 
	BOOL AddDoubleDeckSubdirectoryToDiskDriveItem(CString strDir,HTREEITEM hItem);//添加双层子目录到磁盘驱动器节点 
	void AddSubdirectoryToTree(CString strDir,HTREEITEM hItem);//添加子目录到树 
	void AddFileToList(CString strDir);//添加文件列表到List 
	void AddHost(CString strItemName,BOOL bIsHttpTunnel); 
	//////////////////////////////////////////// 
	void OnTreeItemexpanding(NM_TREEVIEW* pNMTreeView,LRESULT* pResult); 
	void OnTreeSelchanged(NM_TREEVIEW* pNMTreeView,LRESULT* pResult); 
	void OnTreeBeginlabeledit(TV_DISPINFO* pTVDispInfo,LRESULT* pResult); 
	void OnTreeEndlabeledit(TV_DISPINFO* pTVDispInfo,LRESULT* pResult); 
	void OnListEndlabeledit(LV_DISPINFO* pDispInfo, LRESULT* pResult); 
	void OnListDblclk(NM_LISTVIEW* pNMListView,LRESULT* pResult); 
	/////////////////////////////////////////// 
	void ChangeDirectoryItem(CString strDirName,CString strNewDirName); 
	void SelectDirecoryItem(CString strDirName); 
	void RefreshDirecoryItem(HTREEITEM hSelectItem); 
	void UnsignCutDirecoryItem(BOOL bIsTree); 
	void SignCutDirecoryItem(CString strDirName); 
	void AddDirecoryItem(CString strDirName,HTREEITEM hSelectItem,BOOL bIsRefresh=FALSE); 
	void DeleteDirecoryItem(CString strDirName); 
	int FindDirectory(CString strDirName); 
	void FindNewDirectory(HTREEITEM hSelectItem); 
	void DeleteCutDirecoryItem(); 
	/////////////////////////////////////////// 
	CString ConverDWORDToCString(DWORDLONG dwSize); 
	DWORDLONG GetDiskSpace(CString strDiskDriver,BOOL bFreeSpace); 
	static int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2,LPARAM lParamSort); 
 
	void SetCurDir(CString strCurHostName,CString strCurDir); 
	CString GetCurDir(); 
	CString GetCurPath(); 
	CString GetCurHostName(); 
 
	void MessageErrorBox(int nErrorCode,CString strSubject,CString strFilename); 
	void OnUpdateIndicatorProgress(CCmdUI *pCmdUI); 
	BOOL CopyPathToClipboard(BOOL bIsTree); 
	void SetFileOperationPath(CString* pstrPath); 
	void FolderStatistic(CString strFindDir,int* nFileCount, 
							 int* nFolderCount,DWORD* dwTotalSize); 
	void GetOperationObject(HTREEITEM hSelectItem,CString strHostName, 
		CString strFrom,CString strPath2,DWORD dwFOFlags); 
	void SearchFile_GetOperationObject(CString strFindDir,int nPathLen, 
		CByteArray* pArrayBuffer); 
	void SearchFile(CString strFindDir,CString strFindFile,BOOL bSearchSubdir, 
		CStringArray* pStringArray); 
 
	void SetIndicatorRect(); 
	void SetOfflineSign(); 
	void FlashIcon(); 
 
	void OnTimer(UINT nIDEvent); 
	void SetBusyCursor(BOOL bBusy); 
	void SetIndicatorStatus(CString strIndicatorStatus); 
	CString	CharToCString(char* cText,UINT nSize); 
	CString GetHostName(HTREEITEM hItem); 
	BOOL FindHost(CString strHostName,BOOL bIsHttpTunnel); 
	////////////////////////////////////////////////// 
	void OnToolbarNewfile(); 
	void OnToolbarNewfolder(); 
	void OnToolbarBack(); 
	void OnToolbarRefresh(); 
	void OnToolbarFindfile(); 
	void OnToolbarCut(BOOL bIsTree); 
	void OnToolbarCopy(BOOL bIsTree); 
	void OnToolbarPaste(); 
	void OnMenuFileRun(); 
	void OnToolbarRun(); 
	void OnTreeMenuFileRename(); 
	void OnListMenuFileRename(); 
	void OnToolbarView(); 
	void OnTreeToolbarDelete(); 
	void OnListToolbarDelete(); 
	void OnToolbarProperty(BOOL bIsTree); 
	void OnToolbarSelectall(); 
	void OnToolbarReverseselect(); 
	void OnMenuConsoleLogon(); 
	void OnHelpUpdate(); 
	void OnToolbarBuildserver(); 
	void OnToolbarDeletehost(); 
	void OnToolbarDisconnect(); 
	void OnMenuNetUninstall(); 
	void OnMenuNetNote(); 
	void OnToolbarStop(); 
	void OnMenuNetOption(); 
	void OnMenuNetDownload(); 
	////////////////////////////////////////////////// 
	int GetINIfileInt(LPCTSTR lpSectionName,  //从INI中读取整型值 
					  LPCTSTR lpKeyName); 
	BOOL WriteINIfileInt(LPCTSTR lpSectionName, //向INI中写入整型值 
						 LPCTSTR lpKeyName, 
						 INT nValue); 
	CString GetINIfileString(LPCTSTR lpSectionName, //从INI中读取字符值 
							 LPCTSTR lpKeyName); 
	BOOL WriteINIfileString(LPCTSTR lpSectionName,  //向INI中写入字符值 
							LPCTSTR lpKeyName, 
							LPCTSTR lpString); 
	////////////////////////////////////////////////// 
	void ConnectHost(HTREEITEM hExpandItem); 
	void Remote_ExpandDirectory(HTREEITEM hExpandItem,CString strHostName,CString strPath); 
	void Remote_ShowFileList(HTREEITEM hSelectItem,CString strHostName,CString strPath); 
	void Remote_RenameFile(HTREEITEM hSelectItem,CString strHostName, 
		CString strPath,CString strFilename1,CString strFilename2, 
		BOOL bIsDir,BOOL bIsList,int nEditItem); 
	void Remote_NewFile(HTREEITEM hSelectItem,CString strHostName, 
		CString strPath,CString strFilename); 
	void Remote_NewFolder(HTREEITEM hSelectItem,CString strHostName, 
		CString strPath,CString strFilename); 
	void Remote_DeleteFile(HTREEITEM hSelectItem,CString strHostName, 
		CString strFrom,BOOL bIsList); 
	void Remote_RemotePaste(CString strHostName, 
		CString strFrom,CString strTo,DWORD dwFOFlags); 
	void Remote_GetOperationObject(HTREEITEM hSelectItem,CString strHostName, 
		CString strFrom,CString strPath2,DWORD dwFOFlags); 
	void Remote_DownloadFile(CString strHostName, 
		CString strFilename1,CString strFilename2,DWORD dwStartPosition, 
		int nCurNum,int nTotalNum,BOOL bIsCut,int nControlCode); 
	void Remote_UploadFile(CString strHostName, 
		CString strFilename1,CString strFilename2,DWORD dwStartPosition, 
		int nCurNum,int nTotalNum,BOOL bIsCut); 
	void Remote_ShowProperty_Multi(CString strHostName,CString strPath); 
	void Remote_ShowProperty_Single(CString strHostName,CString strFilename); 
	void Remote_ModifyProperty_Single(CString strHostName, 
		CString strFilename,DWORD dwFileAttributes); 
	void Remote_ShowProperty_Diskdrive(HTREEITEM hSelectItem, 
		CString strHostName,CString strDiskDrive); 
	void Remote_ModifyProperty_Diskdrive(HTREEITEM hSelectItem, 
		CString strHostName,CString strDiskDrive,CString strVolumeName); 
	void Remote_RemoteRun(CString strHostName, 
		CString strFilename,CString strParam,int nShowCmd); 
	void Remote_RemoteUninstall(CString strHostName); 
	void Remote_FindFile(CString strHostName,CString strFindDir, 
		CString strFindFile,BOOL bSearchSubdir); 
	void Remote_ShowNote(CString strHostName); 
	void Remote_GetFileInfo(CString strHostName, 
		CString strFilename,BOOL bIsDownloadFile); 
	////////////////////////////////////////////////// 
	void OnSocketAccept(); 
	void OnTM_NotifyConnect(DWORD dwResult); 
	void OnTM_IDVerify(DWORD dwResult); 
	void OnTM_DownloadDiskDriveInfo(DWORD dwResult); 
	void OnTM_ExpandDirectory(DWORD dwResult); 
	void OnTM_ShowFileList(DWORD dwResult); 
	void OnTM_RenameFile(DWORD dwResult); 
	void OnTM_NewFile(DWORD dwResult); 
	void OnTM_NewFolder(DWORD dwResult); 
	void OnTM_DeleteFile(DWORD dwResult); 
	void OnTM_RemotePaste(DWORD dwResult); 
	void OnTM_GetOperationObject(DWORD dwResult); 
	void OnTM_DownloadFile(DWORD dwResult); 
	void OnTM_UploadFile(DWORD dwResult); 
	void OnTM_ShowProperty_Multi(DWORD dwResult); 
	void OnTM_ShowProperty_Single(DWORD dwResult); 
	void OnTM_ModifyProperty_Single(DWORD dwResult); 
	void OnTM_ShowProperty_Diskdrive(DWORD dwResult); 
	void OnTM_ModifyProperty_Diskdrive(DWORD dwResult); 
	void OnTM_RemoteRun(DWORD dwResult); 
	void OnTM_RemoteUninstall(DWORD dwResult); 
	void OnTM_FindFile(DWORD dwResult); 
	void OnTM_ShowNote(DWORD dwResult); 
	void OnTM_RefreshStatusBar(DWORD dwResult); 
	void OnTM_GetFileInfo(DWORD dwResult); 
	//***************************************************************** 
private: 
	//***************************************************************** 
	////////////////////////成员变量///////////////////////////// 
	CString			m_strFileCacheDir; 
 
	CString			m_strCurHostName;		//保存当前主机名 
	CString			m_strCurDir;			//保存当前目录或路径 
	CString			m_strExpandHostName;	//保存展开时的主机名 
	CString			m_strExpandPath;		//保存展开时的路径 
 
	HTREEITEM		m_hConnectHostItem; 
 
	HTREEITEM		m_hExpandItem;			//保存展开的Item 
	HTREEITEM		m_hSelectItem;			//保存选择的Item 
	BOOL			m_bLastExpand;			//显示文件列表后展开 
	CString			m_strIndicatorShowFileList;//文件列表的状态栏提示文字 
	//用于OnTM_ExpandDirectory中//////// 
	BOOL			m_bLastSelect;			//展开后调用选择函数 
	CString			m_strSelectName;		//被选中的子项名 
	//用于OnTM_RenameFile中//////// 
	HTREEITEM		m_TM_RenameFile_hEditItem; 
	CString			m_TM_RenameFile_strFullPath; 
	CString			m_TM_RenameFile_strFilename2; 
	int				m_TM_RenameFile_nEditItem; 
	BOOL			m_TM_RenameFile_bIsDir; 
	BOOL			m_TM_RenameFile_bIsList; 
	//用于OnTM_NewFile中//////// 
	HTREEITEM		m_TM_NewFile_hSelectItem; 
	CString			m_TM_NewFile_strFullPath; 
	CString			m_TM_NewFile_strFilename; 
	//用于OnTM_NewFolder中//////// 
	HTREEITEM		m_TM_NewFolder_hSelectItem; 
	CString			m_TM_NewFolder_strFullPath; 
	CString			m_TM_NewFolder_strFilename; 
	//用于OnTM_DeleteFile中//////// 
	HTREEITEM		m_TM_DeleteFile_hSelectItem; 
	CString			m_TM_DeleteFile_strFullPath; 
	BOOL			m_TM_DeleteFile_bIsList; 
	//用于OnTM_RemotePaste中//////// 
	CString			m_TM_RemotePaste_strFullPath; 
	//用于OnTM_GetOperationObject中//////// 
	CString			m_TM_GetOperationObject_strRemoteHostName; 
	HTREEITEM		m_TM_GetOperationObject_hSelectItem; 
	CString			m_TM_GetOperationObject_strPath; 
	CString			m_TM_GetOperationObject_strPath2; 
	BOOL			m_TM_GetOperationObject_bIsCut; 
	CString			m_TM_GetOperationObject_strFullPath; 
	CStringArray	m_TM_GetOperationObject_StringArray; 
	int				m_TM_GetOperationObject_nIndex; 
	//用于OnTM_DownloadFile中//////// 
	CString			m_TM_DownloadFile_strFilename2; 
	BOOL			m_TM_DownloadFile_bIsCut; 
	int				m_TM_DownloadFile_nControlCode; 
	//用于OnTM_UploadFile中//////// 
	BOOL			m_TM_UploadFile_bIsCut; 
	//用于OnTM_ShowProperty_Multi中//////// 
	CString			m_TM_ShowPropertyMulti_strHostName; 
	//用于OnTM_ShowProperty_Single中//////// 
	CString			m_TM_ShowPropertySingle_strHostName; 
	CString			m_TM_ShowPropertySingle_strFilename; 
	//用于OnTM_ShowProperty_Diskdrive中//////// 
	HTREEITEM		m_TM_ShowPropertyDiskdrive_hSelectItem; 
	CString			m_TM_ShowPropertyDiskdrive_strHostName; 
	CString			m_TM_ShowPropertyDiskdrive_strFullPath; 
	//用于OnTM_ModifyProperty_Single中//////// 
	CString			m_TM_ModifyPropertySingle_strFullPath; 
	//用于OnTM_ModifyProperty_Diskdrive中//////// 
	HTREEITEM		m_TM_ModifyPropertyDiskdrive_hSelectItem; 
	CString			m_TM_ModifyPropertyDiskdrive_strVolumeName; 
	CString			m_TM_ModifyPropertyDiskdrive_strFullPath; 
	//用于OnTM_RemoteRun中//////// 
	CString			m_TM_RemoteRun_strFullPath; 
	//用于OnTM_GetFileInfo中//////// 
	BOOL			m_TM_GetFileInfo_bIsDownloadFile; 
 
	////////////////////////成员函数///////////////////////////// 
	int ShowSelectFileOperationDialog(CString strFilename,//显示选择文件操作对话框 
		HICON hSourceIcon,CString strSourceFileInfo, 
		HICON hDestIcon,CString strDestFileInfo, 
		BOOL bDoNotContinue); 
	BOOL IsFileExist(CString strFilename);//查找指定文件是否存在 
	//***************************************************************** 
 
 
public: 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CNethiefDoc) 
	public: 
	virtual BOOL OnNewDocument(); 
	virtual void Serialize(CArchive& ar); 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
	virtual ~CNethiefDoc(); 
#ifdef _DEBUG 
	virtual void AssertValid() const; 
	virtual void Dump(CDumpContext& dc) const; 
#endif 
 
protected: 
 
// Generated message map functions 
protected: 
	//{{AFX_MSG(CNethiefDoc) 
		// NOTE - the ClassWizard will add and remove member functions here. 
		//    DO NOT EDIT what you see in these blocks of generated code ! 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
}; 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Developer Studio will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_NETHIEFDOC_H__2DA6D10B_AC2D_11D4_89D9_2C4705C10000__INCLUDED_)