I am trying to use Process.Start to launch a local html file in the default browser.
An example url is as follows:
"file:///C:/Documentation/HelpContent/default_CSH.htm#SectionA/Topic1.htm"
Problem is, the "#SectionA/Topic1.htm" bit gets stripped off for some reason, so that this information isn't passed to the browser. It does however work fine for a non-local url.
Does anyone know how I can get this to work or is it some sort of preventative security issue?
thanks
Use Process.Start
on iexplore.exe
, so that you can specify the URL specifically as its argument:
System.Diagnostics.Process.Start("iexplore.exe", @"file:///c:/dir/file.html#anchor");
Launching a URL with an anchor in a browser does not work if you let the OS determine the default browser. The only way to make this work is to specify the browser's executable as binarycoder wrote for IE. It works the same way for Firefox.
The best solution is obviously to determine the path to the default browser from the registry and then specifically call that executable.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With