Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8700913
  • 博文数量: 1413
  • 博客积分: 11128
  • 博客等级: 上将
  • 技术积分: 14685
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-13 10:03
个人简介

follow my heart...

文章分类

全部博文(1413)

文章存档

2013年(1)

2012年(5)

2011年(45)

2010年(176)

2009年(148)

2008年(190)

2007年(293)

2006年(555)

分类: C/C++

2006-09-12 13:20:08

[点评:他们大多数使用了SystemParametersInfo函数,从字面理解,这个函数是“系统参数信息”,在MSDN中有更详细的说明]
1.   禁止/启用屏幕保护及电源管理
static UINT dss_GetList[] = {SPI_GETLOWPOWERTIMEOUT, SPI_GETPOWEROFFTIMEOUT, SPI_GETSCREENSAVETIMEOUT};

static UINT dss_SetList[] = {SPI_SETLOWPOWERTIMEOUT, SPI_SETPOWEROFFTIMEOUT, SPI_SETSCREENSAVETIMEOUT};

static const int dss_ListCount = _countof(dss_GetList);
1.1   禁止屏幕保护及电源管理
{
   m_pValue = new int[dss_ListCount];
   for (int x=0;x<dss_ListCount;x++)
   {
      // 禁止屏幕保护及电源管理
      VERIFY(SystemParametersInfo (dss_SetList[x], 0, NULL, 0));
   }
   delete[] m_pValue;
}

1.2   启用屏幕保护及电源管理
{
   m_pValue = new int[dss_ListCount];
   for (int x=0;x<dss_ListCount;x++)
   {
      //启用屏幕保护及电源管理
      VERIFY(SystemParametersInfo (dss_SetList[x], m_pValue[x], NULL, 0));
   }
   delete[] m_pValue;
}

2.   禁止/启用系统热键
bool bOld;
2.1   禁止系统热键
//屏蔽掉系统键
SystemParametersInfo(SPI_SETSCREENSAVERRUNNING,true,&bOld,SPIF_UPDATEINIFILE);

2.2   启用系统热键
//恢复系统热键   
SystemParametersInfo(SPI_SETSCREENSAVERRUNNING,false,&bOld,SPIF_UPDATEINIFILE);

3.   隐藏/显示WINDOWS系统任务栏
3.1   隐藏系统任务栏
//隐藏WINDOWS系统任务栏
   ::ShowWindow (::FindWindow("Shell_TrayWnd",NULL),SW_HIDE);
3.2   显示系统任务栏
//恢复WINDOWS系统任务栏正常显示
::ShowWindow (::FindWindow("Shell_TrayWnd",NULL),SW_SHOW);
阅读(727) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~