VC如何获取文件夹地址栏路径信息???
我写的代码,可是不管用啊,怎么才能获取那个地址啊,就是文件夹路径。
获取的句柄时鼠标释放时所在窗口句柄。,求指教
string PathFromPoint()
{
TCHAR szName[MAX_PATH]={0};
TCHAR buf[MAX_PATH] = {0};
HWND hwnd ;
POINT pt;
GetCursorPos(&pt);
hwnd = WindowFromPoint(pt);
//********************************
::GetClassName(hwnd,szName,MAX_PATH);
if ( strcmp(szName,"CabinetWClass") == 0 )
{
HWND WorkerAWnd;
WorkerAWnd=FindWindowEx(hwnd,0,"WorkerW",NULL);
// if(!WorkerAWnd) return 0;
HWND ReBarWindow32Wnd;
ReBarWindow32Wnd=FindWindowEx((HWND)WorkerAWnd,0,"ReBarWindow32",NULL);
//if(!ReBarWindow32Wnd) return 0;
HWND ComboBoxEx32Wnd;
ComboBoxEx32Wnd=FindWindowEx(ReBarWindow32Wnd,0,"ComboBoxEx32",NULL);
//if(!ComboBoxEx32Wnd) return 0;
HWND ComboBoxWnd;
ComboBoxWnd=FindWindowEx(ComboBoxEx32Wnd,0,"ComboBox",NULL);
// if(!ComboBoxWnd) return 0;
HWND EditWnd;
EditWnd=FindWindowEx(ComboBoxWnd,0,"Edit",NULL);//返回句柄
// if(!EditWnd) return 0
SendMessage(EditWnd,WM_GETTEXT,sizeof(buf)/sizeof(TCHAR),(LPARAM)(void*)buf);
//********************************
}
return buf;
} VC++ 文件夹窗口路径 文件夹地址栏路径
[解决办法]
SH开头的API函数hook, 或者 相关API的hook
[解决办法]
写个com到explorer进程不就好了嘛,你这是要闹哪样
[解决办法]
只要要监控explorer做的事情的话,《Windows Shell扩展编程完全指南》足够了
如果要监控所有的程序去操作文件。那需要全局注入或者驱动去实现了。
SHFileOperation是shell32.dll中的函数,还不如hook他下面会调用的CreateFile、DeleteFile之类的函数。
[解决办法]
奉劝楼主不要把有限的生命浪费在无限的加密解密死循环中!