如何以编程方式更改.bat文件的图标?
我想知道将 .bat
文件的图标实际设置为任意图标的方法是什么。 我将如何以编程方式进行此操作,独立于我可能使用的语言。
I'd like to know what's the way to actually set the icon of a .bat
file to an arbitrary icon.
How would I go about doing that programmatically, independently of the language I may be using.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(11)
我假设您正在谈论 Windows,对吗? 我不相信你可以直接更改批处理文件的图标。 图标嵌入在.EXE 和.DLL 文件中,或由.LNK 文件指向。
您可以尝试更改文件关联,但该方法可能会根据您使用的 Windows 版本而有所不同。 XP 中的注册表会出现此问题,但 Vista 中我不确定。
I'll assume you are talking about Windows, right? I don't believe you can change the icon of a batch file directly. Icons are embedded in .EXE and .DLL files, or pointed to by .LNK files.
You could try to change the file association, but that approach may vary based on the version of Windows you are using. This is down with the registry in XP, but I'm not sure about Vista.
如果您想要批处理文件的图标,
首先为批处理文件创建一个链接,如下所示
在您想要链接的窗口文件夹中右键单击
选择新建-> 快捷方式,然后指定 .bat 文件所在的位置。
这将创建您想要的 .lnk 文件。
然后您可以为链接指定一个图标,
在其属性页面上。
这里提供了一些不错的图标:
%SystemRoot%\System32\SHELL32.dll
对于 Windows 10 上的我来说:
%SystemRoot% == C:\Windows\
更多图标在这里:
C:\Windows\System32\imageres.dll
另外你可能想要第一行
在批处理文件中为“cd ..”
如果您将批处理文件存储在 bat 子目录中
比你的快捷方式应该执行的位置低一级。
If you want an icon for a batch file,
first create a link for the batch file as follows
Right click in window folder where you want the link
select New -> Shortcut, then specify where the .bat file is.
This creates the .lnk file you wanted.
Then you can specify an icon for the link,
on its properties page.
Some nice icons are available here:
%SystemRoot%\System32\SHELL32.dll
Note For me on Windows 10:
%SystemRoot% == C:\Windows\
More Icons are here:
C:\Windows\System32\imageres.dll
Also you might want to have the first line
in the batch file to be "cd .."
if you stash your batch files in a bat subdirectory
one level below where your shortcuts, are supposed to execute.
我建议使用 BAT 到 EXE 转换器来满足您的需求
i recommand to use BAT to EXE converter for your desires
您可以使用 BAT 到 EXE 转换器之类的程序,例如: 链接
< /a>
该程序允许您添加自定义图标。
You may use a program like BAT to EXE converter for example that one: link
This program permits you to add your custom icon.
尝试 BatToExe 转换器。 它将您的批处理文件转换为可执行文件,并允许您为其设置图标。
Try BatToExe converter. It will convert your batch file to an executable, and allow you to set an icon for it.
尝试使用 shortcutjs.bat 创建一个快捷方式:
您可以使用 -iconlocation 开关指向图标。
try with shortcutjs.bat to create a shortcut:
you can use the -iconlocation switch to point to a icon .
实现此目的的方法之一是:
现在您的 java 程序可以像任何其他 MSWindows 应用程序一样以一种奇特的方式打开。 :)
One of the way you can achieve this is:
Now your java program can be opened in a fancy way just like any other MSWindows apps.! :)
Shell(资源管理器)为批处理文件显示的图标由注册表项确定
,在我的计算机上,
您可以将其设置为您喜欢的任何图标。
但是,这将更改所有批处理文件的图标(除非它们具有扩展名
.cmd
)。The icon displayed by the Shell (Explorer) for batch files is determined by the registry key
which, on my computer is
You can set this to any icon you like.
This will however change the icons of all batch files (unless they have the extension
.cmd
).您可以从这里使用
Bat 到 Exe
转换器:https://web.archive.org/web/20190304134631/http://www.f2ko.de/en/b2e.php
这会将您的批处理文件转换为可执行文件,然后您可以为转换后的文件设置图标。
You could use a
Bat to Exe
converter from here:https://web.archive.org/web/20190304134631/http://www.f2ko.de/en/b2e.php
This will convert your batch file to an executable, then you can set the icon for the converted file.
假设您指的是 MS-DOS 批处理文件:因为它只是一个具有特殊扩展名的文本文件,所以
.bat
文件不存储自己的图标。但是,您可以创建存储图标的
.lnk
格式的快捷方式。Assuming you're referring to MS-DOS batch files: as it is simply a text file with a special extension, a
.bat
file doesn't store an icon of its own.You can, however, create a shortcut in the
.lnk
format that stores an icon.您可以创建一个快捷方式,然后右键单击它 -> 属性-> 更改图标,然后浏览您想要的图标。
希望这有帮助。
要以编程方式设置快捷方式的图标,请使用
SetIconLocation
参阅这篇文章:如何更改现有快捷方式的图标?:
https://devblogs.microsoft.com/scripting/how-can-i-change-the-现有快捷方式的图标/
You can just create a shortcut and then right click on it -> properties -> change icon, and just browse for your desired icon.
Hope this help.
To set an icon of a shortcut programmatically, see this article using
SetIconLocation
:How Can I Change the Icon for an Existing Shortcut?:
https://devblogs.microsoft.com/scripting/how-can-i-change-the-icon-for-an-existing-shortcut/