注册文件类型,并关联程序(二)
上一期我们给文件类型自定义了图标文件:
Registry.SetValue(@"HKEY_CLASSES_ROOT\MyGuo\DefaultIcon", "", @"D:\bin\Guo.ico");
如果需要定义的文件类型很多(比如播放器要定义avi,mp4,flv等很多视频格式图标),那就需要一堆的ico文件。如果哪天程序的使用者把某个ico文件删除了,那么在Explorer中将显示为那个丑爆的默认图标。所以,把所有ico文件打包到exe文件中是一个不错的方法。
怎么把ico文件打包(编译)到exe文件中,请参看《将多个图标文件编译到C#程序中》;
假设我们把两个ico文件编译到了Guo.exe文件中,第一个作为exe的默认图标,第二个图标就是上面的Guo.ico,那么,上面的代码应该改为:
Registry.SetValue(@"HKEY_CLASSES_ROOT\MyGuo\DefaultIcon", "", @"D:\bin\Guo.exe 2");
表示使用Guo.exe的第二个图标作为默认图标,注意,这里的下标是由1开始的而不是从0开始的。
使用dll作为资源文件也是同理;