R raki Medlem sedan jan. 2003 137 inlägg Trådstart 12 apr. 2004 15:33 #1 Tjena!
Håller på att försöka lägga till användare i NT med PHP.
Jag hittade ett en jätte bra funktion som aleborg har skrivit fast jag kan inte ASP något och vill ha det översatt till PHP.
Denna:
http://www.webforum.nu/showthread.php?forumid=89&threadid=49948&highlight=Terminal+Services
Försökte mig på en översättning och det borde då bli något sånt här, fast fungerar gör det ju inte.
function AddUserAccount($ServerName, $UserName, $Password, $SelGroup) {
$UF_SCRIPT = '&H1';
$UF_ACCOUNTDISABLE = '&H2';
$UF_HOMEDIR_REQUIRED = '&H8';
$UF_LOCKOUT = '&H10';
$UF_PASSWD_NOTREQD = '&H20';
$UF_PASSWD_CANT_CHANGE = '&H40';
$UF_TEMP_DUPLICATE_ACCOUNT = '&H100';
$UF_NORMAL_ACCOUNT = '&H200';
$UF_INTERDOMAIN_TRUST_ACCOUNT = '&H800';
$UF_WORKSTATION_TRUST_ACCOUNT = '&H1000';
$UF_SERVER_TRUST_ACCOUNT = '&H2000';
$UF_DONT_EXPIRE_PASSWD = '&H10000';
$UF_MNS_LOGON_ACCOUNT = '&H20000';
$ComputerObj = new COM("WinNT://" . $ServerName);
$NewUser = $ComputerObj->Create("User", $UserName);
$NewUser->SetInfo;
$NewUser->SetPassword($Password);
$NewUser->FullName = $UserName;
$NewUser->Description = $UserName;
$NewUser->SetInfo;
// Problem börjar
$flags = com_get($NewUser, "UserFlags");
$NewUser->UserFlags = $flags | $UF_PASSWD_CANT_CHANGE | $UF_DONT_EXPIRE_PASSWD;
$NewUser->SetInfo;
$GroupObj = new COM("WinNT://" . $ServerName . "/" . $SelGroup);
$GroupObj->Add("WinNT://" . $ServerName . "/" . $UserName);
}
AddUserAccount("AMD1700", "olle", "losenord", "Users");
Nån som kan hjälpa mig?
Detta kanske inte ens går att göra med PHP ?
R raki Medlem sedan jan. 2003 137 inlägg Har löst det så långt att den sparar användaren och lägger den i rätt grupp men jag har problem med att ändra UserFlags för användaren. (förstår inte asp-koden)
Ni som kan asp kan väl förklara för mig som inte kan asp (kodar php) vad denna koden nedan betyder eller om ni kan översätta den till php.
(Hämta userflags tror jag att jag vet hur jag gör, problemet är att få in dem på rätt sätt)
Const UF_SCRIPT = &H1
Const UF_ACCOUNTDISABLE = &H2
Const UF_HOMEDIR_REQUIRED = &H8
Const UF_LOCKOUT = &H10
Const UF_PASSWD_NOTREQD = &H20
Const UF_PASSWD_CANT_CHANGE = &H40
Const UF_TEMP_DUPLICATE_ACCOUNT = &H100
Const UF_NORMAL_ACCOUNT = &H200
Const UF_INTERDOMAIN_TRUST_ACCOUNT = &H800
Const UF_WORKSTATION_TRUST_ACCOUNT = &H1000
Const UF_SERVER_TRUST_ACCOUNT = &H2000
Const UF_DONT_EXPIRE_PASSWD = &H10000
Const UF_MNS_LOGON_ACCOUNT = &H20000
flags = NewUser.Get("UserFlags")
NewUser.Put "UserFlags", flags Or UF_PASSWD_CANT_CHANGE Or UF_DONT_EXPIRE_PASSWD
NewUser.SetInfo
O OveRRidE Medlem sedan feb. 2001 12 078 inlägg Tråden flyttas från ASP, VBScript.
M mify Medlem sedan feb. 2003 44 inlägg vet inte om detta kan vara till nån hjälp kanske
http://www.developer.com/lang/php/article.php/10941_3100951_2
Lycka till
// Micke