在VC6.0中调用浏览器访问WEB页面

博客可能围绕浏览器和Web相关内容展开,涉及在Windows系统下的相关应用及工具,不过具体内容缺失,推测会介绍这些工具的使用等信息技术相关要点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在VC6.0中调用浏览器访问WEB页面 作者:小辉


一、前 言

  不少软件作品都在其[帮助]菜单中加入了[访问我们的主页……]之类的功能,小辉对此颇感兴趣,查了一些关于它的实现方法,总觉得过于复杂。小辉在设计《小辉桌面王——酒井法子写真集系列》的时候,成功地在程序中实现了[访问小辉的主页……]的功能(右图中的第四个按钮),代码段非常简洁,现在有关设置思想和实现代码附后。《小辉桌面王——酒井法子写真集》是小辉写的一个小工具,感兴趣的读者可以从这里下载源代码(498KB)

二、设计思想

  小辉的实现方法是:首先,通过读取注册表,取得Windows默认浏览器的路径名,然后带参数执行默认浏览器,所带的参数即所要调用的主页地址。——说穿了其实很简单的。
  Windows默认浏览器的键值在注册表中的存放目录是‘HKEY_CLASSES_ROOT/htmlfile/shell/open/command’。
  实现代码如下:

三、代码设计

void CXHDeskDlg::OnBtnWeb()
{
    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);
            strcat(ShellChar," www.neaase.net/~xiaohui");
            // 启动浏览器
            WinExec(ShellChar,SW_SHOW);

        }
        else
            MessageBox("WEB浏览器打开错误!","错误",MB_OK);
    }
    else
        MessageBox("WEB浏览器打开错误!","错误",MB_OK);
    //关闭注册表
    RegCloseKey(hSubKey);
    RegCloseKey(hkRoot);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值