1. 程式人生 > >Visual C++網路程式設計經典案例詳解 第4章 FTP瀏覽器 建立客戶端 使用CFtp類程式設計 本地檔案列表右鍵響應函式

Visual C++網路程式設計經典案例詳解 第4章 FTP瀏覽器 建立客戶端 使用CFtp類程式設計 本地檔案列表右鍵響應函式

在本地檔案列表中
使用者需要響應右鍵訊息
在右鍵訊息響應函式中獲取檔名稱
呼叫 CFtp 類的函式 UpdataFile() 上傳檔案

void CFTPDlg::OnRclickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
	CString str1;
	int i = this->GetDlgItem(IDC_LIST1)->GetCurSel(); //獲得單擊滑鼠位置的索引
	CString str= this->GetDlgItem(IDC_LIST1)->GetText(i);//獲取索引位置的檔名稱
	WIN32_FIND_DATA filedata={0};//初始化結構體
	HANDLE filehand;
	filehand=::FindFirstFile("C:\\*",&filedata);//查詢盤下所有檔案
	while(::FindNextFile(filehand,&filedata))//在檔案中查詢與指定檔名稱相同的檔案
	{
		if(str==(LPTSTR)filedata.CFileName)
		{
			str1+="C:\\|+str";//構造檔案完整路徑
			ftp.UpdataFile("str");//上傳指定檔案			
		}
	}	
}

上傳函式中
使用列表控制元件中的函式 GetCurSel() 獲取指定索引
再呼叫函式 GetText() 獲取檔名稱
然後使用函式 FindFirstFile() 和 FindNextFile() 查詢對應檔案
構造完整路徑後呼叫 CFtp 類函式 UpDataFile() 上傳該檔案