`

待定文章

阅读更多
/*
* File:   one.cpp
* Author: Administrator
*
* Created on 2009年3月5日, 下午6:08
*/

#include <windows.h>
#include <iostream.h>

BOOL MySystemShutdown( LPTSTR lpMsg )
{
HANDLE hToken; // handle to process token
HANDLE hLogonToken;
HANDLE hAdminToken;
TOKEN_PRIVILEGES tkp; // pointer to token structure

BOOL fResult; // system shutdown flag

// Get the current process token handle so we can get shutdown
OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hLogonToken);   //  AfxMessageBox("OpenProcessToken failed.");

// Get the LUID for shutdown privilege.

LookupPrivilegeValue(NULL, SE_TCB_NAME, &tkp.Privileges[0].Luid);

tkp.PrivilegeCount = 1; // one privilege to set

tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

// Get shutdown privilege for this process.

AdjustTokenPrivileges(hLogonToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0);
// privilege.
BOOL b1=LogonUser( "zhou", "192.168.2.18", "670025",
   LOGON32_LOGON_INTERACTIVE,
   LOGON32_PROVIDER_DEFAULT,
   &hLogonToken );
  int t=GetLastError();
cout<< t;
if(b1) cout<<"正确"; else cout<<"错误";
// return FALSE;
DuplicateTokenEx( hLogonToken, TOKEN_ALL_ACCESS, NULL,
   SecurityIdentification, TokenPrimary, &hAdminToken );
   
ImpersonateLoggedOnUser( hAdminToken );

if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
   //  AfxMessageBox("OpenProcessToken failed.");

// Get the LUID for shutdown privilege.

LookupPrivilegeValue(NULL, SE_REMOTE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid);

tkp.PrivilegeCount = 1; // one privilege to set

tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

// Get shutdown privilege for this process.

AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0);

// Cannot test the return value of AdjustTokenPrivileges.


// Display the shutdown dialog box and start the time-out countdown.

fResult = InitiateSystemShutdown("192.168.2.18", // shut down local computer
    "Click on the main window and press the Escape key to cancel shutdown.", // message to user
  1, // time-out period
  FALSE, // ask user to close apps   //注意这一段API调用!
  FALSE); // reboot after shutdown

if (!fResult)
{
//    AfxMessageBox("InitiateSystemShutdown failed.");
}
// Disable shutdown privilege.

tkp.Privileges[0].Attributes = 0;

AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0);


    return TRUE;


}
BOOL getBooleans (){
     HANDLE hToken;      // handle to process token
     TOKEN_PRIVILEGES tkp;
     BOOL fResult;       // error code return

     OpenProcessToken(GetCurrentProcess(),
            TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,
         &hToken);

     fResult = GetLastError();
     cout<<"开::"<<fResult<<"::";
     LookupPrivilegeValue(NULL,SE_TCB_NAME,  &tkp.Privileges[0].Luid);

     fResult = GetLastError();

     tkp.PrivilegeCount = 1;
     tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

     AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,  (PTOKEN_PRIVILEGES) NULL, 0);


     fResult = GetLastError();

     fResult = LogonUser(
          "Administrator",
          "\\192.168.2.25",
          "*",
          /*"192.168.2.15",
          "990714",*/
          LOGON32_LOGON_INTERACTIVE,
          LOGON32_PROVIDER_DEFAULT,
          &hToken);
      fResult = GetLastError();
     cout<<fResult;
     return TRUE;

}
/*
*
*/
int main(int argc, char** argv) {
BOOL b=getBooleans();//MySystemShutdown("ddd");
if(b) cout<<"right";
else cout<<"error";
    return (EXIT_SUCCESS);
}

分享到:
评论

相关推荐

    适应中小新闻文章型网站及个人网站需求的文章网站

    (留言和发表文章均可累积积分,积分用途待定) 2.更新后台文章管理操作,简化管理步骤 3.判断用户是否登陆,在留言和评论中显示用户名或匿名用户; 4.重写后台session和Cookies,独立用户session和Cookies 5....

    常系数线性非齐次方程组特解的求法—待定系数法

    在文章的例题中,通过实例演示了待定系数法的运用过程,提供了求解方程组特解的直观示例。 文章中提到的关键词“常系数线性非齐次方程组”指的是系数矩阵不随自变量变化的线性方程组,且方程组中至少有一个非齐次项...

    待定.zip

    标题、描述和标签为空,且压缩包子文件的文件名称列表也为“待定”。这些信息是生成具体IT知识内容的关键,例如,如果文件名包含"Python教程",我可以讨论Python编程语言的基础知识、语法特性、常用库和框架等。若能...

    弹性力学广义变分原理的通式 及待定系数法

    本篇文章探讨了弹性力学领域内的一个关键数学工具——广义变分原理的通式及其应用方法,即“待定系数法”。通过这种方法,作者成功地推导出了适用于弹性力学三类变量的一般形式的能量泛函表达式。这项成果对于理解和...

    upm_pending_notify:文本模式的待处理文章通知

    当有人创建状态为“待定”的文章时,所有“发布者”用户都会收到一封电子邮件。 这封电子邮件包含文章的非常基本的信息,以及进一步查看和管理文章的链接。 如果作者碰巧是出版商,他不会收到电子邮件。 当文章从...

    利用数据处理总结经验公式.pdf

    文章接着具体讲述了弹簧振子实验,通过改变砝码质量和弹簧类型,观察到振动周期的变化规律,并提出了弹簧振子振动周期与振子质量及弹簧倔强系数之间的函数关系模型,即 T=AM^(1/n),其中 A、n 为待定系数。...

    nodejs-blogger

    博主 这是一个基本的 Blogger 克隆,用于创建带有评论的博客。 花费时间:16小时 特征必需的[完成] 用户可以通过... 用户可以包含要在其博客文章中显示的图像[待定] 用户可以指定未来的发布日期和时间以使博客文章可

    萧涵WordPress主题“Xiaohan V3.0”

    增加微博功能,发文章的时候选择“Aside短文章”形式,即为微博格式,在主题设置中可以指定做为微博的栏目。...下一个版本的首个功能将会增加多颜色风格选择,其他待定。。 本版网站:http://www.wuhzy.ocm

    一种新型谐波检测算法的MATLAB仿真.pdf

    通过调整待定参数A,可以使得补偿电流与负载电流的均方根最小化,从而达到准确检测畸变电流的目的。 文章最后通过MATLAB仿真,验证了该算法的检测精度。仿真结果显示,该方法具有较高的谐波检测精度。文章中的...

    基于可视化编程的轴类零件形位误差的数据处理.pdf

    在数据处理的数学模型方面,文章基于最小二乘法原理,提出了一个包含待定系数的方程,并将其转化为矩阵形式进行运算。这种方式可以有效处理多元变量的最小二乘问题,得到一个能够最佳逼近观察数据的函数模型。 6. ...

    江苏省徐州市铜山县九年级数学下册第5章二次函数5.3用待定系数法确定二次函数的表达式导学案无答案新版苏科版

    文章中的例子分别展示了如何运用这三种形式来解决问题: - 示例1采用一般式,通过三个点的坐标建立三元一次方程组求解。 - 示例2则使用了顶点式,由于已知顶点坐标和函数值的最值,可以简化求解过程。 - 示例3使用了...

    prime_personal_project:名称待定

    我确实找到了一篇文章,说我应该将Socket.io放到一个完全有意义的角度服务中。 我已经为此工作了一段时间,所以我已经注册接受帮助。 +我解决了这个问题。 我的任务管理器无法正常构建,我花了大约一个半小时试图...

    最小二乘复频域法在颤振试飞数据处理中的应用.pdf

    文章提出了一种新的方法——最小二乘复频域法(LSCF),该方法基于右矩阵分式模型,利用z域基函数,通过最小化误差代价函数来求解待定参数。LSCF方法的一个显著优点是能够避免数值求解过程中的病态问题,提高计算...

    信号与噪声权选择对GPS高程拟合精度的影响.pdf

    文章还提出了先验方差-协方差的估计方法,即预先选择一个符合协方差函数条件且形式简单的函数作为协方差函数,通过观测值进行拟合以求得待定参数,然后根据拟合得到的协方差函数确定信号的方差-协方差阵。...

    leanoteJava

    linux,apk,ios技术选型Java8的sparkJava,sql2o 就这样进度需求分析和任务同步基础框架建造21/3/4用户及登录21/3/8文章分类/标签待定笔记保存待定笔记同步待定搜索待定腾讯云函数+云api支持待定特征等你来提问题

    病态数据处理的岭估计迭代解法.pdf

    文章还对岭估计迭代法的数学模型进行了详细解释,即经典的平差模型为L+Δ=AX,其中A为系数矩阵,Δ为观测向量的噪声,L为观测值,X为待定参数。最小二乘估计(LS)是最常用的估值方法,但在系数矩阵存在严重复共线性...

    同时含有未知输入和测量干扰系统全维和降维观测器设计.docx

    【文章内容概述】 本文主要探讨了在控制系统中存在未知输入和测量干扰情况下的全维和降维观测器设计。未知输入观测器(UIO)是一种用于估计系统状态和未知输入的工具,在各种工程应用中具有重要价值,如机械工具、...

    改进粒子群算法与fmincon函数混合寻优的平面度、垂直度误差评定.pdf

    该过程涉及到求解一组待定系数(a, b, c),使得所有点到基准平面的距离差最小。这转化为一个优化问题,可以使用【fmincon函数】来解决,寻找使目标函数最小的系数值。 为了进一步提升优化效果,文章引入了【自适应...

    cumcm0815[1].pdf数学建模

    在已知像点坐标和标靶圆心坐标的情况下,可以利用标靶上各点的几何关系来求解待定系数,从而得到标靶圆心的坐标。 3. 在已知标靶圆心在两个相机坐标系中的坐标的基础上,求出两相机坐标系之间的坐标变换矩阵。通过...

Global site tag (gtag.js) - Google Analytics