MFC 开机自启与系统托盘
来源:互联网 发布:淘宝美工都用什么软件 编辑:程序博客网 时间:2024/06/09 18:03
void CBastron20Dlg::OnClickedPowerboot(){HKEY hKey;LPCTSTR lpRun = L"Software\\Microsoft\\Windows\\CurrentVersion\\Run";if (ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE, lpRun, 0, KEY_WRITE, &hKey)){wchar_t pFileName[MAX_PATH] = { 0 };DWORD dwRet = GetModuleFileName(NULL, pFileName, MAX_PATH);if ((((CButton *)GetDlgItem(IDC_POWERBOOT))->GetCheck())){RegSetValueEx(hKey, L"Bastron", 0, REG_SZ, (BYTE *)pFileName, dwRet);RegCloseKey(hKey);}else{RegDeleteValue(hKey, L"Bastron");RegCloseKey(hKey);}}}void CBastron20Dlg::ToTray(){NOTIFYICONDATA nid;nid.cbSize = (DWORD)sizeof(NOTIFYICONDATA);nid.hWnd = this->m_hWnd;nid.uID = IDR_MAINFRAME;nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;nid.uCallbackMessage = WM_SHOWTASK;//自定义的消息名称nid.hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME));wcscpy_s(nid.szTip, L"Bastron"); //信息提示条Shell_NotifyIcon(NIM_ADD, &nid); //在托盘区添加图标//ShowWindow(SW_HIDE); //隐藏主窗口}LRESULT CBastron20Dlg::OnShowTask(WPARAM wParam, LPARAM lParam){if (WM_KILLFOCUS == wParam){int shen = 8;}if (WM_NCRBUTTONUP == wParam){int shen = 8;}if (wParam != IDR_MAINFRAME){return 1;}switch (lParam){case WM_RBUTTONUP://右键起来时弹出快捷菜单,这里只有一个“关闭”{ LPPOINT lpoint = new tagPOINT; ::GetCursorPos(lpoint);//得到鼠标位置 CMenu menu; menu.CreatePopupMenu();//声明一个弹出式菜单 menu.AppendMenu(MF_STRING, WM_SHOWDESKTOP, L"Show"); menu.AppendMenu(MF_STRING, WM_DESTROY, L"Close"); //增加菜单项“关闭”,点击则发送消息WM_DESTROY给主窗口(已隐藏),将程序结束。 this->SetForegroundWindow(); menu.TrackPopupMenu(TPM_LEFTALIGN, lpoint->x, lpoint->y, this); //确定弹出式菜单的位置 /*HMENU hmenu = */menu.Detach(); menu.DestroyMenu(); //资源回收 delete lpoint;} break;case WM_LBUTTONDBLCLK: //双击左键的处理{ this->ShowWindow(SW_SHOWNORMAL);//简单的显示主窗口完事儿} break;default: break;}return 0;}void CBastron20Dlg::DeleteTray(){NOTIFYICONDATA nid;nid.cbSize = (DWORD)sizeof(NOTIFYICONDATA);nid.hWnd = this->m_hWnd;nid.uID = IDR_MAINFRAME;nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;nid.uCallbackMessage = WM_SHOWTASK; //自定义的消息名称nid.hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME));wcscpy_s(nid.szTip, L"Bastron"); //信息提示条为“计划任务提醒”Shell_NotifyIcon(NIM_DELETE, &nid); //在托盘区删除图标}void CBastron20Dlg::OnDestroy(){CDialogEx::OnDestroy();DeleteTray();}void CBastron20Dlg::OnShowDesktop(){this->ShowWindow(SW_SHOWNORMAL);}
0 0
- MFC 开机自启与系统托盘
- MFC开机自启和关闭
- MFC开机自启动
- MFC 开机自启动
- MFC 设置开机自启动
- MFC应用程序开机自启动
- MFC设置开机自启动
- MFC之系统托盘实现与应用
- Mfc系统托盘
- MFC---系统托盘
- VC MFC 写注册表 开机自启 开机自动运行 RegSetValueEx
- MFC实现程序开机自启动
- MFC开机自启动(写注册表)
- mfc设置程序开机自启动
- VC++ MFC编程实现开机自启动
- oracle 开机自启
- Android开机自启
- 开机自启
- 1007. 素数对猜想 (20)
- SteamVR:Easy Vive(二)抛物线移动
- CSS初学2---继承性和层叠性
- android 四大应用主键之 --- Service(服务)
- 关于java线程的初次了解
- MFC 开机自启与系统托盘
- C程序
- 对称加密与非对称加密相关
- call blind 以及apply方法
- 【学习笔记】centos6.5下kafka安装使用
- TextView 加阴影
- unity发射弓箭轨迹的实现
- 【学习笔记】centos手动释放内存
- 《Android开发艺术探索》 -- AsyncTask 工作原理