Jump to content

nahemoth

Abgemeldet
  • Gesamte Inhalte

    186
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von nahemoth

  1. Hallo,

     

    ich würde gerne das aktuelle Expiration Date von verschiedenen Accounts aus der AD holen.

    Es soll zusätzlich die Möglichkeit bestehen, ein neues Auslaufdatum einzugeben, um einen Account aktivieren zu können.

     

    Ich habe bislang folgenden Ansatz verfolgt:

    Dim Benutzer() as String = {"User1", "User2"}
    ' Verbindung mit dem DC herstellen.
           Dim Server As New PrincipalContext(System.DirectoryServices.AccountManagement.ContextType.Domain, "DomainController")
           ' Ein leeres Benutzerobjekt erstellen.
           Dim User As New UserPrincipal(Server)
    
           For i As Integer = 0 To Benutzer.Length - 1
               ' Suchkriterien zusammenstellen.
               User.SamAccountName = Benutzer(i)
    
               ' Filterobjekt erstellen, und zuweisen.
               Dim Filter As New PrincipalSearcher()
               Filter.QueryFilter = User
    
               ' Das Ergebnis in Result speichern.
               Dim Result As PrincipalSearchResult(Of Principal) = Filter.FindAll()
    
               ' In der Variable u sind alle Eigenschaften des Benutzerkontos enthalten.
    
               Select Case Benutzer(i)
                   Case "User1"
                       Label17.Text = User.AccountExpirationDate.ToString
    
                   Case "User2"
                       Label16.Text = User.AccountExpirationDate.ToString
               End Select
           Next

    aber die Felder sind immer leer.

    Wenn ich in Result Nachschaue, dann gibtr es da ein ... ahm, wie nennt mans ... Untermenü, oder so, System.directoryServices.AccountManagement.UserPrincipal, dort sind alle benötigten Infos drinn, aber wie komm ich da dran?

     

    Kann mir hier jemand weiterhelfen?

     

    Vielen Dank!

  2. Hallo,

     

    ich habe ein Script geschrieben, das mir anzeigt, wenn sich eine Benutzer auf einem Rechner anmeldet:

    Echo "%username% hat sich am %date% um %time% an %computername% von %Clientname% ueber %Logonserver% angemeldet"
    
    msg <Benutzer> /server:<host1> %Username% hat sich an %Computername% von %Clientname% ueber %Logonserver% angemeldet 
    net send <host2> %Username% hat sich an %Computername% von %Clientname% ueber %Logonserver% angemeldet

     

    Ich bekomme aber an host1(Win7) keine Nachricht, wenn sich nun ein Benutzer anmeldet. Host2(WinXP) bekommt eine Nachricht.

    Wenn ich das Script auf host1 ausführe, dann bekomme ich eine Nachricht.

     

    Kann mir jemand weiterhelfen, was hier falsch läuft?

     

    Vielen Dank!

  3. WMI funktioniert nur remote, wenn die WMI-klasse den Parameter -computername hat.

    das soll ja das Ziel sein, den Befehl per VB von meinem Client remote auf dem Server auszuführen.

     

    edit:

     

    nun habe ichj es sowiet, dass er das script remote ausführt:

    Dim p As New System.Diagnostics.Process
           p.StartInfo.FileName = "H:\Software\Sysinternales\ps-Tools\PsExec.exe "
           p.StartInfo.Arguments = "\\SERVER ping caresrv1"
           MsgBox(p.StartInfo.FileName & p.StartInfo.Arguments)
    
    
           p.StartInfo.RedirectStandardError = True
           p.StartInfo.RedirectStandardOutput = True
           p.StartInfo.UseShellExecute = False
           p.StartInfo.CreateNoWindow = False
    
           p.Start()
           p.WaitForExit()
    
           Dim sResult As String = p.StandardError.ReadToEnd & p.StandardOutput.ReadToEnd
           TextBox1.Text = sResult

    aber, er gibt mir als ausgabe in der textbox nur

    PsExec v1.98 - Execute processes remotely

    Copyright © 2001-2010 Mark Russinovich

    Sysinternals - Windows Sysinternals: Documentation, downloads and additional resources

     

    Connecting to SERVER...

    Starting PsExec service on SERVER...

    Connecting with PsExec service on SERVER...

    Starting ping on SERVER...

    ping exited on SERVER with error code 1.

    also das was PsExec ausgibt.

    Wenn ich den Befehl in der Konsole aufrufe bekomme ich aber auch den Inhalt des Pings zu sehen, dies hätte ich auch gerne in dem Textfeld.

    Auch bekomme ich in der Konsole "Exited with error code 0" und aus VB heraus Error Code 1.

     

    Hat jemand eine Idee?

     

    Danke!

     

    edit:

     

    laut diesem Artikel handelt es sich ier um einen Fehler bei psexec :(

  4. Alles klar, vielen Dank!

     

    jetzt stehe ich nur noch vor dem Problem, wie ich das per WMI auf einer anderen Maschine aufrufen kann:

     

    Sub Start_Process(ByVal strComputer As String, ByVal strProcess As String, ByVal UserName As String, ByVal Password As String)
           Dim processBatch As ManagementClass = New ManagementClass("Win32_Process")
           Dim inParams As ManagementBaseObject = processBatch.GetMethodParameters("Create")
           Dim msc As ManagementScope
    
           inParams("CurrentDirectory") = Nothing
           inParams("CommandLine") = strProcess
           Dim co As ConnectionOptions = New ConnectionOptions()
           co.Username = "user"
           co.Password = "password"
    
           Try
               If (strComputer = System.Environment.MachineName) Then
                   msc = New Management.ManagementScope("\\" & strComputer & "\root\cimv2")
               Else
                   msc = New Management.ManagementScope("\\" & strComputer & "\root\cimv2", co)
               End If
    
               msc.Connect()
               processBatch.Scope = msc
               Dim meyhodoptions As InvokeMethodOptions = New InvokeMethodOptions(Nothing, System.TimeSpan.MaxValue)
               Dim outParamas As ManagementBaseObject = Nothing
               outParamas = processBatch.InvokeMethod("Create", inParams, Nothing)
    
           Catch ex As Exception
    
           End Try
       End Sub

     

    genügt es hier als Prozess die sub zu übergeben?

     

        Private Sub Login_prüfen()
           Dim p As New System.Diagnostics.Process
           p.StartInfo.FileName = "change logon"
           p.StartInfo.Arguments = "/query"
           p.StartInfo.RedirectStandardOutput = True
           p.StartInfo.UseShellExecute = False
           p.StartInfo.CreateNoWindow = True
           p.Start()
           p.WaitForExit()
           Dim sResult As String = p.StandardOutput.ReadToEnd
           TextBox1.Text = sResult
    
       End Sub

  5. Hallo,

    ich möchte die Ausgabe von "change logon /query" in eine Variable einlesen, um damit arbeiten zu können.

     

    den Aufruf starte ich mittels:

        Sub Start_Process(ByVal strComputer As String, ByVal strProcess As String, ByVal UserName As String, ByVal Password As String)
            Dim processBatch As ManagementClass = New ManagementClass("Win32_Process")
            Dim inParams As ManagementBaseObject = processBatch.GetMethodParameters("Create")
            Dim msc As ManagementScope
    
            inParams("CurrentDirectory") = Nothing
            inParams("CommandLine") = strProcess
            Dim co As ConnectionOptions = New ConnectionOptions()
            co.Username = "user"
            co.Password = "password"
    
            Try
                If (strComputer = System.Environment.MachineName) Then
                    msc = New Management.ManagementScope("\\" & strComputer & "\root\cimv2")
                Else
                    msc = New Management.ManagementScope("\\" & strComputer & "\root\cimv2", co)
                End If
    
                msc.Connect()
                processBatch.Scope = msc
                Dim meyhodoptions As InvokeMethodOptions = New InvokeMethodOptions(Nothing, System.TimeSpan.MaxValue)
                Dim outParamas As ManagementBaseObject = Nothing
                outParamas = processBatch.InvokeMethod("Create", inParams, Nothing)
    
            Catch ex As Exception
    
            End Try
        End Sub
    

     

    geht das, da dann das ergebnis des aufrufs abzufangen?

     

    Danke!

  6. Hallo,

    ich würde gerne tsadmin auf einem Windows 7 System nutzen, aber ich bekomme hier folgende Meldung:

    Terminalserververwaltung

     

    Terminalserververwaltung funktioniert nicht mehr

     

    Das Programm wird aufgrund eines Problems nicht richtig ausgeführt. Das Programm wird geschlossen und Sie werden benachrichtigt, wenn eine Lösung verfügbar ist.

    Leider habe ich keinen Anhaltspunkt, warum es nicht funktioniert. Hat jemand einen Tipp?

     

    Vielen Dank!

  7. Hallo,

    ich weiss nicht, ob ich in diesem Unterforum richtig bin, wenn nicht, bitte einfach verschieben.

     

    Ich versuche in VB/VBA den Pfad zum Windows-Verzeichnis auf dem Homelaufwerk auszulesen.

     

    Mein Versuch war:

      Private Function GetWindowsDirectory(ByVal lpBuffer As Text.StringBuilder, _
                       ByVal uSize As UInteger) As UInteger
       End Function
    
       Public Function GetWindowsDirectory() As String
           Dim lLen As Integer
           Dim lBuffer As New Text.StringBuilder(260)
    
           lLen = CInt(GetWindowsDirectory(lBuffer, _
                           CUInt(lBuffer.Capacity)))
    
           MsgBox(lBuffer.ToString(0, lLen))
           Return lBuffer.ToString(0, lLen)
       End Function
    

    aber GetWindowsDirectory gibt mir immer einen lehren String zurück.

    Kann mir hier jemand weiterhelfen?

     

    Vielen Dank!

  8. Hey,

    klaro ... ich hab mittlerweile weiter recherchiert, aber bin auf noch keinen grünen Zweig gekommen.

    Also, ich krieg die Stopmeldung: STOP 0x000000ED (0x82B7DA68, 0xC00000006 ...)

    und oben steht "UNMOUNTABLE VOLUME"

    In der MS-FAQ steht, dass eventuell falsche Kabel oder so verwendet werden, aber das glaube ich nicht, denn an der Hardware wurde nichts verändert.

    Was noch komisch ist ... ich habe mal mit Knoppix gebootet und da hängt er die Festplatte nicht ein und meldet "The Volume is marked as used" oder so. Vlt. hilft das ja weiter.

     

    Danke!

  9. Hi,

    eine Freundin hat eine Sigma Cam1000U und würde die gerne unter Windows 7 betreiben. Ich hab dafür nur Treiber für Windows 2000/XP gefunden. Geht das, dass man diese auch unter Windows 7 verwendet ?

    Ich hab noch großartig keine Ahnung von Windows 7, desshalb die Frage ... ich finds peinlich, wenn ein Informatiker sowas net hinkriegt und ich möcht net mit runtergelassenen Hosen dastehn ;-)

     

    Kann ich die Webcam zum laufen bekommen, oder soll ich ihr zu ner Neuanschaffung raten?

     

    Danke !

  10. Hi,

    ich habe ein Win7Prof 32Bit und er zeigt mir an, dass 4GB verbaut sind, aber nur 3,25 verwendet werden können.

    Ein 32 Bit Win kann doch theoretisch 4GB adressieren. Was läuft hier falsch ?

     

    Thx!

     

    edit:

    ich habe folgendes über das Board gelesen:

    Asus P5KR Arbeitsspeicher Konfiguration

     

    Der Asus P5KR Speicher kann auf maximal 8192MB RAM erweitert werden. Für eine maximale Speichererweiterung stehen dem Gerät 4 (2 banks of 2) Steckplätze (-platz) zur Verfügung.

     

    ** Unsere Datenbank hat Ihnen Module mit gleicher Speichergrösse, jedoch mit unterschiedlicher Geschwindigkeit (Taktfrequenz) gelistet. Wenn Sie sich unsicher sind, welcher RAM Baustein in Ihr System passt, ist es am einfachsten, wenn Sie den Arbeitsspeicher mit der höchsten Geschwindigkeit nehmen, alle unsere Speichermodule sind abwärtskompatibel, ihre Taktfrequenz passt sich dem Speicher mit der niedrigsten Geschwindigkeit an.

     

    Um die Vorteile der Dual-Channel Funktionalität zu nutzen, empfiehlt es sich den Arbeitsspeicher paarweise (mit zwei identischen Speichermodulen) zu bestücken. Der Dual-Channel Mode ist auch bei gleicher Speicherbauart mit unterschiedlicher Taktfrequenz möglich.

     

    Die maximale Arbeitsspeicher Kapazität kann sich gegebenenfalls von den Herstellerangaben unterscheiden, da diese inzwischen veraltet sein könnten. Neue Speicher Technologien, bzw. Bios - oder Software Versionen machen dieses bei gleicher Performance und Stabilität möglich.

     

    Wegen der Beschränkung der aktuellen 32BIT Betriebssysteme können bei einer maximalen Speicheraufrüstung von 4GB und größer nur 3,12GB RAM genutzt werden, erst bei 64BIT Systemen wird Ihr maximaler Arbeitsspeicher ab einer Größe von 4GB voll genutzt.

     

    Unsere Arbeitsspeicher entsprechen den Qualitäts - und Systemanforderungen des Asus P5KR und können zusammen mit den Orginal-Modulen eingesetzt werden. Mit zusätzlichem RAM (Arbeitsspeicher) wird Ihr System wieder schneller und leistungsfähiger.

     

    Für d. Asus P5KR - Motherboard-Mainboard empfehlen wir eine maximale Arbeitsspeicher Aufrüstung von 8192MB RAM.

    Ein Arbeitsspeicher Upgrade ist empfehlenswert, wenn Sie gleichzeitig mit mehreren Speicher intensiven Programmen, wie Bildbearbeitungsoftware arbeiten.

    Also lassen sich unter Win7 32 Bit die vollen 4GB nicht verwenden ?

    Das "Memory Remapp Feature" der Northbridge ist aktiviert.

×
×
  • Neu erstellen...