如何使用VB.net代码更改扩展名的图标?以编程方式更改扩展名图标
0
A
回答
0
好吧,把它们放在VB 2005中,但它也应该在VB 2008中工作。
Imports System
Imports Microsoft.Win32.Registry
Public Class Form1
' Controls:
' txtFT: Textbox, where the user inputs the filetype (eg. ".jpg")
' txtIcon: Textbox, where the user inputs the path to the icon (eg. "C:\icon.ico")
' btnChangeIcon: Button, to call the function.
'-----------------------------------------------------------------------------------------------
Public Sub SetDefaultIcon(ByVal FileType As String, ByVal Icon As String)
Dim rk As Microsoft.Win32.RegistryKey = ClassesRoot
Dim rk1 As Microsoft.Win32.RegistryKey = ClassesRoot
Dim ext As Microsoft.Win32.RegistryKey = rk.OpenSubKey(FileType)
Dim regtype As String = ext.GetValue("")
ext = rk1.OpenSubKey(regtype, True).OpenSubKey("DefaultIcon", True)
ext.SetValue("", Icon)
MessageBox.Show(ext.ToString)
End Sub
Private Sub btnChangeIcon_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnChangeIcon.Click
SetDefaultIcon(txtFT.Text, txtIcon.Text)
End Sub
End Class
在Windows XP上测试。如你所见,它得到文件类型,并获得(默认)值。该值指向其关联,其中包含DefaultIcon键。用户在“txtFT”中输入文件类型,在“txtIcon”中输入图标文件。该表单是Form1。当用户单击btnChangeIcon时,将调用SetDefaultIcon函数。 如果用户在没有输入任何信息的情况下点击btnChangeIcon,它可能会出现问题,因此如果您沿着该路线行进,应该添加一些错误处理。如果你通过代码设置它,你会很好。
对于没有关联的图标我不知道该怎么做,除了自己为它们建立关联。
- SP
0
在Windows中,文件扩展名及其关联的图标和程序存储在注册表中:HKEY_CLASSES_ROOT\
全系统关联。
从Windows XP开始,还有HKEY_CURRENT_USER\Software\Classes\
为当前用户的文件关联,但到目前为止它很少使用。
例如,如果你想改变为.txt
的信息,你会先检查默认值HKEY_CLASSES_ROOT\.txt\
(在我的系统是txtfile
),然后再去匹配键在HKEY_CLASSES_ROOT
- 在这个例子中,它会是HKEY_CLASSES_ROOT\txtfile\DefaultIcon
。
但我不使用VB.NET,所以我不能帮助更多。 (并且可能存在比这里描述的更好的的方式来执行它。)
相关问题
- 1. 以编程方式更改Safari浏览器扩展的图标?
- 2. 以编程方式更改Chrome扩展程序更新频率
- 3. 以编程方式更改ActionBar图标
- 4. 以编程方式更改MediaController图标
- 5. 以编程方式更改标签方向,编程方式
- 6. 以编程方式更改UIButton标题
- 7. 以编程方式禁用Firefox扩展
- 8. 如何以编程方式扩展卷
- 9. 以编程方式更改图像
- 10. 以编程方式更改视图
- 11. 以编程方式更改图像源
- 12. Shell图标扩展编程
- 13. 如何以C++编程方式更改光标图标
- 14. 以编程方式更改高图中的图表标题
- 15. 在Android中以编程方式更改应用程序名称和图标?
- 16. 以编程方式更改图标启动器和应用程序名称
- 17. 如何以编程方式更改S3上的文件名以删除文件扩展名?
- 18. Vim以编程方式保存不同的文件扩展名
- 19. 如何以编程方式更改TextView的图标?
- 20. 以编程方式更改eclipse RCP命令的图标
- 21. 以快速编程方式更改标签栏项目图像
- 22. 如何以编程方式更改.bat文件的图标?
- 23. 如何以编程方式更改ActionBar中的MenuItem图标
- 24. 以编程方式更改Xamarin中UIBarButton项目的图标
- 25. 如何以编程方式更改按钮的图标?
- 26. Java:如何以编程方式更改文件图标?
- 27. PopupWindow如何以编程方式更改图标和背景?
- 28. 如何在c#net中以编程方式更改exe图标
- 29. 以编程方式更改站点的sharepoint图标
- 30. 以编程方式更改任务栏图标(Win32,C++)