如何制作文件(例如.jkl
扩展名),当您打开它时,系统会弹出您的自定义程序。
例如:
我有一个test.jkl
档案
如果我双击它,我的程序将是读它的人
就像.jpg文件扩展名一样,双击文件时,会弹出绘画并显示图像。
更改文件ext时的代码很简单
File.Copy(origFile, origFile.Replace("txt", "jkl")
File.Delete(origFile)
所以现在我有一个.jkl
文件,现在我需要做的是当用户双击.jkl
文件时,该程序将自动打开,询问保存位置,并更改它返回.txt
到用户想要的路径。
我该怎么做?
答案 0 :(得分:1)
将表单加载事件。它会一次又一次地写。它不会破坏你的电脑。如果你想更仔细。读取注册表检查它是否存在然后再次跳过写入。
代码:
My.Computer.Registry.ClassesRoot.CreateSubKey(".jkl").SetValue_
("", "jkl", Microsoft.Win32.RegistryValueKind.String)
My.Computer.Registry.ClassesRoot.CreateSubKey_
("jkl\shell\open\command").SetValue("", Application.ExecutablePath & _
" ""%l"" ", Microsoft.Win32.RegistryValueKind.String)
演示项目的链接:http://www.codeproject.com/Articles/18594/File-Association-in-VB-NET
答案 1 :(得分:0)
我不认为代码是必需的。将文件保存为.jkl后,右键单击该文件并选择"打开" - > "选择默认程序" - >然后浏览到您编写的exe文件以将文件另存为.txt文件。 如果打开选项不可用,请双击该文件并选择选项以选择默认程序。现在浏览你的exe。
命令行参数args [0]是文件全名。
我尝试使用C#代码可以用VB代码完成。
Private Shared Sub Main(args As String())
Console.WriteLine("0: " + args(0))
'Code to rename the file
Console.WriteLine("Done. Press enter")
Console.ReadKey()
End Sub
使用在线转换器的VB代码
{{1}}