使用WinExec打开浏览器的有关问题
使用WinExec打开浏览器的问题
如题,要实现效果:设置一个按钮,点击该按钮后打开某一网页,网页地址从数据库中取。代码如下
在我的电脑上运行没问题,点击按钮,弹出IE打开的谷歌页面,在别人win7的电脑上,弹出下面的错误窗口
这是什么问题啊,请高手指点,谢谢!
------解决方案--------------------
用下面这个吧,更快一些
ShellExecute(NULL,_T("open"),_T("iexplore.exe"),str,NULL,SW_SHOW);
------解决方案--------------------
建议你不要局限于单字节编码。
------解决方案--------------------
直接输入网址就行了:
ShellExecute(NULL,_T("open"),_T("http://www.baidu.com"),str,NULL,SW_SHOW);
这个API会自动用关联的程序打开文件、URL
如题,要实现效果:设置一个按钮,点击该按钮后打开某一网页,网页地址从数据库中取。代码如下
HKEY hkRoot,hSubKey; //定义注册表根关键字及子关键字
char ValueName[256];
unsigned char DataValue[256];
unsigned long cbValueName=256;
unsigned long cbDataValue=256;
char ShellChar[256]; //定义命令行
DWORD dwType;
//打开注册表根关键字
if(RegOpenKey(HKEY_CLASSES_ROOT,NULL,&hkRoot)==ERROR_SUCCESS)
{
//打开子关键字
if(RegOpenKeyEx(hkRoot,
"htmlfile\\shell\\open\\command",
0,
KEY_ALL_ACCESS,
&hSubKey)==ERROR_SUCCESS)
{
RegEnumValue(hSubKey,//读取注册表,获取默认浏览器的命令行
0,
ValueName,
&cbValueName,
NULL,
&dwType,
DataValue,
&cbDataValue);
strcpy(ShellChar,(char *)DataValue); // 调用参数(主页地址)赋值
CString str;
str.Format("%s", ShellChar);
str.Replace("-nohome","");
str.Replace("\"%1\"","");
str += dz; //dz是从数据库中取的网址,此处是www.google.cn
WinExec(str,SW_SHOW);
}
else
{
RegCloseKey(hSubKey);//关闭注册表
RegCloseKey(hkRoot);
}
}
在我的电脑上运行没问题,点击按钮,弹出IE打开的谷歌页面,在别人win7的电脑上,弹出下面的错误窗口
这是什么问题啊,请高手指点,谢谢!
------解决方案--------------------
用下面这个吧,更快一些
ShellExecute(NULL,_T("open"),_T("iexplore.exe"),str,NULL,SW_SHOW);
------解决方案--------------------
建议你不要局限于单字节编码。
------解决方案--------------------
直接输入网址就行了:
ShellExecute(NULL,_T("open"),_T("http://www.baidu.com"),str,NULL,SW_SHOW);
这个API会自动用关联的程序打开文件、URL