Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln innehåller en lösning på ett fel som uppstår när du använder NET.EXE /ADD
kommandot med användar- eller gruppnamn som är längre än 20 tecken.
Ursprungligt KB-nummer: 324639
Symptom
När du använder NET.EXE
kommandot tillsammans med växeln /ADD
och långa användar- eller gruppnamn visas endast NET-syntaxen. Du får inget felmeddelande.
Exempel:
C:\>NET.EXE localgroup MyRemoteUsers "REMOTE INTERACTIVE LOGON" /ADD
The syntax of this command is:
NET LOCALGROUP [groupname [/COMMENT:"text"]] [/DOMAIN]
groupname {/ADD [/COMMENT:"text"] | /DELETE} [/DOMAIN]
groupname name [...] {/ADD | /DELETE} [/DOMAIN]
Samma åtgärd fungerar med GUI-datorhantering, lokala användare och grupper Microsoft Management Console (MMC).
Orsak
Kommandot NET.EXE stöder inte namn som är längre än 20 tecken på grund av bakåtkompatibilitet med LAN Manager 2.0.
Åtgärd
Om den grafiska användargränssnittsmetoden (GUI) inte kan användas och en skriptmetod krävs använder du verktyget Windows 2000 Resource Kit Cusrmgr.exe. Du kan också använda VBScript med hjälp av ett API (Application Programming Interface) som stöder namn som är längre än 20 tecken.
Status
Microsoft har bekräftat att det är ett problem i de Microsoft-produkter som listas i avsnittet "Gäller för".
Mer information
I exemplet i avsnittet "Symptom" i den här artikeln använder du följande Cusrmgr.exe syntax:
C:\>CUSRMGR.EXE -u "REMOTE INTERACTIVE LOGON" -alg "MyRemoteUsers"
Det här problemet kan också uppstå med lokaliserade versioner där inbyggda grupper överskrider gränsen på 20 tecken. Till exempel med det tyska namnet för "Autentiserade användare" (19 tecken): "Authentifizierte Benutzer" (25 tecken).
Följande exempel på VBScript kan anpassas och användas som ytterligare en lösning. Den lägger till "Autentiserade användare" till "Power Users" för den engelska och tyska versionen:
##### VBScript ADDGRP.VBS #####
On Error Resume Next
Dim oContainer
Dim oGroup
Dim oIADs
Dim oComputerInformation
Dim bolGroupSet
bolGroupSet = False
Set oComputerInformation = CreateObject("WScript.Network")
Set oContainer = GetObject("WinNT://" +
oComputerInformation.ComputerName)'get the IADsContainer object for the local computer
oContainer.Filter = Array("Group")'We only need to enumerate groups,
therefore the filter
For Each oIADs In oContainer 'for each IADs object we find there
If oIADs.Name = "Hauptbenutzer" Or oIADs.Name = "Power Users" Then
'check if it has the name "Power Users" or "Hauptbenutzer"
Set oGroup = oIADs 'If so put it into the IADsGroup object
oGroup.Add ("WinNT://S-1-5-11")'add the group "Authenticated Users"
oGroup.SetInfo 'and save the info
If Err <> 0 Then 'if error number is not 0 (Error occurred)
MsgBox Err.Number, vbCritical, "AddGroup" 'print out the error message
Else 'if everything seems to be ok
bolGroupSet = True 'set the boolean value to True so we know the group was added
End If
End If
Next
If bolGroupSet = True Then 'if bolGroupSet is False there was nothing done
MsgBox "Group added successfully", vbInformation, "AddGroup"
Else
MsgBox "No action has taken place!", vbExclamation, "AddGroup"
End If
##### script end #####
Lösning
Om du vill undvika det här problemet i Windows Server 2008 och senare använder du PowerShell-kommandot Add-ADGroupMember enligt beskrivningen i följande TechNet-artikel:
Add-ADGroupMember
Om du använder PowerShell 5.1 använder du kommandot Add-LocalGroupMember -Group PowerShell enligt beskrivningen i följande artikel:
Add-LocalGroupMember