如何优雅的在资源管理器显示软件目录

呃,其实A盘就是存放一些个人文件和一些绿色软件,非绿色软件还是在c盘路径

不知道为啥,加了刷新代码,还是没作用

不知道,我用着:ok:啊。
你发一下你的完整代码吧,你上面发的那个生成的desktop.ini里是不包含exe的,只有路径。

我经常把U盘改成A.

建议检查一下文件夹的系统属性。有时候系统属性会被清除,导致icon显示不出来……

你的.ahk里只对desktop.ini赋予了+s属性,但是文件夹并没有。文件夹也需要有系统属性,不然icon好像也显出不来。

另外,建议生成desktop.ini的时候,IconResource直接用相对路径,增加便携性。
比如:

[.ShellClassInfo]
IconResource=程序名.exe,0

这样绿色软件文件夹被拷贝到别的地方,icon不用二次设置、仍然能显示出来。

修改单个文件夹图标,也可以用.bat文件,但需要手动编辑指定图标文件的名称:

::@ECHO OFF



color 8a

Echo.  
Echo.  
Echo     ---------------------------------------------- 
Echo.  
Echo.  
echo 	The bat file will change the icon for 
echo.
echo 	the current folder.
Echo.  
Echo.  
Echo     ---------------------------------------------- 
Echo.  


set iniFileName=desktop.ini
set CurrentDir=%cd%
set upperDir=

::define the iconfile
set iconFile=%%SystemRoot%%\system32\SHELL32.dll




:: iconindex 205:red flower, 110:red tick sign, 27:power off sign
set iconIndex=205



ECHO.
ECHO.
ECHO.
ECHO Processing...Please wait, don't close this window.
ECHO.
ECHO.
ECHO.
ECHO.
ECHO.
ECHO.

attrib -s -h %iniFileName%
echo [.ShellClassInfo]>%iniFileName%
echo IconFile=%iconFile%>>%iniFileName%

echo IconIndex=%iconIndex%>>%iniFileName%

attrib +s +h %iniFileName%

cd ..

attrib +s "%CurrentDir%"

::pause

这优麒麟都有类似的功能,你还好意思说?

讨论的是windows :sweat_smile:

从win1.0开始系统盘盘符是(A:),后来win95开始;系统盘盘符是(C:) ,并运用至今。所以说A-Z26个英文字母有24个被作为windows盘符。你把U盘盘符改为(A:),那是不可能的

因为就一句话:什么事情都按规律来。

很奇怪的一个现象,只要把文件夹移动到其它路径就显示了。

有图有真相

image

image

你对应的信息已经过时了。A 盘盘符在新版本的系统中已经被开放出来可被修改。

与其说是规律,还不如说是历史遗留问题/用户习惯。这些都是人为的,并不是客观规律

一款小软件 “绿软文件夹”谁用谁知道。

这个要是自动获取文件夹内的程序图标,能批量设置文件夹内所有绿色软件的目录就好了。

我试了下这么搞,不好用,文件夹和exe长得一模一样,缺乏辨识度,要是能自动加个文件夹的边框才好。

1 个赞

其实mac那样挺好的,软件就是一个文件夹目录,双击就直接执行目录内的主程序,右键访问文件夹内容。

专门做个图标就解决了

文件夹里有多个exe怎么确定哪个是主运行文件

选和文件夹名字一模一样的,没有一样的就第一个找到的exe。

1 个赞

举例说
Adobe Photoshop 2022的文件夹名就是Adobe Photoshop 2022
里面没有一个exe是Adobe Photoshop 2022
如果选目录第一个exe是convert.exe
image

然后就尴尬了