我需要制作一个安全软件来限制用户在Windows中的复制和粘贴。所以我用C ++ API HOOK来挂钩剪贴板。当某个进程想要获取剪贴板数据时,最近我可以获取该setclipboarddata的窗口句柄。 但是现在我需要获取文件信息,就像setclipboard数据窗口中的文件路径一样。我该怎么办? 例如,记事本进程打开一个文件“ C:\ 1.txt”并绘制一个窗口以显示 txt数据。我可以获取窗口句柄,如何获取txt文件路径。
答案 0 :(得分:1)
使用类似这样的内容:
DWORD proc_id;
TCHAR path[MAX_PATH];
GetWindowThreadProcessId(wnd, &proc_id);
HANDLE proc_handle = OpenProcess(PROCESS_QUERY_LIMITED_INFORMATION, FALSE, proc_id);
GetProcessImageFileName(proc_handle, path, MAX_PATH);
CloseHandle(proc_handle);