How to open the default web browser from in C?


We're planning on switching to using HTML help for some of our software ...but I don't know how to open a web browser from within an application. Here's the particulars and the challenge:

We program entirely in C, using GTK+, and release linux AND Windoze releases. Currently, the Linux side opens a window with help text in it (no active links!!) and on the Windoze side, we use the MS help system (compiled help files, .chm etc).

I assume that opening a browser from a Windoze app isn't so hard ...the default browser is probably available from the registry and no big deal to find and then make a system call.

For Linux however, noting that we use RedHat, Ubuntu, Suze, and CentOS, I don't know how to determine what the default web browser (and path) so I can call it with a system call... Anyone? I know that one option is to use a layout engine like GtkHTML, but we'd really like to just call a web browser instead...


Geek Guide
The DevOps Toolbox

Tools and Technologies for Scale and Reliability
by Linux Journal Editor Bill Childers

Get your free copy today

Sponsored by IBM

Upcoming Webinar
8 Signs You're Beyond Cron

Scheduling Crontabs With an Enterprise Scheduler
11am CDT, April 29th
Moderated by Linux Journal Contributor Mike Diehl

Sign up now

Sponsored by Skybot