- 在线时间
- 1957 小时
- 最后登录
- 2024-6-29
- 注册时间
- 2004-4-26
- 听众数
- 49
- 收听数
- 0
- 能力
- 60 分
- 体力
- 40957 点
- 威望
- 6 点
- 阅读权限
- 255
- 积分
- 23862
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 20501
- 主题
- 18182
- 精华
- 5
- 分享
- 0
- 好友
- 140
TA的每日心情 | 奋斗 2024-6-23 05:14 |
|---|
签到天数: 1043 天 [LV.10]以坛为家III
 群组: 万里江山 群组: sas讨论小组 群组: 长盛证券理财有限公司 群组: C 语言讨论组 群组: Matlab讨论组 |
< >bool closecomputer(int kind)0 e" n) e( a% V- F9 _0 Z
{( {5 [4 s# D0 v s
HANDLE hToken;6 {- T8 d- v. [' w
TOKEN_PRIVILEGES tkp; </P>9 Y; ]& H+ I# r& l3 n! n4 Z( |, o+ G
< > // Get a token for this process.
6 ?' s- [& c# U0 N2 T if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
+ l; M: V9 G7 f8 G( O/ a" |. E {
& S" N, r4 [4 ?! k6 {8 c+ `% n) s; b return false;
1 Z4 M( C& A3 J& M }</P>" v( x1 G4 T4 i+ d) q# m; u
< > // Get the LUID for the shutdown privilege. I. C% W6 p3 {5 x' `) Y
LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); </P>3 k1 {3 c' I. @1 ?1 I7 D3 I, S
< > tkp.PrivilegeCount = 1; // one privilege to set1 o' A( Z0 N2 q$ B; o% s& F
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;</P>
8 k7 a ]( P" N< > // Get the shutdown privilege for this process.$ R; F& s1 f9 V
AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0);</P>
# \4 N( ]- G; T' c" y, u< > if (GetLastError() != ERROR_SUCCESS)
& d% Y$ m; |3 F( f- Q- B* x- D; a {
! u2 e: A& z: M: [! Z return false;
1 E& ~ _! e* t* A! B# d3 A) ^ }
1 ?, B* g" W E2 l9 i switch(kind)9 M" A: D3 L/ f$ I/ M: f/ z0 L
{case 1: ExitWindowsEx(EWX_FORCE|EWX_REBOOT,0); break; //重启. O9 O' g9 S, O5 J2 i4 p
case 2: ExitWindowsEx(EWX_FORCE|EWX_SHUTDOWN|EWX_POWEROFF,0); break; //关机/ p7 ^4 y; r& @# x! x
case 3: ExitWindowsEx(EWX_FORCE|EWX_LOGOFF,0); break; //注销' p _) B: `! v" i- {9 ~
case 4: SetSystemPowerState(false, true); break; //休眠- J% L+ G9 `9 q5 v5 Z3 N
case 5: SetSystemPowerState(true, true); break; //待机
- b$ V1 V) `4 L# E: H% |5 m default: break;9 l# k$ m; t) ^ d% ]. p
}6 H1 ~5 M; p: K
return true;</P>
) h2 Z4 K- ~$ O6 i% J, x< >}</P> |
zan
|