none
如何监听windows剪切的过程,用户剪切一堆文件时获取被剪切文件的路径,用户剪切完成后获取剪切后的文件路径集合或者目标文件夹路径? RRS feed

  • 问题

  • 某些app的某个功能,这个功能附带的是剪切过程监听,关联着某个文件或者文件夹,在app开启的状态下,我把关联的文件剪切到另一个位置,再点击app上关联的那个文件图标,没有提示有关文件或者文件夹不存在之类的错误,还能直接打开。当然关闭的情况下就不行了

    不过,是如何做到监听Windows的剪切过程的,即用户使用剪切功能时,获取被剪切的文件的路径,当剪切过程完成后,获取剪切后的文件或文件夹到的路径字符串集合或者目标文件夹的路径。如何做到?

    2018年9月16日 10:49

答案

  • 你好,

    下面的代码是如何得到剪切板的文件路径。

    if (Clipboard.ContainsFileDropList())
     {
             foreach (string source in Clipboard.GetFileDropList())
             {
             }
     }

    如果要监听剪切板事件的话,需要使用系统方法:

    [DllImport("User32.dll", CharSet=CharSet.Auto)]
    public static extern IntPtr SetClipboardViewer(IntPtr hWndNewViewer);

    详细的内容,可以参考:

    https://stackoverflow.com/questions/621577/clipboard-event-c-sharp

    Best regards,

    Zhanglong


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    • 已标记为答案 Trian555 2018年9月17日 12:37
    2018年9月17日 3:01
    版主