启动任务栏上操作问题(高分)

liken218 2002-08-02 05:26:02
我把应用程序图标缩在启动任务栏上,但无法操作,如重新打开和退出,即click mouse的右键就会出现操作菜单,哪位高手指导一下小弟一条路走走?

原程序如下:

应用程序的App的InitInstance()中增加下面的代码

NOTIFYICONDATA tnd;
tnd.cbSize=sizeof(NOTIFYICONDATA);
tnd.hWnd=m_pMainWnd->m_hWnd; //设置与图标相联的窗口
tnd.uID=IDR_MAINFRAME; //设置要显示的图标为主帧窗口图标
tnd.uFlags=NIF_MESSAGE|NIF_ICON|NIF_TIP; //设置标志,使其余的值有效
tnd.uCallbackMessage=WM_TRAY; //设置窗口响应消息为WM_TRAY
tnd.hIcon=LoadIcon(MAKEINTRESOURCE(IDR_MAINFRAME)); //设置图标句柄
strcpy(tnd.szTip,"我的程序"); //设置提示信息
::Shell_NotifyIcon(NIM_ADD,&tnd); //在托盘上加上图标
m_pMainWnd->ShowWindow(SW_HIDE);//隐藏主窗口
m_pMainWnd->UpdateWindow();

...全文
39 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
GoogleGeek 2002-08-03
  • 打赏
  • 举报
回复
to:csdnmem
在你的CMainFrame::OnClose()
{
NOTIFYICONDATA tnid;
tnid.cbSize=sizeof(NOTIFYICONDATA);
tnid.hWnd=m_hWnd;
tnid.uID=IDR_MAINFRAME;//保证删除的是我的图标
Shell_NotifyIcon(NIM_DELETE,&tnid);
PostQuitMessage(WM_QUIT)
}
csdnmem 2002-08-03
  • 打赏
  • 举报
回复
但是关闭程序时,tray不会更新
大家怎么都没注意呢?
s_phoenix 2002-08-03
  • 打赏
  • 举报
回复
gz
dnyz 2002-08-02
  • 打赏
  • 举报
回复
我有一个程序用到系统托盘的,你要吗,把你的email留言给我.

然后给点分,呵呵 :)
GoogleGeek 2002-08-02
  • 打赏
  • 举报
回复
正常的思路同Xeroo(初来乍到,多多关照)
响应WM_TRAY消息!

void CYourApp::OnTray(WPARAM wParam,LPARAM lParam)
{
//The example of how to process the message!
UINT uID;//发出该消息的图标的ID
UINT uMouseMsg;//鼠标动作
POINT pt;
//获得消息的ID
uID=(UINT) wParam;
//获得当前的消息
uMouseMsg=(UINT) lParam;

if(uMouseMsg==WM_RBUTTONDOWN)//如果是单击右键
{
switch(uID)
{
case IDR_MAINFRAME://如果是我的图标
GetCursorPos(&pt);//取得鼠标位置
::SetForegroundWindow( m_hWnd); //将窗口推向前台
CMenu menu;
menu.LoadMenu(IDR_MENU_NEW);
//显示右键菜单
menu.GetSubMenu(0)->TrackPopupMenu(TPM_RIGHTBUTTON|TPM_LEFTALIGN,pt.x,pt.y,this);
//但鼠标离开右键菜单时,即使地删除右键菜单!
//(因为主窗口不可见,这样做只是进行一下简单的模拟)
::PostMessage( m_hWnd, WM_NULL, 0, 0 );
break;
}
}
return;
}
howtotell 2002-08-02
  • 打赏
  • 举报
回复
#define TASKBAR_ICON WM_USER+0x111
#define FLOADMENU WM_USER+0x112

除了你写出来的还要在类视图中右键添加以下的虚函数.
DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
我的程序中是这样的.
LRESULT CIllpcView::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_USER + 100:
if(lParam == WM_LBUTTONDOWN)
{
if(!m_IsShow)
{
::AfxGetApp()->m_pMainWnd->ShowWindow(SW_SHOWNORMAL);
BringWindowToTop();
m_IsShow = TRUE;
}
else
{
::AfxGetApp()->m_pMainWnd->ShowWindow(SW_HIDE);
m_IsShow = FALSE;
}
}
if(lParam == WM_RBUTTONDOWN)
{
CMenu menu;
if(!menu.LoadMenu(IDR_SAVE_PIC)) break;
CMenu* pSubMenu = menu.GetSubMenu(0);

CPoint pos;
GetCursorPos(&pos);
pSubMenu->TrackPopupMenu(TPM_LEFTALIGN,pos.x,pos.y, this, NULL);
menu.DestroyMenu();
}
if(lParam == WM_LBUTTONDBLCLK)
{
MessageBox(m_desIP,"Destination",MB_OK);
}
break;
}
return CFormView::DefWindowProc(message, wParam, lParam);

}
FFXI 2002-08-02
  • 打赏
  • 举报
回复
按楼上的方法就可以了。
Xeroo 2002-08-02
  • 打赏
  • 举报
回复
在文件的开头添加#define WM_TRAY (WM_APP+100)
然后在消息映射里添加ON_MESSAGE(WM_TRAY,OnTray)
再添加成员函数
void ***::OnTray()
{
UINT uID=(UINT)wParam;
UINT uMouseMsg=(UINT)lParam;
if(uID==IDR_MAINFRAME)
{
switch(uMouseMsg)
{
case WM_RBUTTONDOWN:
...
case WM_LBUTTONDBLCLK:
...
case ...
}
}
}
破解版为最新完美版。支持WIN7隐藏任务栏图标。 使用说明: 把zh_cn.lng_rad分别拷贝到服务端的C:\WINDOWS\system32\rserver30,客户端的C:\Program Files\Radmin Viewer 3目录里。然后在设置为中文就行了。选项"Options..."语言"Language". 最新Radmin 3.4完美破解版 隐藏任务栏图标 ] Radmin (Remote Administrator)是一款屡获殊荣的远程控制软件,它将远程控制、外包服务组件、以及网络监控结合到一个系统里,提供目前为止最快速、强健而安全的工具包。   它有以下特点:   1.运行速度快。   2.Radmin支持被控端以服务的方式运行、支持多个连接和IP 过滤(即允许特定的IP控制远程机器)、个性化的档互传、远程关机、支持高分辨率模式、基于Windows NT的安全支持及密码保护以及提供日志文件支持等。   3.在安全性方面,Radmin支持Windows NT/2000用户级安全特性,您可以将远程控制的权限授予特定的用户或者用户组,Radmin将以加密的模式工作,所有的数据(包括屏幕影像、鼠标和键盘的移动)都使用128位强加密算法加密; 服务器端会将所有操作写进日志文件,以便于事后查询,服务器端有IP过滤表,对IP过滤表以外的控制请求将不予回应。   4.Radmin 目前支持TCP/IP协议,应用十分广泛。   安全性亮点:   高级 256-位 AES 强加密用于所有数据流。   可以使用 Windows Security 或 Radmin Security。   Windows 安全性支持对特定用户使用不同的权限,或对主域、可信域和活动目录的用户组使用不同的权限。 支持自动使用登录用户凭证和 Kerberos 验证。   Radmin 安全性支持对添加到 Radmin Server 访问列表的用户使用不同的权限。 Radmin 用户验证使用新的基于 Diffie-Hellman 的密钥交换,密钥长度 2048 位。   IP Filter 仅允许从特定 IP 地址和网络访问 Radmin Server。   添加到日志文件的 DNS 名称和用户名信息。   智能防护密码猜测。   安全性已经构建到了 Radmin 的核心:   Radmin 服务器有两个安全子系统。 因此您可以设置 Radmin 使用 Windows 的内嵌安全性或 Radmin 安全性。 Radmin 支持 Windows Vista/XP/2003/2000(32位和64位)用户级安全性,带有 Kerberos 和 NTLMv2 支持,以限制来自本地计算机、主域、可信域或活动目录的用户对特定用户或用户组的远程访问。 安全设置接口与 Windows 标准统一。   使用 Radmin 安全性时,您可以为 Radmin 用户设置不同的权限。 对于用户验证和会话密钥,使用了 Diffie-Hellman 交换 2048 位密钥的设置。   对于数据流加密,Radmin 使用了带 256 密钥的 AES。 Radmin 为每个会话生成独特的 256 位密钥,从而实现了无与伦比的保护。   使用的算法是最新的加密方法,密钥长度也远远高于行业标准。   所有数据,包括屏幕图像、光标移动和键盘信号都始终加密。 对于 Radmin 2.x 和 3.x 是无法取消加密的。   Radmin 将其所有操作和事件记录到日志文件中。   Radmin 有个 IP 过滤器表,允许您限制对特定 IP 地址和网络的远程访问。   Radmin 有内置的代码测试防御机制,保护程序的代码不受改变。   Radmin 用大随机码序(random bit sequence)为每个连接生成特有的私钥,以实现无与伦比的保护。 访问密码以加密的形式保存,不会以任何形式在计算机之间传输,防止第三方截取或生成密码。   Radmin 防止错误的服务器配置。 Radmin Server 不允许空密码。   Radmin Server 积极地保护其设置,它们保存在系统注册表里。 只有管理员权限的用户才能访问这个注册表区段。   智能防护密码猜测。 这项保护包含的功能有密码反猜测安全延时、密码猜测次数过多禁止 IP 地址等。   Radmin Server 在 Windows Vista/XP/2003/2000 (32 位和 64 位) 上作为一个服务启动,而不作为应用程序启动,增强了安全性。   您可以在您的计算机屏幕上的一个窗口或全窗口内看见远程计算机的画面。   您所有的搜索活动和 新闻都直接的传输到您的远程计算机,您可以工作在远程计算机上就跟在自己的计算机上一样正确的执行。根据我们的测试及使用者的回报,Radmin在速度及可以工作的数量上胜过其他的远程控制软件。   这些远程的计算机可以放置在因特网或您的局域网络内的任何一个地方,有了Radmin您不必需要一个快速的网络联机来在远程的计算机上工作,即使您只能利用modem来联机,您也可以每秒能够到达屏幕更新5-10次的合理速度。如果利用局域网络联机的话,您可以每秒能够到达屏幕更新100-500次的实时速度。它可以上下调整来挽救带宽。   安全和可靠性   Radmin 是容易使用和非常安全的,数据以128位加密传送的,这个软件是以TCP/IP协议为基底,在广域及局域网络内有最多最广泛的协定。这个意思是您可以控制世界上任何一台的计算机。当在"Full control"的模式下时,您可以让远程的计算机做您想要的事情;档案的来回传送,甚至关机。 那是,假如您是这个系统的管理者或是已经授权给sysadmin这些允许。 Radmin 从开始就设计的非常安全。   它极为可靠,工作了许多个月也不会有例外。   容易使用   Radmin有一个重要的优势就是有一个简单的接口,它没有一些无用的功能特色来膨胀这个软件,让它难以使用、学习和变的更慢。
最新Radmin 3.4完美破解版 隐藏任务栏图标 ] Radmin (Remote Administrator)是一款屡获殊荣的远程控制软件,它将远程控制、外包服务组件、以及网络监控结合到一个系统里,提供目前为止最快速、强健而安全的工具包。   它有以下特点:   1.运行速度快。   2.Radmin支持被控端以服务的方式运行、支持多个连接和IP 过滤(即允许特定的IP控制远程机器)、个性化的档互传、远程关机、支持高分辨率模式、基于Windows NT的安全支持及密码保护以及提供日志文件支持等。   3.在安全性方面,Radmin支持Windows NT/2000用户级安全特性,您可以将远程控制的权限授予特定的用户或者用户组,Radmin将以加密的模式工作,所有的数据(包括屏幕影像、鼠标和键盘的移动)都使用128位强加密算法加密; 服务器端会将所有操作写进日志文件,以便于事后查询,服务器端有IP过滤表,对IP过滤表以外的控制请求将不予回应。   4.Radmin 目前支持TCP/IP协议,应用十分广泛。   安全性亮点:   高级 256-位 AES 强加密用于所有数据流。   可以使用 Windows Security 或 Radmin Security。   Windows 安全性支持对特定用户使用不同的权限,或对主域、可信域和活动目录的用户组使用不同的权限。 支持自动使用登录用户凭证和 Kerberos 验证。   Radmin 安全性支持对添加到 Radmin Server 访问列表的用户使用不同的权限。 Radmin 用户验证使用新的基于 Diffie-Hellman 的密钥交换,密钥长度 2048 位。   IP Filter 仅允许从特定 IP 地址和网络访问 Radmin Server。   添加到日志文件的 DNS 名称和用户名信息。   智能防护密码猜测。   安全性已经构建到了 Radmin 的核心:   Radmin 服务器有两个安全子系统。 因此您可以设置 Radmin 使用 Windows 的内嵌安全性或 Radmin 安全性。 Radmin 支持 Windows Vista/XP/2003/2000(32位和64位)用户级安全性,带有 Kerberos 和 NTLMv2 支持,以限制来自本地计算机、主域、可信域或活动目录的用户对特定用户或用户组的远程访问。 安全设置接口与 Windows 标准统一。   使用 Radmin 安全性时,您可以为 Radmin 用户设置不同的权限。 对于用户验证和会话密钥,使用了 Diffie-Hellman 交换 2048 位密钥的设置。   对于数据流加密,Radmin 使用了带 256 密钥的 AES。 Radmin 为每个会话生成独特的 256 位密钥,从而实现了无与伦比的保护。   使用的算法是最新的加密方法,密钥长度也远远高于行业标准。   所有数据,包括屏幕图像、光标移动和键盘信号都始终加密。 对于 Radmin 2.x 和 3.x 是无法取消加密的。   Radmin 将其所有操作和事件记录到日志文件中。   Radmin 有个 IP 过滤器表,允许您限制对特定 IP 地址和网络的远程访问。   Radmin 有内置的代码测试防御机制,保护程序的代码不受改变。   Radmin 用大随机码序(random bit sequence)为每个连接生成特有的私钥,以实现无与伦比的保护。 访问密码以加密的形式保存,不会以任何形式在计算机之间传输,防止第三方截取或生成密码。   Radmin 防止错误的服务器配置。 Radmin Server 不允许空密码。   Radmin Server 积极地保护其设置,它们保存在系统注册表里。 只有管理员权限的用户才能访问这个注册表区段。   智能防护密码猜测。 这项保护包含的功能有密码反猜测安全延时、密码猜测次数过多禁止 IP 地址等。   Radmin Server 在 Windows Vista/XP/2003/2000 (32 位和 64 位) 上作为一个服务启动,而不作为应用程序启动,增强了安全性。   您可以在您的计算机屏幕上的一个窗口或全窗口内看见远程计算机的画面。   您所有的搜索活动和 新闻都直接的传输到您的远程计算机,您可以工作在远程计算机上就跟在自己的计算机上一样正确的执行。根据我们的测试及使用者的回报,Radmin在速度及可以工作的数量上胜过其他的远程控制软件。   这些远程的计算机可以放置在因特网或您的局域网络内的任何一个地方,有了Radmin您不必需要一个快速的网络联机来在远程的计算机上工作,即使您只能利用modem来联机,您也可以每秒能够到达屏幕更新5-10次的合理速度。如果利用局域网络联机的话,您可以每秒能够到达屏幕更新100-500次的实时速度。它可以上下调整来挽救带宽。   安全和可靠性   Radmin 是容易使用和非常安全的,数据以128位加密传送的,这个软件是以TCP/IP协议为基底,在广域及局域网络内有最多最广泛的协定。这个意思是您可以控制世界上任何一台的计算机。当在"Full control"的模式下时,您可以让远程的计算机做您想要的事情;档案的来回传送,甚至关机。 那是,假如您是这个系统的管理者或是已经授权给sysadmin这些允许。 Radmin 从开始就设计的非常安全。   它极为可靠,工作了许多个月也不会有例外。   容易使用   Radmin有一个重要的优势就是有一个简单的接口,它没有一些无用的功能特色来膨胀这个软件,让它难以使用、学习和变的更慢。
开机大师是一款能够让您的电脑定时开机关机的快捷软件,操作简单,无须BIOS设置等,即可一键创建每天/每星期/每月的开机/关机多种任务,并且可以指定开机后执行的程序。从此你就不必每天手动点击开机键即可让你的电脑自动开机,十分方便!   开机大师使用方法 点击创建自动开关机任务,设置需要的运行时间,然后点击确定即可。 开机大师 v.1.0.44官方版更新日志 修复-有时不能自动开机的问题; 修复-部分机型不能自动关机的问题; 修复-字体在高分辨率下的显示; 修复-部分机型自动开机后屏幕不亮的问题; 修复-部分文件类型不能自动打开的问题; 修复-部分杀毒软件报毒的问题; 修复-Windows Server 2008下启动失败的问题; 修复-自动关机后再开机,不能启动软件的问题; 修复-点击测试开机按钮没有反应的问题; 修复-没有联网的情况下无法打开软件的问题; 修复-权限不足导致无法自动关机开机的问题; 修复-没有网络连接的情况下点击意见反馈按钮和关于按钮导致程序崩溃的问题; 修复-打开编辑任务窗口关闭后再打开时任务名变空的问题; 修复-某些情况下退出程序不正确的问题; 修复-多个开机大师进程并存问题; 修复-某些情况下不能休眠的问题; 修复-重复添加任务时没有刷新旧任务的问题; 优化-切换到仅一次选项时刷新日期至当天; 优化-自动关机提示; 优化-系统盘空间不足提示; 优化-任务列表栏添加浮动提示; 优化-操作体验,全面支持触摸屏操作; 优化-创建任务时可以选择执行或关闭程序; 优化-新增底部状态栏时间显示和版本信息显示; 优化-创建自动开机任务成功时弹窗提示关机方式; 优化-兼容部分低端机型,Windows平板也能玩开机大师; 新增-强大的键盘鼠标操作脚本,让你的电脑更加智能,更加强大;",
无限制简体中文版,很好用的电子教室(电脑教室)管理软件 适用于Windows的课堂管理系统 NetSupport School 是一流的培训软件解决方案,让教师能够以个别方式、按预定小组或者对整个班级进行辅导、监视,并与学生们互动交流。 监听 最新版本的 NetSupport School v11.41.0007简体中文版 将先进的课堂 PC监视、实时演示和加注工具同创新型客制化测验套件、互联网和应用程序控制、实时音频监听、自动化课程设计、打印机管理、即时通讯控制、内容监控及桌面安全等功能结合起来,可以完全应对和满足当今现代化课堂的挑战和要求。 NetSupport School 经过多年的演进,能够不断地应对当今现代化课堂所面临的各种挑战,确保与日新月异的IT 环境保持兼容。 对于新版本来说,不仅着重于引入具有创新性的新功能,而且还检查现有功能的情况,确保其仍然适用且与现代教学实践相一致。 出于这种考虑,NetSupport School 11 版提供了大量的新功能和增强的功能以及性能的改进,并扩大对新兴技术的支持,所有这些全都打包在一个新颖美观的用户界面里。 问答模块 新的问答模块提供了一组简单而引人注目的工具,可促进课堂上对学习的积极评估。它让教师能够加强和巩固教学要点,即时估量学生在课堂上的理解 采用“游戏节目”的方法,教师可以快速向班级提出口头问题,允许根据回答速度、以小组方式或随机地选择学生。可以对个人或在适当情况下对小组给分并加以跟踪 此功能的核心是能够迅速而有效地提供同学间互评和对学生个别评价,同时还向课堂引入的新提问方式,如“传球式”提问法。 抢答模式。 输入答案模式。 随机选择模式。 能够随机地将学生分成小组。 能够指定小组数量。 能够根据团组名/颜色创建小组。 能够将问题“传递”给下一个学生。 能够设置学生回答问题前的思考时间。 能够设置学生回答问题的时间限制。 能够将回答正确的学生从下一轮中排除。 能够将回答不正确的学生从下一轮中排除。 可选择同学间互评。 能够对整个小组或学生个人给分。 可选择回答不正确扣分。 Version 11 版引入了一个新组件,可从 Apple iTunes 和 Google Play 应用程序商店免费下载。 NetSupport 教师助理应用程序是传统桌面教师端应用程序的延伸,可在您现有的 NetSupport 管理的教室环境中使用,为教师提供了在 ICT 教学区周围更好的移动性,助教利用这一理想工具可以帮助监督学生进度。 兼容 iPad、iPod、iPhone、Android 平板电脑和智能手机,在某一设备上安装后,该应用程序可与 NetSupport 桌面教师端软件配合,使教师能够自由地在教室周围走动,有助于保持主要控制功能和监视所有学生工作站。 平板电脑上支持的功能: 支持 Android 和 iPad 平板电脑。 查看学生缩略图。 向学生发送预设的消息。 阻止受限制的网站。 设定许可的网站。 阻止所有 Internet 访问。 锁定/解锁学生电脑。 注销学生电脑。 学生屏幕遮蔽/撤消遮蔽。 限制学生打印。 设定许可的应用程序。 阻止受限制的应用程序。 选择学生群组。 详情视图。 查看学生“请求帮助”通知。 对学生缩放。 按姓名/教师顺序对学生排序。 查看当前应用程序。 查看当前网站。 设置连接密码。 显示当前所连接教师助理数量的教师端徽章。 智能手机上支持的功能: 支持 Android 和 Apple iOS 智能手机。 向学生发送预设的消息。 阻止受限制的网站。 设定许可的网站。 阻止所有 Internet 访问。 锁定/解锁学生电脑。 注销学生电脑。 学生屏幕遮蔽/撤消遮蔽。 限制学生打印。 设定许可的应用程序。 阻止受限制的应用程序。 设置连接密码。 网络管理员控制台 11 版对网络管理员控制台实现了一系列重大增强,主要围绕两个关键功能领域。首先是安全策略,对所有 PC可以按照预先定义的一组策略进行检查,即时识别未启用杀毒软件、Windows 更新或 Internet 防护的电脑。 其次是策略管理工具,利用该工具可在全学校范围内永久地定义和实施NetSupport 限制。 当前,教室管理解决方案在课程持续期间实行使用控制,一旦教师 PC 断开连接,这些限制随即停止。在 NetSupport School 11 中,这些限制采用集中方式实施,一天 24 小时有效。在某一课程进行中,可通过教师特定设置覆盖这些限制。 网络管理员控制台的新功能和增强功能包括: 查看/设置学生和教师的电源管理策略。 查看/设置学生和教师的 Windows 更新策略。 查看/设置学生和教师的用户访问控制策略。 查看学生和教师的杀毒软件状态。 查

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧