NET.EXE /ADD-opdracht biedt geen ondersteuning voor namen die langer zijn dan 20 tekens

Dit artikel biedt een oplossing voor een fout die optreedt wanneer u de NET.EXE /ADD opdracht gebruikt met gebruikers- of groepsnamen die langer zijn dan 20 tekens.

Van toepassing op: Windows 10 - alle edities, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Origineel KB-nummer: 324639

Symptomen

Wanneer u de NET.EXE opdracht samen met de /ADD switch en lange gebruikers- of groepsnamen gebruikt, wordt alleen de NET-syntaxis opnieuw weergegeven. U ontvangt geen foutbericht.

Voorbeeld:

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]

Dezelfde actie werkt met gui computerbeheer, lokale gebruikers en groepen Microsoft Management Console (MMC).

Oorzaak

De opdracht NET.EXE ondersteunt geen namen die langer zijn dan 20 tekens vanwege achterwaartse compatibiliteit met LAN Manager 2.0.

Oplossing

Als de grafische gebruikersinterface (GUI)-methode niet kan worden gebruikt en een scriptmethode is vereist, gebruikt u het hulpprogramma Windows 2000 Resource Kit Cusrmgr.exe. Of gebruik VBScript, met behulp van een API (Application Programming Interface) die namen langer dan 20 tekens ondersteunt.

Status

Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.

Meer informatie

Gebruik in het voorbeeld in de sectie Symptomen van dit artikel de volgende Cusrmgr.exe syntaxis:

C:\>CUSRMGR.EXE -u "REMOTE INTERACTIVE LOGON" -alg "MyRemoteUsers"

Dit probleem kan ook optreden bij gelokaliseerde versies waarin ingebouwde groepen de limiet van 20 tekens overschrijden. Bijvoorbeeld met de Duitse naam voor 'Geverifieerde gebruikers' (19 tekens): 'Authentifizierte Benutzer' (25 tekens).

Het volgende VBScript-voorbeeld kan worden aangepast en gebruikt als een extra tijdelijke oplossing. 'Geverifieerde gebruikers' worden toegevoegd aan 'Power Users' voor de Engelse en Duitse versie:

##### 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 #####

Tijdelijke oplossing

Als u dit probleem in Windows Server 2008 en hoger wilt omzeilen, gebruikt u de PowerShell-opdracht Add-ADGroupMember , zoals beschreven in het volgende TechNet-artikel:
Add-ADGroupMember

Als u PowerShell 5.1 gebruikt, gebruikt u de PowerShell-opdracht Add-LocalGroupMember -Group , zoals beschreven in het volgende artikel:
LocalGroupMember toevoegen