polecenie NET.EXE /ADD nie obsługuje nazw dłuższych niż 20 znaków
Ten artykuł zawiera rozwiązanie błędu występującego w przypadku użycia NET.EXE /ADD
polecenia z nazwami użytkowników lub grup dłuższymi niż 20 znaków.
Dotyczy systemów: Windows 10 — wszystkie wersje, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Oryginalny numer KB: 324639
Symptomy
Jeśli używasz NET.EXE
polecenia razem z /ADD
przełącznikiem i długimi nazwami użytkowników lub grup, spowoduje to odtworzenie tylko składni NET. Nie zostanie wyświetlony żaden komunikat o błędzie.
Przykład:
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]
Ta sama akcja działa w przypadku zarządzania komputerem interfejsu UŻYTKOWNIKA, użytkowników lokalnych i grup programu Microsoft Management Console (MMC).
Przyczyna
Polecenie NET.EXE nie obsługuje nazw dłuższych niż 20 znaków ze względu na zgodność wsteczną z programem LAN Manager 2.0.
Rozwiązanie
Jeśli nie można użyć graficznej metody interfejsu użytkownika i jest wymagana metoda skryptów, użyj narzędzia Windows 2000 Resource Kit Cusrmgr.exe. Możesz też użyć języka VBScript przy użyciu interfejsu programowania aplikacji (API), który obsługuje nazwy dłuższe niż 20 znaków.
Stan
Firma Microsoft potwierdziła, że jest to usterka występująca w produktach firmy Microsoft wymienionych w części "Ma zastosowanie do:".
Więcej informacji
W przykładzie w sekcji "Objawy" tego artykułu użyj następującej składni Cusrmgr.exe:
C:\>CUSRMGR.EXE -u "REMOTE INTERACTIVE LOGON" -alg "MyRemoteUsers"
Ten problem może również wystąpić w przypadku zlokalizowanych wersji, w których wbudowane grupy przekraczają limit nazw 20 znaków. Na przykład o niemieckiej nazwie "Uwierzytelnieni użytkownicy" (19 znaków): "Authentifizierte Benutzer" (25 znaków).
Poniższy przykładowy skrypt VBScript może zostać dostosowany i użyty jako dodatkowe obejście. Dodaje "uwierzytelnionych użytkowników" do "Power Users" dla wersji angielskiej i niemieckiej:
##### 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 #####
Obejście problemu
Aby obejść ten problem w systemie Windows Server 2008 lub nowszym, użyj polecenia Add-ADGroupMember programu PowerShell, zgodnie z opisem w następującym artykule TechNet:
Add-ADGroupMember
Jeśli używasz programu PowerShell 5.1, użyj polecenia Add-LocalGroupMember -Group Programu PowerShell, zgodnie z opisem w następującym artykule:
Add-LocalGroupMember
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla