帮助文件在两个浏览器中打开

时间:2011-06-13 15:55:14

标签: vb.net .net-3.5

在我们的应用程序中,当您转到“菜单>帮助...”时,它会在Internet Explorer中打开我们的帮助文件,这是理想的效果。但是,我们也设置了快捷键“F1”来打开帮助文件。它仍然在Internet Explorer中打开帮助...但它也会在用户的默认Web浏览器中同时打开它们!

以下是打开Web浏览器的事件方法中的代码:

Private Sub menuHelpHelp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuHelpHelp.Click

      Dim temp As String = String.Format("{0}\Internet Explorer\iexplore.exe", Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles))
      Dim temp2 As String = String.Format("{0}", Globals.HelpFilePath)
      If Not System.IO.File.Exists(temp2) 
         MessageBox.Show(String.Format("Could not find index.html, run ""help_zip.exe"" inside the Doc folder as an Administrator to restore the help system (make sure to overwrite all files when asked!)"))
      Else
         System.Diagnostics.Process.Start(temp, temp2)
      End If
   End Sub

如果我在单击“帮助”菜单项后单步执行代码,则在按下“System.Diagnostics.Process.Start(temp,temp2)”行时,IE将按预期打开。但是,当我按下F1后执行相同的操作时,它会先在用户的默认浏览器中打开,然后在IE中打开。有任何想法吗?应用程序的这一部分中的代码是用VB.NET编写的,应用程序是.NET 3.5应用程序。

1 个答案:

答案 0 :(得分:1)

出于好奇,您是否尝试将操作绑定到另一个按钮以查看问题是否仍然存在?将它从F1切换到F2,看它是否仍然发生。几乎可以肯定的是,除非你的程序中有一些代码,否则你会忘记这会引起问题。

修改 您似乎正在为帮助路径设置全局变量..这意味着默认的F1帮助可能会加载正确的文件。所以我会选择“F1仍然是默认的帮助操作”。你需要解开它。