用VC实现系统关机(1)

VC++实现系统关机与万年历显示教程 本文还有配套的精品资源,点击获取 简介:本文详细介绍了如何使用VC++开发环境在Windows平台上实现一键关机、定时关机功能和创建一个显示系统时间和万年历的应用程序。首先,通过WinAPI函数实现了系统关机功能,并通过代码示例详细说明了过程。其次,讲解了使用定时器实现定时关机的方法,提供了一个定时器回调函数调用关机函数的示例。然后,演示了如何通过Windows API获取... 阅读详情

    几天上课时有胖子同学问老师关机的代码怎么写,老师用JAVA在eclipse上写了半天没写出来说回去再查查。我当时用VC中的ShellExecute()函数试了半天也没试出来,我的想法是用c:/windows/system32目录下的shutdown.exe来关机,所以首先我得考虑如何用VC执行一个程序。我是这样写的

        ShellExecute(0, "c:/windows/cmd.exe", "", "" , SW_SHOW);

    但是cmd老是执行不了,我也不知道什么原因。刚才在网上查了下,原来要这样写才行:

        ShellExecute(0, "c://windows//cmd.exe", "", "" , SW_SHOW);

    真是奇怪。

    所以,要执行shutdown.exe这样写:

        ShellExecute(0, "c://windows//shutdown.exe", "", "" , SW_SHOW);

    

    第一步成功了,但是要实现关机还得给shutdown传递一个参数才行,那就是 -s,但是现在我还不知道怎么传递这个参数,留作问题以后再解决吧。

    上面的路行不通了,我在网上查了下,找到了ExitWindows(),ExitWindowsEx()这个2函数,试了下ExitWindows(0,0)系统注销了,但是ExitWindowsEx(EWX_SHUTDOWN , 0);却关不了机。再去网上查一下,原来是进程的优先级不够。。。。这我就完全不懂了,只能抄别人的代码了。最终代码如下:

#include<windows.h>

int WINAPI WinMain(HINSTANCE hinstance,
  HINSTANCE prevInstance, 
  PSTR cmdLine,
  int showCmd)
{
 MessageBox(0, "关机", "关机!", MB_OK);

  HANDLE hToken;  
  TOKEN_PRIVILEGES tkp;  
  OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken);  
  LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid);  
  tkp.PrivilegeCount = 1;  
  tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;  
  AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,(PTOKEN_PRIVILEGES)NULL, 0);  
  ExitWindowsEx(EWX_SHUTDOWN , 0);  
 
 return 0;
}

PS:这里有ShellExecute()比较详细的讲解

http://www.cnblogs.com/del/archive/2008/02/13/1068229.html

VC局域网定时关机源代码深入剖析 本文还有配套的精品资源,点击获取 简介:本应用程序利用MFC库开发,专注于实现局域网计算机的定时自动关机。源代码涵盖了用户界面设计、时间管理、网络通信、权限管理、执行关机命令以及错误处理等多个关键部分,提供自定义方式以设置定时关机任务。学习此代码可以增进对MFC框架、Windows API、网络编程、C++面向对象编程及Windows权限模型的理解,对于系统管理和网络编程有... 阅读详情

相关推荐

VC++实现系统待机、关闭、重启(含源码)

VC++实现系统待机、关闭、重启(含源码) VC++实现系统待机、关闭、重启(含源码)

VC++实现自动关机

VC++实现自动关机(2012-07-17 09:15:13)转载▼标签: it  一、关机核心类 close.cpp   // Close.cpp : 实现文件 // #include "stdafx.h" #include "CloseComputer.h" #include "Close.h" // CClose 消息处理程序 DWORD WINAPI GetVerIn

s_alfred的专栏 1173

VC++简单实现关机、重启计算机的方法

简单的实现计算机的关机重启,方便快捷。对于程序员很有帮助,可以下载下来学习一下。

VC实现关机、重启、休眠功能

    可以调用ExitWindowsEx函数实现关机、重启功能,调用SetSystemPowerState API实现休眠功能。    ExitWindowsEx函数可以注销当前用户、关闭系统和重启系统。函数原型如下:    BOOL ExitWindowsEx(         UINT uFlags, //shutdown operation         DWORD dwReserv

fengshengheli的专栏 1636

VC关机与重启程序

这些代码可以都会大家如何实现计算机的开机,关机与注销,帮助大家开发

VC++ 自动关机,定时关闭电脑源程序

摘要:VC/C++源码,系统相关,自动关机,定时关机  VC++ 自动关机,定时关闭电脑源程序,挺简单,但写这款程序比较多,在初学VC的时候,经常写这些小程序,不过具体的方法已经忘了,今天从网上发现了这款源代码,还是花了5分下载的,呵呵,借助源码爱好者分享给喜欢VC的朋友们吧。

VC 关机

我还也。         InitiateSystemShutdown在条件许可的时候可以关闭指定的计算机。     要关闭本地机器,调用进程必须具有SE_SHUTDOWN_NAME特权;要关闭远程机器,调用进程必须具有SE_REMOTE_SHUTDOWN_NAME特权。     缺省的,用户可以使他登陆到的对本地机器的SE_SHUTDOWN_NAME特权有效,管理员可以使SE_REMOTE_SH

申公的专栏 1416

VC++简单实现关机、重启计算机实例代码

本文以一个实例形式介绍了VC++简单实现关机、重启计算机的方法,代码比较实用,有一定的参考价值。完整实例代码如下: void CWebBrowserView::OnMenuShutdown() { // TODO: 在此添加命令处理程序代码 if (AfxMessageBox(确定要关机吗?,MB_YESNO) == IDYES) { HANDLE hToken; TOKEN_PRIVILEGES tkp; // Get a token for this process. if (!OpenProcessToken(GetCurrentProcess(), TOKEN_AD

vc 重启计算机命令,VC 关机/重启

关机/重启的API为:ExitWindowExExitWindowsEx:This function shuts down the system.BOOL ExitWindowsEx( UINT, DWORD);ParametersuFlagsSpecifies the type of shutdown. This parameter must include oneof the followin...

weixin_32820457的博客 817

AutoSAR实战:手把手教你配置PNC(Partial Network Cluster)实现精准休眠与唤醒

本文详细介绍了如何在AutoSAR中配置PNC(Partial Network Cluster)实现精准休眠与唤醒,通过DaVinci Configurator工具逐步指导,结合ComM模块的协同调试,优化车载电子系统的能耗管理。文章包含实战步骤、常见错误排查及功耗优化数据,适合汽车电子开发工程师参考。

weixin_33725239的博客 466

手把手教你用Ollama & AnythingLLM搭建AI知识库,无需编程,跟着做就行!

本地运行大模型耗资源,需要选择较小的模型作为基础模型。在终端中运行时可能会出现 CUDA 错误,表示显存不足,导致提供的端口失效。中文支持不够完善。\3. 文中提到的技术软件工具有:Ollama、Chatbox、Open WebUI、向量数据库、嵌入模型、本地模型 Gemma、AnythingLLM。

2401_86435672的博客 1万+

木马中如何编程实现远程关机(VC版)

  远程控制中,有一个重要的部份就是如何实现远程关机,如在各种黑客入侵中,我们到处可以见到木马的身影,木马它作为一种远程控制软件,它一般是实现了远程关机功能的。如我国大名鼎鼎的木马“冰河”等,都是有这个功能的,只是它是各种功能的集合罢了,今天我们就来看看这个重要的关机部分是如何编程实现的,在这里我就用眼下流行的VC6.0来编写,同时用VC也大大减少了我们的一些设计工作,让我们的菜鸟也来动手写一下自

ark1111的专栏 1620

Prometheus常用配置介绍

除了 scrape_configs 外,上部还有 global 和 rule_files 部分, 其中 global 中 是 全 局 参 数 , scrape_interval 指 定 全 局 默 认 的 时 间 间 隔 , evaluation_interval 指定告警规则校验的时间间隔,rule_files 指定了告警规 则文件的位置名称。• annotations(注释):它们被用于存储更长的其他信息,例如警报描述 或者链接,注释值也可以被模板化。• alert:告警的名称。

weixin_42886699的博客 2262

如何用VC实现系统关机、重启、注销

 如何用VC实现系统关机、重启、注销主要是提权问题.然后一个ExitwindowEx搞定.实现“注销/重启/关机”功能代码:HANDLE hToken;TOKEN_PRIVILEGES tkp;if (FForce) // Forces processes to terminateFFlag |= EWX_FORCE;// Get version info to determine operati

994

利用pyGAM实现广义可加模型(GAM)的实战指南

本文提供了利用pyGAM库实现广义可加模型(GAM)的完整实战指南。通过乳腺癌和房价预测案例,详细讲解了从环境配置、模型构建、核心可视化(部分依赖图)到参数调优(n_splines, lam)的每一步。重点展示了GAM如何平衡模型准确性与可解释性,帮助数据科学家在Python中高效应用这一强大工具。

weixin_29053383的博客 329

新手必看:5分钟搞定Unitree Go1机器狗Gazebo仿真运动控制(附按键图解)

本文为新手提供了Unitree Go1机器狗在Gazebo仿真环境中实现运动控制的快速指南。通过5分钟极简配置和按键图解,帮助开发者快速掌握宇树科技明星产品的基础操作,包括环境搭建、仿真启动和运动控制技巧,适合零基础用户快速上手。

weixin_42550597的博客 300

VC 捕获Windows关机事件

环境VC6.0 MFC 某些时候我们需要在系统关机的时候进行相应的处理。 在某个窗口添加窗口过程函数 LRESULT CMyDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) { // TODO: Add your specialized code here and/or call the base class if

laoyang1018开发笔记 6922

在claude code中使用glm模型出现Unable to connect to Anthropic services的解决方案

本文主要介绍了在claude code中使用glm模型出现Unable to connect to Anthropic services的解决方案,希望能对使用claude code的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 13万+

vc控制计算机关机,192上位机VC MFC实现电脑的重启关机注销功能

192上位机VC MFC实现电脑的重启关机注销功能.jpg (9.09 KB, 下载次数: 0)192上位机VC MFC实现电脑的重启关机注销功能2016-1-29 21:26 上传192上位机VC MFC实现电脑的重启关机注销功能功能展示自己电脑的关机注销重启可以通过鼠标来操作完成也可以通过代码编程控件,比如很多软件安装完成后都有重启电脑功能,我们当前例程也自己编程实现电脑的关机,重启,注销功能...

weixin_42310670的博客 546

CP AUTOSAR标准之AUTOSAR OS(AUTOSAR_SWS_OS)(二)

AUTOSAR OS是一个Operating System,即操作系统。它最核心的功能是管理任务和事件的调度,不同任务间的同步流,并且提供监控和错误处理功能。或者用最简化理解就是一个函数调度器。

CoolBreeze的博客 654

selenium绕过检测,规避检测

现在不少大网站有对selenium采取了监测机制。比如正常情况下我们用浏览器访问淘宝等网站的 window.navigator.webdriver的值为 undefined或者为false。而使用selenium访问则该值为true。那么如何解决这个问题呢?我们正常浏览器登录查看,window.navigator.webdriver的值为false我们通过selenium打开的网页,测试,可见window.navigator.webdriver的值为true。

景天科技苑 1万+

vc控制计算机关机,VC++实现自动关机

一、关机核心类close.cpp// Close.cpp : 实现文件//#include "stdafx.h"#include "CloseComputer.h"#include "Close.h"// CClose 消息处理程序DWORD WINAPI GetVerInfo(){OSVERSIONINFO osver={sizeof(OSVERSIONINFO)};GetVersionEx(&...

weixin_29813635的博客 573

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

笔记1:VC获取系统时间的方法

笔记1:VC 获取系统时间的方法推荐的获取方法获取时间方法种类各种获取时间方法详解方法1:time_t变量 和 time(time_t*)方法方法2:system(" time" ); 改变电脑的时间设定方法3:SYSTEMTIME变量,GetLocalTime(SYSTEMTIME*)获取当地时间方法、GetSystemTime(SYSTEMTIME*)获得世界协调时间(UTC)时间方法 ;方法4:GetTickCount()方法返回值DWORD类型方法5:clock_t clock() 方法获得CPU

wu_zhiyuan的博客 2586

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

VC 关机1

在写这个程序之前,我曾看到过别人用SDK写的关机程序。不过他的程序只在WIN9X下有效,在2000中就不行了,不能关机只能注销。因为2000属于多用户操作系统,要想关机就要获得权限。在查阅了MSDN后整理出了这个关机程序。 TOKEN_PRIVILEGES tkp; HANDLE hToken; if (!OpenProcessToken(Ge

申公的专栏 711

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

vc 实现关机和重启功能

#include void main(int argc, char *argv[]) {  // Get the Windows version.  DWORD dwVersion(GetVersion());  BOOL bIsNT(FALSE);  if(dwVersion   bIsNT = TRUE;   if(bIsNT)      // Win2000

rach09的专栏 1642

vc 实现关机 重启 注销

vc 实现关机 重启 注销 void shutdown() { HANDLE   hToken;    TOKEN_PRIVILEGES   tkp;    //定义变量    OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken);    //OpenProce

STRIKE学习C++ 948
上一篇: 关于D3D_FVF
下一篇: 用VC实现系统关机(2)
evilotus
博客等级 码龄18年 1粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值