vc操作电脑之常用命令
1、重启计算机:
ExitWindowsEx(EWX_REBOOT,0);
2、关机:
ExitWindowsEx(EWX_SHUTDOWN,0);
3、注销:
ExitWindowsEx(EWX_LOGOFF,0);
4、锁屏:
LockWorkStation();
5、使当前程序不在应用栏中出现:
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);//不在任务栏中显示
6、程序最小化到托盘;
所用相关API函数:BOOL Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATA lpdata);
参数dwMessage用来指定托盘的动作,这是一个四字节的值,如下:
1)NIM_ADD(0X00000000):添加一个系统托盘
2)NIM_MODIFY(0X00000001):系统托盘的修改
3)NIM_DELETE(0X00000002):系统托盘的删除
4)NIM_SETFOCUS(0X00000003):令系统托盘获得焦点
5)NIM_SETVERSION(0X00000004):系统托盘设置版本
参数PNOTIFYICONDATA是专门为此服务的结构体,其结构如下:
typedef struct _NOTIFYICONDATA
{
DWORD cbSize; //结构体的大小,单位是字节
HWND hWnd; //此托盘程序的句柄
UNIT uID; //系统为托盘区域每个图标分配的ID
UNIT uFlags; //简单的说,就是一个标示
UNIT uCallbackMessage; //回调函数,需要自己定义一个消息,用来接收鼠标滑过或点击消息
HICON hIcon; //图标
TCHAR szTip[64]; //提示文字的大小
DWORD dwState; //图标的状态
DWORD dwStateMask; //与上面类似
TCHAR szInfo[256]; //显示在气泡通知中的文本
union
{
UNIT uTimeout;
UNIT uVersion;
}
TCHAR szInfoTitle[64]; //气泡通知的标题
DWORD dwInfoFlags; //修改气泡通知相关的标志
GUID guidItem; //图标的GUID
HICON hBalloonIcon; //气泡通知的图标
}NOTIFYICONDATA, *PNOTIFYICONDATA
eg:
m_tnd.cbSize = sizeof(NOTIFYICONDATA);
m_tnd.hWnd = pWnd->GetSafeHwnd();
m_tnk.uID = uID;
m_tnd.hIcon = icon;
m_tnd.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
strcpy(m_tnd.szTip, szToolTip);
//set the tray icon
Shell_NotifyIcon(NIM_ADD, &m_tnd);