网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VC++ > 正文
在VC中为应用程序添加图形超链接功能
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式

}

/////////////////////////////////////////////////// CMapHyperLink implementation
void CMapHyperLink::SetDefaultCursor()
{
 if (m_hLinkCursor == NULL) // No cursor handle - load our own
 {
  // Get the windows directory
  CString strWndDir;
  GetWindowsDirectory(strWndDir.GetBuffer(MAX_PATH), MAX_PATH);
  strWndDir.ReleaseBuffer();
  strWndDir += _T("\winhlp32.exe");
  // This retrieves cursor #106 from winhlp32.exe, which is a hand pointer
  HMODULE hModule = LoadLibrary(strWndDir);
  if (hModule) {
   HCURSOR hHandCursor = ::LoadCursor(hModule, MAKEINTRESOURCE(106));
   if (hHandCursor)
    m_hLinkCursor = CopyCursor(hHandCursor);
  }
  FreeLibrary(hModule);
 }
}

LONG CMapHyperLink::GetRegKey(HKEY key, LPCTSTR subkey, LPTSTR retdata)
{
 HKEY hkey;
 LONG retval = RegOpenKeyEx(key, subkey, 0, KEY_QUERY_VALUE, &hkey);
 if (retval == ERROR_SUCCESS) {
  long datasize = MAX_PATH;
  TCHAR data[MAX_PATH];
  RegQueryValue(hkey, NULL, data, &datasize);
  lstrcpy(retdata,data);
  RegCloseKey(hkey);
 }
 return retval;
}

void CMapHyperLink::ReportError(int nError)
{
 CString str;
 switch (nError) {
  case 0:
   str = "The operating system is out\nof memory or resources."; break;
  case SE_ERR_PNF:
   str = "The specified path was not found."; break;
  case SE_ERR_FNF:
   str = "The specified file was not found."; break;
  case ERROR_BAD_FORMAT:
   str = "The .EXE file is invalid\n(non-Win32 .EXE or error in .EXE image)."; break;
  case SE_ERR_ACCESSDENIED:
   str = "The operating system denied\naccess to the specified file."; break;
  case SE_ERR_ASSOCINCOMPLETE:
   str = "The filename association is\nincomplete or invalid."; break;
  case SE_ERR_DDEBUSY:
   str = "The DDE transaction could not\nbe completed because other DDE transactions\nwere being processed."; break;
  case SE_ERR_DDEFAIL:
   str = "The DDE transaction failed."; break;
  case SE_ERR_DDETIMEOUT:
   str = "The DDE transaction could not\nbe completed because the request timed out."; break;
  case SE_ERR_DLLNOTFOUND:
   str = "The specified dynamic-link library was not found."; break;
  case SE_ERR_NOASSOC:
   str = "There is no application associated\nwith the given filename extension."; break;
  case SE_ERR_OOM:
   str = "There was not enough memory to complete the operation."; break;
  case SE_ERR_SHARE:
   str = "A sharing violation occurred. ";
  default:
   str.Format("Unknown Error (%d) occurred.", nError); break;
 }
 str = "Unable to open hyperlink:\n\n" + str;
 AfxMessageBox(str, MB_ICONEXCLAMATION | MB_OK);
}

HINSTANCE CMapHyperLink::GotoURL(LPCTSTR url, int showcmd)
{
 TCHAR key[MAX_PATH + MAX_PATH];
 // First try ShellExecute()
 HINSTANCE result = ShellExecute(NULL, _T("open"), url, NULL,NULL, showcmd);
 // If it failed, get the .htm regke

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号