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
GELÖST

VBScript - Benutzung der WMI-Klasse StdRegProv als SYSTEM-Benutzer schlägt fehl

Frage Entwicklung VB for Applications

Mitglied: eicky2007

eicky2007 (Level 1) - Jetzt verbinden

05.12.2008, aktualisiert 21:04 Uhr, 5165 Aufrufe, 1 Kommentar

Hallo zusammen !

Ich möchte ein VBScript erstellen, das als Gruppenrichtlinien-Shutdown-Script Verwendung finden wird.
In diesem Script greife ich über die WMI-Klasse StdRegProv auf die Registrierung zu. Als "natürlicher" Benutzer mit administrativen Rechten läuft meine Routine auch problemlos durch. Wenn ich das Script allerdings als Shutdown-Script ausprobiere, schlägt der Zugriff auf die Registrierung fehl.
Testweise habe ich das Script auch schonmal als geplanten Task unter den Anmeldeeinstellungen des SYSTEM-Benutzers ausführen lassen: Das selbe Problem.
Es scheint also am SYSTEM-Benutzer zu liegen.

Auszug aus dem Code:

01.
const HKEY_LOCAL_MACHINE = &H80000002 
02.
 
03.
intRunInterval = 30 
04.
 
05.
strLastMaintenanceKeyPath = "SOFTWARE\IT-Abteilung" 
06.
strLastMaintenanceValueName = "LastMaintenance" 
07.
 
08.
Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv") 
09.
 
10.
maintenanceDue = True 
11.
 
12.
objReg.GetDWORDValue HKEY_LOCAL_MACHINE, strLastMaintenanceKeyPath, strLastMaintenanceValueName, intLastMaintenance 
13.
 
14.
'Bei der Ausführung im SYSTEM-Kontext löst die obige Funktion den Err.Code 2 aus. Leider sagt mir das nicht viel... 
15.
 
16.
If IsNumeric(intLastMaintenance) Then 
17.
  if (Date() - intLastMaintenance) <= intRunInterval Then 
18.
    maintenanceDue = False 
19.
  End If 
20.
End If 
21.
 
22.
[...]
Leider kann ich nicht auf die RegRead-Funktion eines Wscript.Shell-Objektes zurückgreifen, da ich im späteren Verlauf des Scripts bspw. noch eine Liste von Unterschlüsseln eines Registry-Schlüssels abfragen möchte. Das geht imho nur mit der obigen Variante.

Hat jemand von euch eine Ahnung, wo das Problem liegen könnte ? Kann der SYSTEM-Benutzer etwa keine WMI-Funktionalitäten ausführen ? Oder habe ich irgendwo einen Fehler im Ansatz ?

Vielen Dank im Voraus für eure Mühen!

Gruß, Eicky

P.S.: Bein leider kein VBScript / WMI-Crack, habe trotzdem versucht, mein Problem verständlich auszudrücken
Mitglied: eicky2007
05.12.2008 um 21:04 Uhr
Hallo nochmal,

sorry, hab das Fehlschlagen meines Scripts wohl vollkommen falsch "interpretiert". Daher hilft der obige Code-Auszug auch nicht bei der Problemlösung...

Der Unterschied ist (wie ich inzwischen herausgefunden habe) der, dass ein SetDWORDValue-Aufruf unter dem SYSTEM-Konto fehlschlägt, wenn der übergeordnete Key nicht existiert. Unter einem "natürlichen" Administrator hingegen gab's keine Probleme...

Hab dann einfach die Erstellung des Keys vorgeschaltet...

Viele Grüße,

Eicky
Bitte warten ..
Neuester Wissensbeitrag
DSL, VDSL

Telekom versendet automatische Kündigungen

(3)

Erfahrungsbericht von Voiper zum Thema DSL, VDSL ...

Ähnliche Inhalte
Visual Studio
gelöst VBScript und WMI (Win32-NetworkAdapterConfiguration) (3)

Frage von MaxMoritz6 zum Thema Visual Studio ...

Windows Server
TeamViewer 11 MSI Installation schlägt fehl (13)

Frage von Ghost108 zum Thema Windows Server ...

Windows Server
Upgrade von MSSQL Server 2008 R2 auf MSSQL Server 2012 schlägt fehl (4)

Frage von Argoadmin zum Thema Windows Server ...

Heiß diskutierte Inhalte
Windows 7
gelöst BOOTMGR is missing (auch nach bootrec -RebuildBcd) (21)

Frage von Mipronimo zum Thema Windows 7 ...

Windows Userverwaltung
Windows Freigabe: Zugriff auf alle Ordner trotz Sicherheitseinstellungen (18)

Frage von Pandreas zum Thema Windows Userverwaltung ...

Exchange Server
gelöst MS Exchange 2016 - Basicconfig Fragen (16)

Frage von maddig zum Thema Exchange Server ...

Windows Server
gelöst Rechte als Admin vergeben - Zugriff verweigert (14)

Frage von Ghost108 zum Thema Windows Server ...