我在做剪貼板的功能,當選擇檔案后點擊滑鼠右鍵,點復制,然后到桌面或檔案夾下點擊滑鼠右鍵會出現粘貼按鈕,我想問一下如果獲取將要復制到的目錄路徑,請教各位一下。
uj5u.com熱心網友回復:
檔案 拖動 ??uj5u.com熱心網友回復:
if(OpenClipboard())
{
do
{
HDROP hDrop = (HDROP) GetClipboardData(CF_HDROP);
if(hDrop == NULL) break;
UINT uNums = ::DragQueryFile(hDrop, (UINT)(-1), NULL, 0);
for(UINT iFile=0; iFile<uNums; iFile++)
{
TCHAR szPath[MAX_PATH+1] ={0};
if(DragQueryFile(hDrop, iFile, szPath, MAX_PATH))
{
TRACE(_T("File%d=%s\n"), iFile+1, szPath);
}
}
}while(0);
CloseClipboard();
}
uj5u.com熱心網友回復:
zgl7903,對,是這樣的,我可以獲取到剪貼板點擊復制后獲取到的檔案路徑資訊,但我想在比如桌邊或 C盤 點擊右鍵,會彈出右鍵選單,里面如果復制了檔案,會是粘貼按鈕生效,我點粘貼按鈕就可以把檔案復制過來了,我想問如何獲取將要復制到的目錄的路徑。因為我在做遠程控制,要雙向復制粘貼,文本和圖片都可以了,現在正在做檔案的雙向復制粘貼。
uj5u.com熱心網友回復:
你可能需要HOOK 檔案操作的相關API介面,或者考慮從檔案過濾驅動的方向入手~uj5u.com熱心網友回復:
Eleven,要hook哪個函式啊,能不能告訴我一下啊。
uj5u.com熱心網友回復:
void CMyAnimateCtrl::OnDropFiles(HDROP hDrop)uj5u.com熱心網友回復:
好,我回去試試看。轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/30239.html
標籤:界面
