#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
system("shutdown -s -t 1000");
return 0;
}
直接点“调试”->"开始执行(不调试)"后可以运行,是这样的:
但是如果点目录下生成的可执行文件,却无法运行,出现这个:
这里并不会提示windows将关机,而且这个cmd关闭的时候会出现这个:
关闭之后看到任务管理器中出现了好多cmd.exe*32,这样的:
我用的是VS2008,请问是哪里的问题?
8 个解决方案
#1
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
乱码的问题是字符集问
#2
C:\>
shutdown /?
用法: shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/f]
[/m \\computer][/t xxx][/d [p:]xx:yy [/c "comment"]]
没有参数 显示帮助。这与键入 /? 是一样的
/? 显示帮助。这与不键入任何选项是一样的
/i 显示图形用户界面(GUI)。
这必须是第一个选项
/l 注销。这不能与 /m 或 /d 选项一起使用
/s 关闭计算机
/r 关闭并重启动计算机
/a 放弃系统关闭。
这只能在超时过程中使用
/p 关闭本地计算机,没有超时或警告。
这只能与 /d 选项一起使用
/h 休眠本地计算机。
这只能与 /f 选项一起使用
/e 将计算机的意外关闭原因记入文档
/m \\computer 指定目标计算机
/t xxx 设置关闭前的超时为 xxx 秒。
有效范围是 0-600,默认为 30
/c "comment" 重启动或关闭的原因的注释。
最大允许 127 个字符
/f 强制正在运行的应用程序关闭而不事先警告用户
/d [p:]xx:yy 提供重启动或关闭的原因
p 表明重启动或关闭是计划内的
xx 是主要原因号(小于 256 的正整数)
yy 是次要原因号(小于 65536 的正整数)
此计算机上的原因:
(E = 预期 U = 意外 P = 计划, C = 自定义)
类别 主要 次要 标题
U 0 0 其他(没有计划的)
E 0 0 其他(没有计划的)
E P 0 0 其他(计划的)
U 0 5 其他故障: 系统没有反应
E 1 1 硬件: 维护(没有计划的)
E P 1 1 硬件: 维护(计划的)
E 1 2 硬件: 安装(没有计划的)
E P 1 2 硬件: 安装(计划的)
P 2 3 操作系统: 升级(计划的)
E 2 4 操作系统: 重新配置(没有计划的)
E P 2 4 操作系统: 重新配置(计划的)
P 2 16 操作系统: 服务包(计划中)
2 17 操作系统: 热修补(没有计划)
P 2 17 操作系统: 热修补(计划中)
2 18 操作系统: 安全修补(没有计划)
P 2 18 操作系统: 安全修补(计划中)
E 4 1 应用程序: 维护(没有计划的)
E P 4 1 应用程序: 维护(计划的)
E P 4 2 应用程序: 安装(计划中)
E 4 5 应用程序: 没有反应
E 4 6 应用程序: 不稳定
U 5 15 系统故障: 停止错误
E 5 19 安全问题
U 5 19 安全问题
E P 5 19 安全问题
E 5 20 网络连接性丢失(没有计划的)
U 6 11 电源故障: 电线被拔掉
U 6 12 电源故障: 环境
P 7 0 旧版 API 关机
C:\>
用法: shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/f]
[/m \\computer][/t xxx][/d [p:]xx:yy [/c "comment"]]
没有参数 显示帮助。这与键入 /? 是一样的
/? 显示帮助。这与不键入任何选项是一样的
/i 显示图形用户界面(GUI)。
这必须是第一个选项
/l 注销。这不能与 /m 或 /d 选项一起使用
/s 关闭计算机
/r 关闭并重启动计算机
/a 放弃系统关闭。
这只能在超时过程中使用
/p 关闭本地计算机,没有超时或警告。
这只能与 /d 选项一起使用
/h 休眠本地计算机。
这只能与 /f 选项一起使用
/e 将计算机的意外关闭原因记入文档
/m \\computer 指定目标计算机
/t xxx 设置关闭前的超时为 xxx 秒。
有效范围是 0-600,默认为 30
/c "comment" 重启动或关闭的原因的注释。
最大允许 127 个字符
/f 强制正在运行的应用程序关闭而不事先警告用户
/d [p:]xx:yy 提供重启动或关闭的原因
p 表明重启动或关闭是计划内的
xx 是主要原因号(小于 256 的正整数)
yy 是次要原因号(小于 65536 的正整数)
此计算机上的原因:
(E = 预期 U = 意外 P = 计划, C = 自定义)
类别 主要 次要 标题
U 0 0 其他(没有计划的)
E 0 0 其他(没有计划的)
E P 0 0 其他(计划的)
U 0 5 其他故障: 系统没有反应
E 1 1 硬件: 维护(没有计划的)
E P 1 1 硬件: 维护(计划的)
E 1 2 硬件: 安装(没有计划的)
E P 1 2 硬件: 安装(计划的)
P 2 3 操作系统: 升级(计划的)
E 2 4 操作系统: 重新配置(没有计划的)
E P 2 4 操作系统: 重新配置(计划的)
P 2 16 操作系统: 服务包(计划中)
2 17 操作系统: 热修补(没有计划)
P 2 17 操作系统: 热修补(计划中)
2 18 操作系统: 安全修补(没有计划)
P 2 18 操作系统: 安全修补(计划中)
E 4 1 应用程序: 维护(没有计划的)
E P 4 1 应用程序: 维护(计划的)
E P 4 2 应用程序: 安装(计划中)
E 4 5 应用程序: 没有反应
E 4 6 应用程序: 不稳定
U 5 15 系统故障: 停止错误
E 5 19 安全问题
U 5 19 安全问题
E P 5 19 安全问题
E 5 20 网络连接性丢失(没有计划的)
U 6 11 电源故障: 电线被拔掉
U 6 12 电源故障: 环境
P 7 0 旧版 API 关机
C:\>
#3
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
#4
权限不一样吧。你的VS是不是以管理员权限运行的?
#5
我用vs2010,吧你的代码copy进去.
不管运行哪里的exe都可以正常运行
显示"已经计划系统关机."
system把命令传给cmd执行.所以你每次运行程序都都产程一个cmd.exe是正常的
1000是秒,你试一试时间短一点的
不管运行哪里的exe都可以正常运行
显示"已经计划系统关机."
system把命令传给cmd执行.所以你每次运行程序都都产程一个cmd.exe是正常的
1000是秒,你试一试时间短一点的
#6
我的vs08是可以关机的,没有出现你的问题
#7
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
权限不一样吧。你的VS是不是以管理员权限运行的?
以管理员权限运行shutdown程序也不行
#8
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
权限不一样吧。你的VS是不是以管理员权限运行的?
以管理员权限运行shutdown程序也不行
那就用attach到调试器看看咯
#1
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
乱码的问题是字符集问
#2
C:\>
shutdown /?
用法: shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/f]
[/m \\computer][/t xxx][/d [p:]xx:yy [/c "comment"]]
没有参数 显示帮助。这与键入 /? 是一样的
/? 显示帮助。这与不键入任何选项是一样的
/i 显示图形用户界面(GUI)。
这必须是第一个选项
/l 注销。这不能与 /m 或 /d 选项一起使用
/s 关闭计算机
/r 关闭并重启动计算机
/a 放弃系统关闭。
这只能在超时过程中使用
/p 关闭本地计算机,没有超时或警告。
这只能与 /d 选项一起使用
/h 休眠本地计算机。
这只能与 /f 选项一起使用
/e 将计算机的意外关闭原因记入文档
/m \\computer 指定目标计算机
/t xxx 设置关闭前的超时为 xxx 秒。
有效范围是 0-600,默认为 30
/c "comment" 重启动或关闭的原因的注释。
最大允许 127 个字符
/f 强制正在运行的应用程序关闭而不事先警告用户
/d [p:]xx:yy 提供重启动或关闭的原因
p 表明重启动或关闭是计划内的
xx 是主要原因号(小于 256 的正整数)
yy 是次要原因号(小于 65536 的正整数)
此计算机上的原因:
(E = 预期 U = 意外 P = 计划, C = 自定义)
类别 主要 次要 标题
U 0 0 其他(没有计划的)
E 0 0 其他(没有计划的)
E P 0 0 其他(计划的)
U 0 5 其他故障: 系统没有反应
E 1 1 硬件: 维护(没有计划的)
E P 1 1 硬件: 维护(计划的)
E 1 2 硬件: 安装(没有计划的)
E P 1 2 硬件: 安装(计划的)
P 2 3 操作系统: 升级(计划的)
E 2 4 操作系统: 重新配置(没有计划的)
E P 2 4 操作系统: 重新配置(计划的)
P 2 16 操作系统: 服务包(计划中)
2 17 操作系统: 热修补(没有计划)
P 2 17 操作系统: 热修补(计划中)
2 18 操作系统: 安全修补(没有计划)
P 2 18 操作系统: 安全修补(计划中)
E 4 1 应用程序: 维护(没有计划的)
E P 4 1 应用程序: 维护(计划的)
E P 4 2 应用程序: 安装(计划中)
E 4 5 应用程序: 没有反应
E 4 6 应用程序: 不稳定
U 5 15 系统故障: 停止错误
E 5 19 安全问题
U 5 19 安全问题
E P 5 19 安全问题
E 5 20 网络连接性丢失(没有计划的)
U 6 11 电源故障: 电线被拔掉
U 6 12 电源故障: 环境
P 7 0 旧版 API 关机
C:\>
用法: shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/f]
[/m \\computer][/t xxx][/d [p:]xx:yy [/c "comment"]]
没有参数 显示帮助。这与键入 /? 是一样的
/? 显示帮助。这与不键入任何选项是一样的
/i 显示图形用户界面(GUI)。
这必须是第一个选项
/l 注销。这不能与 /m 或 /d 选项一起使用
/s 关闭计算机
/r 关闭并重启动计算机
/a 放弃系统关闭。
这只能在超时过程中使用
/p 关闭本地计算机,没有超时或警告。
这只能与 /d 选项一起使用
/h 休眠本地计算机。
这只能与 /f 选项一起使用
/e 将计算机的意外关闭原因记入文档
/m \\computer 指定目标计算机
/t xxx 设置关闭前的超时为 xxx 秒。
有效范围是 0-600,默认为 30
/c "comment" 重启动或关闭的原因的注释。
最大允许 127 个字符
/f 强制正在运行的应用程序关闭而不事先警告用户
/d [p:]xx:yy 提供重启动或关闭的原因
p 表明重启动或关闭是计划内的
xx 是主要原因号(小于 256 的正整数)
yy 是次要原因号(小于 65536 的正整数)
此计算机上的原因:
(E = 预期 U = 意外 P = 计划, C = 自定义)
类别 主要 次要 标题
U 0 0 其他(没有计划的)
E 0 0 其他(没有计划的)
E P 0 0 其他(计划的)
U 0 5 其他故障: 系统没有反应
E 1 1 硬件: 维护(没有计划的)
E P 1 1 硬件: 维护(计划的)
E 1 2 硬件: 安装(没有计划的)
E P 1 2 硬件: 安装(计划的)
P 2 3 操作系统: 升级(计划的)
E 2 4 操作系统: 重新配置(没有计划的)
E P 2 4 操作系统: 重新配置(计划的)
P 2 16 操作系统: 服务包(计划中)
2 17 操作系统: 热修补(没有计划)
P 2 17 操作系统: 热修补(计划中)
2 18 操作系统: 安全修补(没有计划)
P 2 18 操作系统: 安全修补(计划中)
E 4 1 应用程序: 维护(没有计划的)
E P 4 1 应用程序: 维护(计划的)
E P 4 2 应用程序: 安装(计划中)
E 4 5 应用程序: 没有反应
E 4 6 应用程序: 不稳定
U 5 15 系统故障: 停止错误
E 5 19 安全问题
U 5 19 安全问题
E P 5 19 安全问题
E 5 20 网络连接性丢失(没有计划的)
U 6 11 电源故障: 电线被拔掉
U 6 12 电源故障: 环境
P 7 0 旧版 API 关机
C:\>
#3
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
#4
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
权限不一样吧。你的VS是不是以管理员权限运行的?
#5
我用vs2010,吧你的代码copy进去.
不管运行哪里的exe都可以正常运行
显示"已经计划系统关机."
system把命令传给cmd执行.所以你每次运行程序都都产程一个cmd.exe是正常的
1000是秒,你试一试时间短一点的
不管运行哪里的exe都可以正常运行
显示"已经计划系统关机."
system把命令传给cmd执行.所以你每次运行程序都都产程一个cmd.exe是正常的
1000是秒,你试一试时间短一点的
#6
我的vs08是可以关机的,没有出现你的问题
#7
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
权限不一样吧。你的VS是不是以管理员权限运行的?
以管理员权限运行shutdown程序也不行
#8
system多半在shutdown执行结束后在返回的,试试换成简单命令试试(比如dir)
乱码的问题是字符集问
您的意思是shutdown命令还没有结束,所以程序执行不到最后?
可是直接在VS2008里运行的话就会显示关机
另外,如果按您的意思,这种关机程序应该如何写呢?
权限不一样吧。你的VS是不是以管理员权限运行的?
以管理员权限运行shutdown程序也不行
那就用attach到调试器看看咯