如何创建自己的后缀名

如何创建自己的后缀名,第1张

以前写过相关的一遍文章, 复制到下面了,希望对你有帮助。 使用Windows的用户都知道,当我们双击一个后缀为txt文件时,就会用记事本打开这个文件,双击一个后缀为doc文件时,word就会打开。这就是Windows的文件关联技术!有没有办法让我们自己做的程序也能关联一些指定后缀的文件呢?比如,我编写了一款播放器,可以让电脑上的mp3文件都变成我指定的图标,当双击mp3文件时时,会打开我的制作播放器,并且播放。下面,我就说明这个效果怎么实现,并且说明在程序中怎么处理关联信息! 首先,文件的关联是通过注册表实现的,为了说清楚这个问题,我首先讲解手动添加文件关联的方法,这里,我假设要将我制作的“汐木记事本”程序与我独创的后缀为.xtx文件关联! (1)打开注册表编辑器 (2)找到主键HKEY_CLASSES_ROOT (3)在HKEY_CLASSES_ROOT下新建子键,名称为.xtx,修改“默认”的值为ximu 建好后的结构如下图: (4)在HKEY_CLASSES_ROOT建立子键,名称为ximu (这个名称要和上面的.xtx中“默认”的值一致,否则关联不上),将其中的“默认”的值改为"新建X文档"(这个无所谓的,随便) (5)在ximu下建立shell,shell下建立open,open下建立command,点击command,将其中的“默认”的值改为你的程序所在的路径,并且在路径后写一个%1,如:F:\vb相关\汐木实验室\制作室\汐木记事本V1.00\汐木记事本V1.00\bin\Release\汐木记事本V1.00.exe %1 整个结构如下图: 这样,文件的关联就完成了!还需要做的是,把文件的图标也关联上,让所有的.xtx文件的图标变成我指定的图标: 在上面提到的ximu下建立DefaultIcon,将其中的“默认”的值改为你需要的图标文件的路径,修改后,效果如下:可以看到,xtx文件的图标都变成了我指定的: 下面,我就来说明,如何实用程序代码,实现文件关联。使用的是VB2005 使用了VB2005中的新增功能:My组件,代码如下,我做了注释,很简单: My.Computer.Registry.ClassesRoot.CreateSubKey(".xtx") ’创建.xtx子键 My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\.xtx", "", "ximu" ) ‘修改.xtx中的“默认”一值 My.Computer.Registry.ClassesRoot.CreateSubKey("ximu") ‘在HKEY_CLASSES_ROOT下建立ximu子键 My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\ximu", "", "新建X文档" ) '修改ximu中“默认”一值 My.Computer.Registry.ClassesRoot.CreateSubKey("HKEY_CLASSES_ROOT\ximu\shell\open\command") ’建立步骤(5)中的层次结构 My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\ximu\shell\open\command", "", "F:\vb相关\汐木实验室\制作室\汐木记事本V1.00\汐木记事本V1.00\bin\Release\汐木记事本V1.00.exe %1" ) ‘修改command中的“默认”一值 注意:这里我直接用了路径,如果需要相对路径(推荐用),可以使用My.Application.Info.DirectoryPath获取 My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\ximu\DefaultIcon", "", "F:\vb相关\汐木实验室\制作室\汐木记事本V1.00\汐木记事本V1.00\txt.ico ) '设置图标的关联,推荐相对路径!如果使用dll中的资源,应该在dll的路径后加逗号,然后写上编号。如:C:\WINDOWS\system32\wmploc.dll,-617 这样就完成了文件的关联,知道了原理,即使你用其他版本的vb,也可以实现这个功能。值得注意的是,“默认”这个值,每个子键中只能有一个,就是你建立子键时,自动生成的那个,你不可以自己建一个叫“默认”的项目!要修改这个自动生成的“默认”值,只需将参数设为"",而不是"默认",否则不行,如:应该是My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\.xtx", "", "ximu" _ ) 而不是:My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\.xtx", "默认", "ximu" _ ) 完成了关联,你会发现,双击后缀为xtx的文件时,我们设定的程序打开了!但是,问题又来了,怎么让程序知道双击了哪个文件呢?不然怎么进行处理?下面我来介绍对关联信息的处理!使程序获取被双击了的文件的路径,其实这很简单: 用到Command函数,下面的代码可以获取路径: msgbox(Command) 有了文件的路径,你还发愁吗,该干嘛干嘛! 完成了文件关联,相信你就可以编写一个完美的程序了!

希望采纳

文件夹选项里取消选择“隐藏已知文件类型的扩展名”然后把新建立的文件“.”后面的后缀改为ABC 按住SHIFT用鼠标右键选择“打开方式”然后选择程序“记事本”并且选中“始终用选择程序打开”


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7968699.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存