无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 4910|回复: 22
打印 上一主题 下一主题

[分享] vbs模拟按键全局修改资源管理器文件夹按中等图标查看

[复制链接]
1#
发表于 2020-7-10 10:55:52 | 显示全部楼层
本帖最后由 9zhmke 于 2020-7-10 12:43 编辑
窄口牛 发表于 2020-7-10 00:25
control folders可以打开文件夹选项,还可以用rundll32打开文件夹选项,可是怎么样才能和从菜单里点开一样 ...

昨晚上和今上午试了下,好象不好弄,拼逗了一份,虽然并不能实现功能,看你比较着急所以先发上来给你提供个思路,我下来也在继续调试。
回复

使用道具 举报

2#
发表于 2020-7-10 12:32:37 | 显示全部楼层
本帖最后由 9zhmke 于 2020-7-10 18:02 编辑
窄口牛 发表于 2020-7-10 11:46
不急,只是看到你的作品,以为有解决方案,于是又捡起这个来琢磨。早先就有这个要求,实现不了就搁置了。

弄错了,可以实现,但必须是手动关闭窗口,目前没有找到关闭窗口的方法。 测试.7z (1.17 KB, 下载次数: 9)
后面一段用程序结束打开的这个文件夹,RUN打开文件夹可以是隐形不让用户看到这个不是问题,现在的问题是用程序结束打开的窗口后不会产生列表模式缓存,就是说设置没有生效,必须手动关闭才能有效。
按道理窗口关闭的指令应该是Windows.Quit或者Windows.Close,但一个没反应另一个出错,如果能实现的话,我们就可以很简单让用户直接调用了,在配置文件里写上哪些文件夹用哪种浏览模式,在第一次装机时就一次性优化好。我已以原贴回复CrLf 希望他能出面指点
回复

使用道具 举报

3#
发表于 2020-7-11 10:26:39 | 显示全部楼层
本帖最后由 9zhmke 于 2020-7-11 10:27 编辑
窄口牛 发表于 2020-7-10 11:46
不急,只是看到你的作品,以为有解决方案,于是又捡起这个来琢磨。早先就有这个要求,实现不了就搁置了。

搞定了,原来退出窗口必须放到跳出循环之前,代码中的c:后面还有个路径斜杠的,被安全检查吃掉了

  1. Set WshShell=WScript.CreateObject("WScript.Shell")
  2. Set Shell = CreateObject("Shell.Application")



  3. dirmode "c:"



  4. Function dirmode(dir)
  5.         dim explorer,proc,pid,wins,Current,i'定义变量以免与外面程序中重名
  6.         'WshShell.Run "taskkill /f /im explorer.exe" & dir,0,1'打开用户指定的文件夹,由于打开较慢,不会进入字典
  7.         'WshShell.Run "explorer.exe ",1,1'打开用户指定的文件夹,由于打开较慢,不会进入字典
  8.         WshShell.Run "explorer.exe " & dir,1,1'打开用户指定的文件夹,由于打开较慢,不会进入字典
  9.         Set Wins = Shell.Windows
  10.         dir=UCase("file:///" & replace(dir,"","/"))
  11.         For i=Wins.Count-1 To 0 step -1'先关闭之前打开的相同文件夹
  12.                 Current=LCase(Right(Wins(i).FullName,13))
  13.                 If Current = "\explorer.exe" and UCase(Wins(i).LocationURL) = dir Then Wins(i).Quit
  14.         Next
  15.         wscript.sleep 800'等新窗口打开
  16.         For i=Wins.Count-1 To 0 step -1
  17.                 If LCase(Right(Wins(i).FullName,13)) = "\explorer.exe" and UCase(Wins(i).LocationURL) = dir Then
  18.                         Wins(i).Document.CurrentViewMode = 3 '设置查看方式为缩略图
  19.                         '1、2、5、7 缩略图(此状态可Document.IconSize 设置任意大小),16/48/96/256是小/中/大/超大图标
  20.                         '3列表,4详细信息,6平铺,8内容
  21.                         Wins(i).Document.IconSize = 48
  22.                         '设置图标尺寸为 48
  23.                         Wins(i).Document.SortColumns = "prop:System.ItemNameDisplay;"'设置排序方式为按修改日期逆序排列
  24.                         '为逆序,如 prop:System.ItemNameDisplay; 和 prop:-System.ItemNameDisplay; 减号是相反的顺序
  25.                         '名称prop:System.ItemNameDisplay;                                          修改日期prop:System.DateModified;
  26.                         '类型prop:System.ItemTypeText;System.ItemNameDisplay;  大小prop:System.Size;
  27.                         Wins(i).Document.GroupBy = "System.Null"'设置分组依据为修改日期
  28.                         '名称System.ItemNameDisplay        修改日期System.DateModified
  29.                         '无分组 System.Null                        类型System.ItemTypeText                        大小System.Size  
  30.                         Wins(i).Quit
  31.                         Exit For
  32.                 end if
  33.         Next
  34. End Function
复制代码
回复

使用道具 举报

4#
发表于 2020-7-11 10:41:25 | 显示全部楼层
该怎么样来约定函数后面的参数呢? 按字母好像有点麻烦吧?
用中文如何?比如允许函数后面用以下参数:
缩略图,列表,详细信息,平铺,内容,排序名称,排序日期,排序类型,排序日期,排序大小,排序顺,排序逆,分组无,分组名称,分组日期,分组类型,分组大小,分组顺,分组逆图标尺寸(数值)参考值16/48/96/256是小/中/大/超大图标
回复

使用道具 举报

5#
发表于 2020-7-11 11:42:26 | 显示全部楼层
窄口牛 发表于 2020-7-11 11:19
看来确实不容易实现。

不是搞定了么?在你那里搞不定?
回复

使用道具 举报

6#
发表于 2020-7-11 13:08:00 | 显示全部楼层
本帖最后由 9zhmke 于 2020-7-11 13:12 编辑

是哪一步的时候不行的?没有设为列表模式吗? 能说清楚是哪里不行不?你先把c:\或者你想指定的位置弄成其他的,然后再运行这个就可以看出来了。把文件夹改成你自己想设置的试试: 搞定的.txt (2.63 KB, 下载次数: 7)

回复

使用道具 举报

7#
发表于 2020-7-11 13:30:19 | 显示全部楼层
本帖最后由 9zhmke 于 2020-7-11 13:31 编辑
窄口牛 发表于 2020-7-11 13:12
我想达到的是全局,不是某路径下,原帖就能实现某个路径了。

如果是最外面那不是更简单吗? 最外面.txt (1.62 KB, 下载次数: 11)
这是最外面一层,设了应该对后面就都有效果了。
记着在此之前需要先清除已经设置的那些文件夹的缓存,否则每个文件夹还是有它自己缓存的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-4 09:56

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表