vbs 更改某一文件图标
时间: 2024-04-14 13:26:46 浏览: 30
要使用 VBScript (VBS) 更改某一文件的图标,你可以使用 `Shell` 对象和 `Registry` 对象来修改注册表项。下面是一个示例的 VBScript 代码,用于更改文件的图标:
```vbscript
Set objShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
' 设置新的图标文件路径
strIconPath = "C:\path\to\new_icon.ico"
' 设置新的图标索引(如果图标文件中包含多个图标)
intIconIndex = 0
' 设置要更改图标的文件路径
strFilePath = "C:\path\to\file.txt"
' 获取文件扩展名
strFileExt = objFSO.GetExtensionName(strFilePath)
' 创建注册表项
strKeyPath = "HKCU\Software\Classes\" & strFileExt & "\DefaultIcon"
objShell.RegWrite strKeyPath, strIconPath & "," & intIconIndex, "REG_SZ"
' 刷新资源管理器
Set objAppShell = CreateObject("Shell.Application")
objAppShell.Namespace(0).Items.Item(objFSO.GetAbsolutePathName(strFilePath)).InvokeVerb("refresh")
```
在上面的示例中,你需要将 `strIconPath` 设置为你想要使用的新图标文件的路径。如果图标文件中包含多个图标,你可以通过修改 `intIconIndex` 的值来选择特定的图标索引。然后,将 `strFilePath` 设置为你想要更改图标的文件路径。
该 VBScript 代码会创建或修改注册表项来指定新的图标路径和索引。然后,它使用 Shell.Application 对象来刷新资源管理器窗口,以使更改生效。
请注意,在运行 VBScript 代码之前,请确保你具有足够的权限来修改注册表项。此外,更改图标后,可能需要刷新资源管理器窗口才能看到新图标的变化。
希望这可以帮助到你!如有其他问题,请随时提问。