admin 管理员组

文章数量: 888297

Windows CE 手机调用UCWEB浏览器的方法

最近一个项目遇到的一个问题:在一款WM6的手机上调用不起PPC的默认浏览器.而刚好这款手机安装了UCWEB.其版本为6了.想让这个手机调用ucweb.下面是源码:

 

 LPCTSTR root=L"Software//UCWEB6"; //支持6.0版本
//LPCTSTR root=L"Software//UCWEB"; 支持旧版本,但不知道是那个版本了
LPCTSTR homeKey=L"HOMEPATH";
TCHAR path[1024];
DWORD len=1024*sizeof(TCHAR);
DWORD type;

HKEY key=NULL;
DWORD rs;
CString url = _T("www.baiduc.com");

if(ERROR_SUCCESS==RegCreateKeyEx(HKEY_LOCAL_MACHINE,root,0,NULL,0,0,NULL,&key,&rs)
   &&ERROR_SUCCESS==RegQueryValueEx(key,homeKey,NULL,&type,(LPBYTE)path,&len))
{

     PROCESS_INFORMATION pi;
    CString  exe=path;
    exe+=L"//UCWEB.exe";
    CreateProcess(exe,url,NULL,NULL,FALSE,CREATE_NEW_CONSOLE,NULL,NULL,NULL,&pi);
}

 

//

其实原理很简单.就是到注册表中查找UCWEB的注册路径.然后创建UCWEB这个进程.

这里注意点的就是:UCWEB的注册表位置不知道.这里要知道了,简单的方式找一个注册表查看器.找到这个key就可以了.

 

附加点调用PPC的浏览器源码:

 

    SHELLEXECUTEINFO ShExecInfo = {0};
    ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
    ShExecInfo.fMask =SEE_MASK_FLAG_NO_UI;
    ShExecInfo.hwnd = m_hWnd; //要一个窗口句柄的
    ShExecInfo.lpVerb = _T("open");
    ShExecInfo.lpFile =iUrl;
    ShExecInfo.nShow = SW_SHOW;
    ShExecInfo.hInstApp = NULL;
    ShellExecuteEx(&ShExecInfo);

本文标签: Windows CE 手机调用UCWEB浏览器的方法