打算往资源管理器发送ctrl+v(粘贴)但失败了

时间:2023-01-17 08:40:05
要做一个粘贴文件的工作,把某文件粘贴到某个资源管理器当前显示的路径。其他都做好了,就是通知explorer去干活这里失败了。


拿到了父窗口的句柄了。

spy++看到消息发过去了。但不行。

发现一个问题。正常按ctrl+v,处理这个消息的是direct ui中的一个子窗口。但是消息不能传递到下面。

不知道哪位亲可以提供思路。

目前不打算激活资源管理器到前台,因为交互不友好,打算悄悄的发送粘贴消息通知explorer。

20 个解决方案

#1


那你直接用最原始的方法如何,找到地址栏窗口,SetWindowText或者发消息,不经过剪切板。

#2


引用 1 楼 yang79tao 的回复:
那你直接用最原始的方法如何,找到地址栏窗口,SetWindowText或者发消息,不经过剪切板。


这个办法绝对不靠谱,我考虑过了。请各位亲给其他意见吧,不要复制粘贴

#3


可以先获取资源管理器当前的路径,然后再复制文件

#4


引用 3 楼 fishion 的回复:
可以先获取资源管理器当前的路径,然后再复制文件



关键是获取不了,不知道怎么获取,哥哥你有方法不?

#5


关键还是在SetClipboardData上, 
HANDLE SetClipboardData(
  UINT uFormat, // clipboard format
  HANDLE hMem   // data handle
);
uFormat应当是文件链接的一种格式, 只是MSDN上没有公开这种格式.

#6


引用 5 楼 coohai 的回复:
关键还是在SetClipboardData上, 
HANDLE SetClipboardData(
  UINT uFormat, // clipboard format
  HANDLE hMem   // data handle
);
uFormat应当是文件链接的一种格式, 只是MSDN上没有公开这种格式.



我现在已经把cf_hdrop 写道剪贴板了。发ctrl+v失败了。你说的explorer私有的那个格式,我玩不来

#7


:( 我也玩不来

#8


该回复于2013-05-02 08:41:37被版主删除

#9


本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
引用 8 楼 xianglitian 的回复:
    ……


新官?上任?三八?火?

#10


引用 9 楼 tyh_123 的回复:
本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的

#11


引用 10 楼 xianglitian 的回复:
Quote: 引用 9 楼 tyh_123 的回复:

本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的


不带你这么玩的吧?编辑我的回复啊,然后再回复我?

我X,你这是ccav的工作人员吗?

#12


引用 11 楼 tyh_123 的回复:
Quote: 引用 10 楼 xianglitian 的回复:

Quote: 引用 9 楼 tyh_123 的回复:

本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的


不带你这么玩的吧?编辑我的回复啊,然后再回复我?

我X,你这是ccav的工作人员吗?

主要是因为回帖通知篇幅比较长
而且一般帖主不愿结帖我会删除结帖通知
况且我又没有歪曲你的意思
你有什么可以可质疑的

#13


引用 12 楼 xianglitian 的回复:
Quote: 引用 11 楼 tyh_123 的回复:

Quote: 引用 10 楼 xianglitian 的回复:

Quote: 引用 9 楼 tyh_123 的回复:

本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的


不带你这么玩的吧?编辑我的回复啊,然后再回复我?

我X,你这是ccav的工作人员吗?

主要是因为回帖通知篇幅比较长
而且一般帖主不愿结帖我会删除结帖通知
况且我又没有歪曲你的意思
你有什么可以可质疑的


那不说别的了,你应该是程序猿吧。帮我看看这个问题先    打算往资源管理器发送ctrl+v(粘贴)但失败了

#14


没看明白你什么意思
直接copyfile过去不就可以么

#15


引用 14 楼 xianglitian 的回复:
没看明白你什么意思
直接copyfile过去不就可以么


我其实就是指向知道当前的资源管理器正在显示那一个目录。

#16


引用 14 楼 xianglitian 的回复:
没看明白你什么意思
直接copyfile过去不就可以么


要拿到路径

#17


我好想明白你的意思了
前提是当前开着资源管理器
而且就是目标文件夹
然后你想把一些东西复制到这个文件夹下
当然操作在后台完成
可对?
兄弟你都是半个月上一次论坛啊
估计看到我的回帖儿童节都过了
你这问题3个月了都没解决
项目进度怎么控制的

#18


http://blog.csdn.net/liu4584945/article/details/6221367

#19


引用 17 楼 xianglitian 的回复:
项目进度怎么控制的


我一直都上,只不过不登帐号。或者等多一点哥们回复。然后我再一并回复。
项目进度?唉。。。这个功能吧,是人家用屁股想出来的。对于该功能,不存在进度问题。

你的理解大致都差不多。不过主要问题还在于如何拿到“资源管理器”当前显示的路径。

ps:过儿童节没有什么不好的 打算往资源管理器发送ctrl+v(粘贴)但失败了

#20


您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了 疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面 界面版关于版主结帖工作的具体办法

#1


那你直接用最原始的方法如何,找到地址栏窗口,SetWindowText或者发消息,不经过剪切板。

#2


引用 1 楼 yang79tao 的回复:
那你直接用最原始的方法如何,找到地址栏窗口,SetWindowText或者发消息,不经过剪切板。


这个办法绝对不靠谱,我考虑过了。请各位亲给其他意见吧,不要复制粘贴

#3


可以先获取资源管理器当前的路径,然后再复制文件

#4


引用 3 楼 fishion 的回复:
可以先获取资源管理器当前的路径,然后再复制文件



关键是获取不了,不知道怎么获取,哥哥你有方法不?

#5


关键还是在SetClipboardData上, 
HANDLE SetClipboardData(
  UINT uFormat, // clipboard format
  HANDLE hMem   // data handle
);
uFormat应当是文件链接的一种格式, 只是MSDN上没有公开这种格式.

#6


引用 5 楼 coohai 的回复:
关键还是在SetClipboardData上, 
HANDLE SetClipboardData(
  UINT uFormat, // clipboard format
  HANDLE hMem   // data handle
);
uFormat应当是文件链接的一种格式, 只是MSDN上没有公开这种格式.



我现在已经把cf_hdrop 写道剪贴板了。发ctrl+v失败了。你说的explorer私有的那个格式,我玩不来

#7


:( 我也玩不来

#8


该回复于2013-05-02 08:41:37被版主删除

#9


本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
引用 8 楼 xianglitian 的回复:
    ……


新官?上任?三八?火?

#10


引用 9 楼 tyh_123 的回复:
本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的

#11


引用 10 楼 xianglitian 的回复:
Quote: 引用 9 楼 tyh_123 的回复:

本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的


不带你这么玩的吧?编辑我的回复啊,然后再回复我?

我X,你这是ccav的工作人员吗?

#12


引用 11 楼 tyh_123 的回复:
Quote: 引用 10 楼 xianglitian 的回复:

Quote: 引用 9 楼 tyh_123 的回复:

本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的


不带你这么玩的吧?编辑我的回复啊,然后再回复我?

我X,你这是ccav的工作人员吗?

主要是因为回帖通知篇幅比较长
而且一般帖主不愿结帖我会删除结帖通知
况且我又没有歪曲你的意思
你有什么可以可质疑的

#13


引用 12 楼 xianglitian 的回复:
Quote: 引用 11 楼 tyh_123 的回复:

Quote: 引用 10 楼 xianglitian 的回复:

Quote: 引用 9 楼 tyh_123 的回复:

本帖最后由 xianglitian 于 2013-04-22 08:42:45 编辑
            引用 8 楼 xianglitian 的回复:    ……

新官?上任?三八?火?
我是10年上任的


不带你这么玩的吧?编辑我的回复啊,然后再回复我?

我X,你这是ccav的工作人员吗?

主要是因为回帖通知篇幅比较长
而且一般帖主不愿结帖我会删除结帖通知
况且我又没有歪曲你的意思
你有什么可以可质疑的


那不说别的了,你应该是程序猿吧。帮我看看这个问题先    打算往资源管理器发送ctrl+v(粘贴)但失败了

#14


没看明白你什么意思
直接copyfile过去不就可以么

#15


引用 14 楼 xianglitian 的回复:
没看明白你什么意思
直接copyfile过去不就可以么


我其实就是指向知道当前的资源管理器正在显示那一个目录。

#16


引用 14 楼 xianglitian 的回复:
没看明白你什么意思
直接copyfile过去不就可以么


要拿到路径

#17


我好想明白你的意思了
前提是当前开着资源管理器
而且就是目标文件夹
然后你想把一些东西复制到这个文件夹下
当然操作在后台完成
可对?
兄弟你都是半个月上一次论坛啊
估计看到我的回帖儿童节都过了
你这问题3个月了都没解决
项目进度怎么控制的

#18


http://blog.csdn.net/liu4584945/article/details/6221367

#19


引用 17 楼 xianglitian 的回复:
项目进度怎么控制的


我一直都上,只不过不登帐号。或者等多一点哥们回复。然后我再一并回复。
项目进度?唉。。。这个功能吧,是人家用屁股想出来的。对于该功能,不存在进度问题。

你的理解大致都差不多。不过主要问题还在于如何拿到“资源管理器”当前显示的路径。

ps:过儿童节没有什么不好的 打算往资源管理器发送ctrl+v(粘贴)但失败了

#20


您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了 疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面 界面版关于版主结帖工作的具体办法

#21