我目前正在使用
在系统的默认浏览器中打开网页std::string url = "http://stackoverflow.com";
ShellExecute(0, 0, url.c_str(), 0, 0, SW_SHOW);
由于我有几个用户默认使用旧的Internet Explorer,我想自动打开包含Firefox或Chrome (如果已安装)的页面(否则或者如果其中一个已经是默认值,则应该使用系统的默认浏览器。
char buffer[MAX_PATH];
HINSTANCE handle = FindExecutable(url.c_str(), NULL, buffer);
仅返回one associated executable,而不返回“打开方式”上下文菜单中显示的可能程序列表:
除了尝试硬编码安装路径之外还有其他方法吗?