ShellExecuteはあなたが探している関数です。実行可能ファイルタイプと登録済みファイルタイプの両方を処理でき、サポート内容に応じて、ファイルに対してあらゆる種類のアクション(動詞)を実行できます。
構文は次のとおりです。
HINSTANCE ShellExecute(
HWND hwnd, // handle to owner window.
LPCTSTR lpOperation, // verb to do, e.g., edit, open, print.
LPCTSTR lpFile, // file to perform verb on.
LPCTSTR lpParameters, // parameters if lpFile is executable, else NULL.
LPCTSTR lpDirectory, // working directory or NULL for current directory.
INT nShowCmd // window mode e.g., SW_HIDE, SW_SHOWNORMAL.
);
詳細については、親しみやすい近所のMSDNドキュメントを参照してください。