afan 发表于 2010-8-6 22:52:15

回复 14# lynfr8


    谢谢前辈关注~

第一个问题读取再对比的方法我也想过,但如果存在文件夹与文件同名,或文件同名不同后缀的情况就没法判断了,比如文件夹“aaa”、文件“aaa.txt”、“aaa.au3”,这三个同时存在同级目录,就无法识别了。
第二个问题我也试过只允许一个实例的操作,结果也是一样的情况,鼠标光标很忙碌。

lynfr8 发表于 2010-8-6 23:04:00

想了很多方法,最后也只有剪贴版好像较好。
召唤P大拦截系统消息搞定吧。
3mile 发表于 2010-8-6 22:52 http://www.autoitx.com/images/common/back.gif


    剪切板获取路径是可行的,也无需拦截系统消息

lynfr8 发表于 2010-8-6 23:04:32

回复 16# afan


3mile 的思路可行,再测试一下

afan 发表于 2010-8-6 23:05:36

想了很多方法,最后也只有剪贴版好像较好。
召唤P大拦截系统消息搞定吧。
3mile 发表于 2010-8-6 22:52 http://www.autoitx.com/images/common/back.gif


    呵呵,剪贴板操作目前来说是最能解决第一个问题的,但也存在一些弊端,比如选择的数量比较多时也会出现鼠标忙碌的状况等~
拦截消息应该是最能解决此问题的方式,拖放文件时有WM_DROPFILES消息,不知道这个选择文件会有什么消息,如何拦截处理也是个问题

afan 发表于 2010-8-6 23:09:01

回复 18# lynfr8


    剪贴板操作是我目前的处理方式,正因为觉得不太合适所以就在一楼提出不考虑使用此法,想找到最佳的解决途径。
而且第二个问题也很重要,如不解决,第一个问题就没有实用意义了

3mile 发表于 2010-8-6 23:13:21

回复 19# afan
WM_DROPFILES拖拽应该不是最佳选择。

afan 发表于 2010-8-6 23:21:01

回复 21# 3mile


    是的,所以我在一楼提出了也不考虑此法

lynfr8 发表于 2010-8-6 23:21:30

回复 19# afan


    还有一个问题:如果是正常的选择多个文件复制监控剪切板能获取路径,但是如果是加入右键菜单通过右键菜单调用代码来谋求获取剪切板却无法响应,比如选择了几张图片,然后通过右键菜单调用代码,会发现代码无法执行,但是如果是选择一个图片文件则可以,类似的情况也出现在其他一些不同类型文件同时选择也无法调用右键菜单的目标程序。

lynfr8 发表于 2010-8-6 23:23:17


这种情况就无法响应右键菜单,估计和注册表有关。

lynfr8 发表于 2010-8-6 23:25:54

还是等等其他坛友是否有完美的解决方法
忙了一周终于有时间去抓自己i-autoit的bug
就不继续参与谈论了
谁研究出来解决方法的
重重加分!

afan 发表于 2010-8-6 23:51:14

回复afan


    还有一个问题:如果是正常的选择多个文件复制监控剪切板能获取路径,但是如果是加入右 ...
lynfr8 发表于 2010-8-6 23:21 http://www.autoitx.com/images/common/back.gif

这个应该是使用注册表位置的问题
我用的 HKLM\SOFTWARE\Classes\*\shell ,在其下建立子项,貌似不会有这个问题出现~

C.L 发表于 2010-8-7 03:50:44

这个问题好像不大好实现,右键菜单运行,系统应该是默认选中多份,就会触发运行多份的副本,这似乎是操作系统控制的吧?是否可在代码里控制,这个我真不知道,或者可能拦截消息来实现?没试过,不知道是否可行。

afan 发表于 2010-8-7 10:30:45

这个问题好像不大好实现,右键菜单运行,系统应该是默认选中多份,就会触发运行多份的副本,这似乎是操作系 ...
C.L 发表于 2010-8-7 03:50 http://www.autoitx.com/images/common/back.gif


    不知道WinRAR之类的软件是如何实现只运行一个Gui程序的,好像它是先调用的RarExt.dll

netegg 发表于 2012-1-15 13:41:10

分割主题

本帖最后由 netegg 于 2012-1-15 13:42 编辑

可以,不过注册表值的数据稍有不同,用通配就行了

这些情况中完全可以把右键菜单当作个批处理环境

afan 发表于 2012-1-15 13:46:22

可以,不过注册表值的数据稍有不同,用通配就行了

这些情况中完全可以把右键菜单当作个批处理环境
netegg 发表于 2012-1-15 13:41 http://www.autoitx.com/images/common/back.gif


    不懂… 蛋蛋能弄个例子吗?
页: 1 [2] 3 4
查看完整版本: 如何获取在文件夹窗口中选择的多个文件的文件名