利用shutdown.exe作的自动关机程序

王朝other·作者佚名  2006-01-30
窄屏简体版  字體: |||超大  

利用shutdown.exe作的自动关机程序

Amoon 05/10/02

注: 有关系统管机程序 shutdown 的详细资料,请查看

http://blog.csdn.net/Amoon100/services/trackbacks/493910.aspx

本程序利用之作的自动关机程序.程序界面如下:

制作过程相当简单,只需在vc6下添加一些变量,然后为设置自动关机按钮添加如下消息处理函数即可:

void CShutdownDlg::OnButtonSet() //Auto shutdown

{

// TODO: Add your control notification handler code here

UpdateData();

int sel;

sel=CWnd::GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO2);

switch(sel)

{

case IDC_RADIO1:

m_index=1;

break;

case IDC_RADIO2:

m_index=2;

break;

}

int min,hour;

char szCommandLine[500];

LPSYSTEMTIME ptime=new SYSTEMTIME;

GetLocalTime(ptime);

if(m_index==1)

{

if(m_hour<0||m_hour>=24)

{

MessageBox("请在时钟编辑框中输入 0 到 24 之间的整数 !!","Error!!",MB_ICONERROR);

return ;

}

if(m_min<0||m_min>=60)

{

MessageBox("请在分钟编辑框中输入 0 到 60 之间的整数 !! ","Error!!",MB_ICONERROR);

return ;

}

if(m_hour==0&&m_min==0)

{

MessageBox("您不能在时钟,分钟编辑框中均输入为 0 !!","Error!!",MB_ICONERROR);

return ;

}

hour=ptime->wHour;

min=ptime->wMinute;

min=m_min+min;

if(min>=60)

{

min=min-60;

hour++;

}

if(hour>23)

hour=hour-24;

}

else if(m_index==2)

{

hour=m_time.GetHour();

min=m_time.GetMinute();

}

STARTUPINFO si={sizeof(si)};

PROCESS_INFORMATION pi;

sprintf(szCommandLine,"at %d:%d shutdown.exe -s -t 300 -c \"您设置了自动关机,要想取消自动关机,点击 开始 菜单,然后点 [运行] ,在其中输入 :shutdown -a,按确定即可取消自动关机!!\"",hour,min);

//MessageBox(szCommandLine); //ues only to test

if(0==CreateProcess(NULL,szCommandLine,NULL,NULL,FALSE,0,NULL,NULL,&si,&pi) )

MessageBox("创建进程失败");

delete ptime;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航