Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VisualStudio 2008 WinServer2003 - userAccountControl nicht setzbar.

Frage Entwicklung

Mitglied: FarelM

FarelM (Level 1) - Jetzt verbinden

16.04.2008, aktualisiert 14:46 Uhr, 3282 Aufrufe, 1 Kommentar

Hi Leute, folgende Ausgangssituation:

Ich programmiere (noch immer) ein Programm dass das Anlegen von Usern im AD vereinfacht (zB man kann gemütlich extensionAttribute10 setzen und so).
Ich entwickle auf einem Windows SBS Server 2003 R2 Premium 32bit mit VisualStudio 2008 Express.
Ausgeführt wird das ganze auf unserem Life-System, einen WindowsServer 2003 Standard 64bit ausgeführt.
Beide Maschienen verfügen über .NET 3.5

Nun zum Problem. Programm funktioniert soweit super. Nur der Accountstatus (attribut heißt im ADSI "userAccountControl" wird auf dem Life-System nicht gesetzt, dafür kommt eine Fehlermeldung "The Server is unwilling to process the Request". Der User wird dann, je nachdem in welcher Zeile der Code steht trotzdem angelegt oder nicht, allerdings wird die userAccountControl auf 546 gesetzt (was soviel heißt wie dass man kein PW zum einloggen braucht = schlecht).

Kann mir irgendjemand sagen, wie ich dieses Attribut trotzdem setzen kann?
Liegts vielleicht daran dass das eine 32 und das andere 64bit ist? Warum funktioniert dann nur das nicht?


Hier ein paar sachen wie ich es probiert habe:


01.
objChild.Properties("UserAccountControl").Add(512) 
02.
objChild.CommitChanges()
_________________________

01.
objChild.Properties("UserAccountControl").Add("512") 
02.
objChild.CommitChanges()
_________________________
01.
Dim exp As Integer = CInt(objChild.Properties("userAccountControl").Value) 
02.
objChild.Properties("userAccountControl").Value = exp Or &H200 
03.
objChild.CommitChanges() 
04.
objChild.Properties("userAccountControl").Value = exp And Not &H2 
05.
objChild.CommitChanges()
Mitglied: FarelM
16.04.2008 um 14:46 Uhr
Ich hab nun eine - in meinen Augen zwar nicht optimale - aber funktionierende Lösung gefunden.

Wenn der User fertig angelegt wurde, wird er nochmal gesucht, das Attribut wird geleert und dann neu gesetzt:

01.
    'Accoun-Status festlegen 
02.
    Public Sub AccountStatus() 
03.
        Try 'Hier wird der Account-Status gesetzt 
04.
            Dim searcher As New System.DirectoryServices.DirectorySearcher() 'Suchfunktion 
05.
            searcher.Filter = "(&(objectClass=user)(objectCategory=person)(sAMAccountName=" & txt_logonname.Text & "))" 'Suchkriterien 
06.
            searcher.PropertiesToLoad.Add("adspath") 
07.
            Dim Result As System.DirectoryServices.SearchResult = searcher.FindOne() 
08.
            Dim dirEntryResults As New DirectoryServices.DirectoryEntry(Result.Path) 
09.
            MsgBox(Result.Path.ToString()) 
10.
            dirEntryResults.Properties("userAccountControl").Clear() 
11.
 
12.
            If chb_accountactivate.Checked = True Then 
13.
                dirEntryResults.Properties("userAccountControl").Add("512") 
14.
                dirEntryResults.CommitChanges() 
15.
            Else 
16.
                dirEntryResults.Properties("userAccountControl").Add("514") 
17.
                dirEntryResults.CommitChanges() 
18.
            End If 
19.
        Catch ex As Exception 
20.
            MsgBox("Beim setzen des Account-Status ist ein Fehler aufgetreten:" & Environment.NewLine & Environment.NewLine & ex.Message) 
21.
        End Try 
22.
 
23.
    End Sub
Warum das nun vorher am SBS funktionert hat, am anderen Server aber nicht weiß ich nach wie vor nicht, aber es funktioniert.

Vielleicht hilft das hier ja mal jemandem.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(4)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (17)

Frage von Unwichtig zum Thema Netzwerkmanagement ...