首页
社区
课程
招聘
[求助]调用系统其它账户运行DOS命令的问题。
发表于: 2012-6-13 21:50 4021

[求助]调用系统其它账户运行DOS命令的问题。

2012-6-13 21:50
4021
最近在学习VC,在使用CreateProcessWithLogonW的时候发现一奇怪问题,一直解决不了。恳请高手指点下,不胜感激。问题如下:

void AddTmpUser(LPWSTR sUser,LPWSTR sPassWord)
{
  USER_INFO_1 ui;
  DWORD dwError=0;
   ZeroMemory(&ui, sizeof(ui));
  ui.usri1_name= sUser;
  ui.usri1_password= sPassWord;
  ui.usri1_priv=USER_PRIV_USER;
  ui.usri1_home_dir = NULL;
  ui.usri1_comment = NULL;
  ui.usri1_flags=UF_DONT_EXPIRE_PASSWD|UF_PASSWD_CANT_CHANGE;
  ui.usri1_script_path = NULL;
  NetUserAdd(NULL, 1, (LPBYTE)&ui, &dwError);

  LOCALGROUP_MEMBERS_INFO_3 account;
  account.lgrmi3_domainandname= ui.usri1_name;
  NetLocalGroupAddMembers(NULL,L"Administrators",3,(LPBYTE)&account,1);

}
  

void RunAs(LPCWSTR user, LPCWSTR pass,  LPCWSTR softpath, LPWSTR Cmdline)
{

        PROCESS_INFORMATION pi = {0};
       
        STARTUPINFO si;
        ZeroMemory( &si, sizeof(STARTUPINFO) );
        si.cb = sizeof(STARTUPINFO);
        si.dwFlags |= STARTF_USESHOWWINDOW;
        si.wShowWindow = SW_HIDE;

        CreateProcessWithLogonW(user, NULL, pass,
                LOGON_WITH_PROFILE, softpath, Cmdline,
                CREATE_UNICODE_ENVIRONMENT, NULL, NULL,
                &si, &pi);

        CloseHandle(pi.hProcess);
        CloseHandle(pi.hThread);
        NetUserDel(NULL,user);

}

AddTmpUser(L"test",L"test123");   // 添加一个test账户,用来给下边的函数来调用。
//Runs调用系统账户tset 运行记事本成功
//RunAs(L"test",L"test123",L"notepad.exe",L"");

//通过cmd.exe来运行notepad.exe同样成功,通过任务管理器可以看到这两种程序都是调用了系统账户test来运行了的。
//RunAs(L"test",L"test123",L"",L"cmd.exe /c notepad.exe");

//而现在通过cmd.exe来调用cacls.exe来设置文件夹的权限;查看tt555文件夹权限是设置成功,可是不是调用test账户来设置的,用的是当前的系统账户设置的。
//查看文件夹权限成功与否的标志是:在当前账户通过test账户来运行下边的命令的话,在我的电脑里边查看tt555文件夹“安全”属性选项卡是灰色的。直接设置不了的。
RunAs(L"test",L"test123",L"",L"cmd.exe /c echo Y|cacls.exe e:\\tt555 /d everyone");

NetUserDel(NULL,  L"test");  //删除用户。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 212
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
真心求教,非常郁闷的问题,一直没解决到。
2012-6-14 00:23
0
游客
登录 | 注册 方可回帖
返回