我在c ++和windows中使用“ShellExec”来在默认浏览器中打开一个url。
对于极less数客户来说,它会失败,并显示以下消息:“该文件没有与执行此操作相关的程序”。 我知道这意味着在这个客户的registry中“http”文件types关联丢失或无效。
问题:
我可以通过编程方式检测到这个问题并修复或避免它吗? – 我正在考虑使用AssocQueryKey和RegQueryValueEx,但不知道这是可能的。
覆盖TextBox.OnClick在Windows Mobile CE上
当大文件被复制时,os.stat不会更新
Windows API钩子C ++
当在python中读取套接字时,os.read和socket.recv之间是否有区别?
我很感激有关解决这个问题 我没有一个能够显示问题的系统,所以我希望这里的某个人已经解决了这个问题。
这是打开浏览器的代码。 urlToNavigateto会像“http://www.website.com/function?key=9271”
ErrorClass error; SHELLEXECUTEINFO execInfo; ZeroMemory (&execInfo,sizeof(SHELLEXECUTEINFO)); execInfo.cbSize = sizeof(SHELLEXECUTEINFO); execInfo.lpFile = urlToNavigateto.c_str(); execInfo.nShow = SW_SHOWnorMAL; execInfo.hwnd = m_hWnd; // parent window for error messages BOOL bOK = ShellExecuteEx (&execInfo); if (bOK!=TRUE) { STRING errMessage = _T("Could not navigate to url Reason:" )+ FACTORY->GetUtils()->GetPlatformErrorMessage(GetLastError()); LOG_ERROR(errMessage); error.Assign(errMessage); }
Windows ETL跟踪文件格式?
Python:在Windows上打开并读取远程文本文件
如何在Windows环境下获得鼠标单击的坐标(相对于窗口)
C ++exception处理程序问题
Tkinter帆布失效问题(移动时剪辑的对象)
你不知道你想要执行什么操作 。 在这种情况下,你想要的动作是打开的 。
ShellExecute(0,"open","http://www.website.com/function?key=9271",SW_SHOWnorMAL);
使用ShellExecuteEx ,这意味着您将添加:
execInfo.lpVerb = "open"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。