吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7089|回复: 30
收起左侧

[C&C++ 原创] 【VC】C语言版自动关机

  [复制链接]
苏紫方璇 发表于 2019-1-14 14:12
听说最近流行写自动关机,我也写一个水一贴
[C++] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <windows.h>
#include <stdio.h>
 
#define SeShutdownPrivilege 0x13
 
typedef int(__stdcall *PRtlAdjustPrivilege)(ULONG, BOOLEAN, BOOLEAN, PBOOLEAN);
BOOL fun;
 
DWORD WINAPI NewThread(LPVOID Lp)
{
    DWORD Sec = (DWORD)Lp;
    while (TRUE)
    {
        system("cls");
        printf("距离自动关机还有%d秒\n", Sec--);
        printf("按回车键取消自动关机\n");
        Sleep(1000);
        if (0==Sec)
        {
            if (fun)
                ExitWindowsEx(EWX_POWEROFF, 0);
            else
                ExitWindowsEx(EWX_SHUTDOWN, 0);
            break;
        }
    }
    return 0;
}
 
 
int main()
{
    DWORD Sec;
    BOOLEAN enAbled = 0;
    printf("请设置自动关机延时(秒):");
    scanf("%d", &Sec);
    getchar();
    printf("请选择关机方式:1为快速关机,其他数字为安全关机:");
    scanf("%d", &fun);
    getchar();
    if (1 == fun)
        fun = TRUE;
    else
        fun = FALSE;
    PRtlAdjustPrivilege RtlAdjustPrivilege =
        (PRtlAdjustPrivilege)GetProcAddress(GetModuleHandle("ntdll"), "RtlAdjustPrivilege");
    if (RtlAdjustPrivilege)
    {
        RtlAdjustPrivilege(SeShutdownPrivilege, TRUE, FALSE, &enAbled);
        CreateThread(NULL, 0, NewThread, (LPVOID)Sec, 0, NULL);
    }
    getchar();
    return 0;
}

免费评分

参与人数 10吾爱币 +13 热心值 +9 收起 理由
vsyour + 2 + 1 我很赞同!
雪人侠客 + 1 + 1 下载联合开发网资料,已经发悬赏!谢谢
xingyunlong + 1 + 1 用心讨论,共获提升!
Jorah999 + 1 + 1 还可以,水一发
roytech + 1 用心讨论,共获提升!
C语言也能干大事 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lyrong + 1 + 1 谢谢@Thanks!调用了自定义函数!
kftianji + 1 + 1 谢谢@Thanks!
610100 + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
一块二 + 1 + 1 热心回复!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 苏紫方璇 发表于 2019-3-18 09:38
liuganglove2015 发表于 2019-3-17 13:13
一个DOS命令的事情。shutdown -s -t 3600  就是三千六百秒后关机。shutdown -r -t 360 就是三百六十秒后重 ...

确实不需要这么麻烦,所以我帖子第一句就说了我是来水贴的,发帖的那几天,论坛到处都是发自动关机的,我也就是蹭个热度
飘零灬幻 发表于 2019-1-16 22:42
DL1755305997 发表于 2019-1-14 15:23
唉  c真是博大精深啊   我是学单片机的C语言的   我居然看懂了

方便说下这是什么软件吗,刚开始学
wslans 发表于 2019-1-14 14:20
约定的童话 发表于 2019-1-14 14:45
貌似很强大啊,哈哈
保洁阿姨 发表于 2019-1-14 14:49
关机。。。又是关机,,厉害了呢
Xer0 发表于 2019-1-14 15:16
用了2个知识点吧   关机函数ExitWindowsEx  提权函数RtlAdjustPrivilege

不过自动关机这种程序感觉有点重复造轮子
直接shutdown就完事了
DL1755305997 发表于 2019-1-14 15:23
唉  c真是博大精深啊   我是学单片机的C语言的   我居然看懂了
一只梦蝶 发表于 2019-1-14 15:52
很羡慕你的技术,不过把关机这么简单一件事弄得这么麻烦
泰小海 发表于 2019-1-14 16:16
完了完了,论坛变了,不在是那个吾爱了,都是自动关机了
qaz003 发表于 2019-1-14 16:17
哈哈,不错。。
继续挖下去,搞个自定义参数的,可以设置几点几分的
smcree 发表于 2019-1-14 21:23
直接一个批处理更简单
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-4-6 09:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表