Process.Start("IExplore.exe");
Does this always work, on every machine ? If not, how to do it properly ?
... EDIT: .................................
The problem with Process.Start("http://www.example.com/"); is that we have to target a local html file, with some querystring specifying which page to load in the html frameset. So our URL looks like the following:
G:\PathToHelpFolder\index.html#search?page=1.html
If you pass this path to Process.Start, an error is generated: "cannot find the file". This is caused by the querystring at the end. (#search?page=1.html)
So, we have to start explorer (or default browser would be better) with the filepath as a command line argument. We found the method above at the MSDN documentation. (Process.Start("IExplore.exe");) Our only question is if this method is reliable enough to deploy to a commercial app. Mono isn't a problem, only windows systems are targeted.
... EDIT : Our solution ......
Our solution was to get the default browser from the registry, and start that with the filename as argument. (as stated in: http://stackoverflow.com/questions/2646825/launching-default-browser-with-html-from-file-then-jump-to-specific-anchor/2646944#2646944)