wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了windows – 示例代码:服务调用CreateProcessAsUser()我希望进程在用户的会话中运行,而不是会话0大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在寻找示例代码: 对于服务调用CreateProcessAsUser()我希望进程在用户的会话中运行,而不是在会话0中运行 到目前为止,创建的进程只在会话0中像服务一样运行 这是从一些从服务启动控制台应用程序的旧代码中删除的.它在NT4下运行,但我没有用现代版本的 Windows进行测试,所以无法保证它能像在NT4上那样工作. 编辑:不,这不会按原样运作.您需要添加找到的代码here以创建桌面
我正在寻找示例代码

对于服务调用CreateProcessAsUser()我希望进程在用户的会话中运行,而不是在会话0中运行

到目前为止,创建的进程只在会话0中像服务一样运行

解决方法

这是从一些从服务启动控制台应用程序的旧代码删除的.它在NT4下运行,但我没有用现代版本的 Windows进行测试,所以无法保证它能像在NT4上那样工作.

编辑:不,这不会按原样运作.您需要添加找到的代码here以创建桌面,设置SID等.

if (!logonUser(userId,domain,password,logoN32_logoN_INTERACTIVE,logoN32_PROVIDER_DEFAULT,&hUserToken))
    {
        return GetLastError();
    }

    if (!ImpersonateLoggedOnUser(hUserToken))
    {
        DWORD rc = GetLastError();
        CloseHandle(hUserToken);
        return rc;
    }

    STARTUPINFO             si;
    PROCESS_INFORMATION pi;

    memset(&si,sizeof(si));
    memset(&pi,sizeof(pi));

    si.cb = sizeof(si);

    rc = CreateProcessAsUser(hUserToken,// user token
                           0,// app name
                           "foo.exe",// command line
                           0,// process attributes
                           0,// thread attributes
                           FALSE,// don't inherit handles
                           DETACHED_PROCESS,// flags
                           0,// environment block
                           0,// current dir
                           &si,// startup info
                           &pi);                        // process info gets put here


    if (!rc)
    {
        DWORD rc = GetLastError();
        RevertToSelf();
        CloseHandle(hUserToken);
        return rc;
    }

    RevertToSelf();
    CloseHandle(hUserToken);

    return 0;

大佬总结

以上是大佬教程为你收集整理的windows – 示例代码:服务调用CreateProcessAsUser()我希望进程在用户的会话中运行,而不是会话0全部内容,希望文章能够帮你解决windows – 示例代码:服务调用CreateProcessAsUser()我希望进程在用户的会话中运行,而不是会话0所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: