edocom 10 Geschrieben 18. Juli 2011 Melden Teilen Geschrieben 18. Juli 2011 Hallo Leut, hab folgendes Script um die Benutzerinformationen für Word auf dem Terminalserver zu setzen: Set objSysInfo = CreateObject("ADSystemInfo") strUser = objSysInfo.UserName Set objUser = GetObject("LDAP://" & strUser) Set objWord = CreateObject("Word.Application") objWord.UserName = objUser.givenName & " " & objUser.SN objWord.UserInitials = objUser.sAMAccountName objWord.Quit Nun wäre es cool, wenn es auch im Excel klappen würde: Set objSysInfo = CreateObject("ADSystemInfo") strUser = objSysInfo.UserName Set objUser = GetObject("LDAP://" & strUser) Set objExcel = CreateObject("Excel.Application") objExcel.UserName = objUser.givenName & " " & objUser.SN objExcel.Quit Geht aber nicht, übrigens habe ich keine Ahnung von VB, ich kann mein Script für Excel ohne Fehler ausführen, dann steht da aber wo der Benutzername sein sollte die Angabe über die Firma! :) Kann mir jemand helfen... Zitieren Link zu diesem Kommentar
Sunny61 812 Geschrieben 18. Juli 2011 Melden Teilen Geschrieben 18. Juli 2011 Diese Zeile "objWord.UserInitials = objUser.sAMAccountName" fehlt im zweiten Script. Absicht oder nur beim abschreiben vergessen? EDIT: Mußt Du noch an Excel anpassen. Zitieren Link zu diesem Kommentar
Sunny61 812 Geschrieben 18. Juli 2011 Melden Teilen Geschrieben 18. Juli 2011 Evtl. hilft dir dieses Script. Mußt Du evtl. noch an die richtige Office Version anpassen. ' W.Sonntag 08.07.2011 ' Teilweise von http://www.administrator.de/index.php?content=85204#414686 ausgeliehen. ' Dieses Script liest die Benutzervariable %USERNAME% aus und ermittelt den Vor- und Nachnamen des Benutzers aus dem AD. ' Der Vor- und Nachname wird dann an die Function change2unicode übergeben und später via REGEDIT /S ' in die Registry eingetragen. Damit ist sichergestellt, dass in Office 2003 immer der Vor- und Nachname ' des z.Zt. angemeldeten Netzwerkbenutzers eingetragen wird. Option Explicit Dim oDomain, oUser, cUser, fso, WshShell, WSHNetwork, WshSysEnv, TEMP, fi Set fso = Wscript.CreateObject("scripting.FileSystemObject") Set WshShell = Wscript.CreateObject("Wscript.Shell") Set WSHNetwork = WScript.CreateObject("WScript.Network") Set WshSysEnv = WshShell.Environment("PROCESS") cUser = WshSysEnv("USERNAME") ' Binde an User-Objekt in Domain (über aktuellen Account) oDomain = "//WSBZMDOM.LOCAL" Set oUser = GetObject("WinNT:" & oDomain & "/" & cUser) If IsNull(oUser.FullName) Then cUser = "" else cUser = oUser.FullName End if 'WScript.Echo cUser TEMP = WshSysEnv("TEMP") 'wscript.echo TEMP & "\OfficeUser.reg" Set fi = fso.OpenTextFile (TEMP & "\OfficeUser.reg",2,true) fi.WriteLine ("Windows Registry Editor Version 5.00") fi.WriteLine ("") fi.WriteLine("[HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\UserInfo]") fi.WriteLine (chr(34) & "UserName" & chr(34) & "=hex:" & change2unicode(cUser)) fi.close 'wscript.quit WshShell.Run chr(34) & "regedit.exe" & chr(34) & " /s " & chr(34) & TEMP & "\OfficeUser.reg" & chr(34),,True WScript.Quit (0) function change2unicode(text) Dim i Dim RegBinary for i = 1 to len(text) RegBinary = RegBinary & hex(asc(mid(text,i,1))) & ",00," next change2unicode = RegBinary & "00,00" end function Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.