如何在C#中以编程方式获取appPool的标识?我想要应用程序池用户而不是当前登录的用户.
我正在编写一个C#程序,用于推出我工作的实验室.该程序是创建一个本地管理员帐户(itadmin),设置密码,设置密码永不过期,并将该帐户添加到本地Administrators组.该程序创建新用户帐户并正确设置所有内容,但当它尝试将其添加到管理组时,我得到一个非常不明显的例外.首先,我是否正确添加组?我错过了什么?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.DirectoryServices;
namespace CreateITAdmin
{
class Program
{
static void Main(string[] args)
{
try
{
string userName = "itadmin";
string userPassword = "password";
Console.WriteLine("Building System Information");
DirectoryEntry localMachine = new DirectoryEntry("WinNT://.,computer");
DirectoryEntry newUser = localMachine.Children.Add(userName, "user");
DirectoryEntry admGroup = new DirectoryEntry("WinNT://./Administrators,group");
Console.WriteLine("Building User Information");
newUser.Properties["FullName"].Value = "IT Administrative User";
newUser.Invoke("Put", new object[] { "UserFlags", 0x10000 });
Console.WriteLine("Setting User Password");
newUser.Invoke("SetPassword", new object[] { userPassword });
newUser.CommitChanges();
Console.WriteLine("Adding itadmin to Administrators Group"); …Run Code Online (Sandbox Code Playgroud)