我在 vb.net 中构建了一个软件,您可以在其中进行绘图,并将绘图保存在 .GFrame 文件中。
我的软件工作很棒,它可以成功保存文件并打开文件。
但我有一个问题,我希望当我尝试打开一个 .GFrame 文件时,它会自动打开我的软件并加载该文件。
例如 :
如果您尝试打开 .BTM 文件,它将自动打开“Paint”程序并将文件加载到屏幕上。
那么我怎样才能在我的软件中做同样的事情呢?
这里的 sub main 方法......当您的应用程序以 mainform 启动时,另一个非常相似:
Public Sub Main(ByVal args() As String)
' multiple files might be passed, decide whether to work with them all:
For n As Integer = 0 To args.Length - 1
' do something
Next
' or just the first one:
mFileName = args(0)
End Sub
有3个步骤:
1 - 如上所述,您需要更新程序以处理传递给它的命令行参数;命令行参数当然是您希望程序处理的文件的名称(包括其扩展名)。
2 - 另外,如上所述,您需要将其内置到您的设置文件中。我是这样做的,使用 Inno Setup(免费)作为与我的程序(Windows 的标尺)关联的以扩展名 (.ar4w) 结尾的皮肤文件:
[注册表]
根:HKCR;子密钥:.ar4w;值类型:字符串;ValueData:窗口皮肤的标尺;标志:uninsdeletekey;语言:; 任务:Associate_ar4w_files
根:HKCR;SubKey:窗口皮肤的标尺;值类型:字符串;ValueData:窗口皮肤的标尺;标志:uninsdeletekey;任务:Associate_ar4w_files
根:HKCR;子键:Window skin\Shell\Open\Command 的标尺;值类型:字符串;ValueData: """{app}\aruler.exe"" ""%1"""; 标志:uninsdeletevalue;任务:Associate_ar4w_files
根:HKCR;子项:Window skin\DefaultIcon 的标尺;值类型:字符串;值数据:{app}\arulerlowres.ico,0;标志:uninsdeletevalue;任务:Associate_ar4w_files 代码在这里
3 - 上面还没有提到,如果你想从你的网站打开这些文件,你也可以在你的 .htaccess 文件中添加一行 - 这是我使用的一个:
AddType application/x-arulerforwindows ar4w
希望这可以帮助。