xcaschox
Goto Top

Ändern des Firmennamens und des Benutzernamens in einem Office XP Programm

Hallo,
ich stehe mal wieder vor einem blöden Problem.
Bei uns sind ca. 80 Office 2003 installiert, dummerweise sind alle mit dem gleichen Namen und der gleichen Firma installiert.
sprich wir können z.B. nicht nachvollziehen wer gerade eine Datei geöffnet hat.

Gibt es eine Möglichkeit z.B. Batch-Datei, die den Benutzernamen mit hilfe des Anmeldenamens ändert?

Danke für Eure Hilfe.

LG

C.

Content-Key: 129694

Url: https://administrator.de/contentid/129694

Printed on: April 24, 2024 at 23:04 o'clock

Member: Iwan
Iwan Nov 18, 2009 at 14:52:03 (UTC)
Goto Top
hallo,

der entsprechende Eintrag steht in der Registry unter
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\UserInfo
- UserName, UserInitials
Problem ist, das es ein Reg_Binary ist, aber du kannst natürlich auch die 2 Einträge einfach löschen
dann wird beim nächsten Start eines Office-Programmes diese erneut vom User angefordert

*nachtrag*
vielleicht hilft dir das hier: click mich
Mitglied: 60730
60730 Nov 18, 2009, updated at Oct 18, 2012 at 16:40:01 (UTC)
Goto Top
salü,

@ Iwan:
set Office - 2003 == 11.0
set Office Xp ==? 10?

@ C:

Das "kommt" davon, wenn der "Administrator" die Software installiert *lach*

Unter Office 2000 z.B findest du diesen Wert als Binary
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Common\UserInfo\UserName

"So" einfach bekommst du da aber nicht den gewünschten Eintrag rein, denn dort muß ein "Reg_Binary" Wert drin stehen.

Bedank dich dann bitte nicht bei mir, sondern bei Stefan Bolz.

on error resume next

Set fso = Wscript.CreateObject("scripting.FileSystemObject")  
Set WshShell = Wscript.CreateObject("Wscript.Shell")  
Set WSHNetwork = WScript.CreateObject("WScript.Network")  
Set WshSysEnv = WshShell.Environment("PROCESS")  
USERNAME = WshSysEnv("USERNAME")  

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\9.0\Common\UserInfo]")  
fi.WriteLine (chr(34) & "UserName" & chr(34) & "=hex:" & change2unicode(USERNAME))  
fi.close

wscript.sleep (1000)
WshShell.Run chr(34) & "regedit.exe" & chr(34) & " /s " & chr(34) & TEMP & "\OfficeUser.reg" & chr(34),,True   

WScript.Quit (0)

function change2unicode(text)
for i = 1 to len(text)
RegBinary = RegBinary & hex(asc(mid(text,i,1))) & ",00,"  
next
change2unicode = RegBinary & "00,00"  
end function

für "harte"

Gruß
Member: Iwan
Iwan Nov 19, 2009 at 07:25:33 (UTC)
Goto Top
guten morgen,

im Titel steht zwar "Office XP", im Text dann aber Office 2003
daher bin ich mal von O2K3 auf XP-Rechnern ausgegangen
wenn man den Reg-Key von 9.0 auf 11.0 ändert, funktioniert es
Member: XcaschoX
XcaschoX Nov 19, 2009 at 10:24:45 (UTC)
Goto Top
Hallo,
danke erstmal,
aber beim Ausführen bekomme ich folgende Fehlermeldung:

Skript: hier steht der Name
Zeile 13
Zeichen 1
Fehler: Anweisung erwartet
Code 800A0400
Quelle Kompilierungsfehler in Microsoft VBScript

Habe das Script auf officeXP wie folgt angepasst:
("[HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\UserInfo]")

Muss noch folgende Anmerkung machen, wir melden uns mit Novell an den PC´s an. Kann das den Fehler verursachen?

Danke für die Hilfe

LG
Carsten
Mitglied: 60730
60730 Nov 19, 2009 at 10:46:11 (UTC)
Goto Top
Servus,

nochmal... Iwan und meiner einer - "reden" nicht um des redenswillens hier...

Du mußt leider "doch" für ganz harte anklickern....

Gruß

[edit]
in dem alten Fred werde ich garantiert nicht antworten - denn den findet ja keiner..

Zitat von @60730:
salü,

set Office - 2003 == 11.0
set Office Xp ==? 10?
[/edit]


Zitat von @Biber:
Moin caschopi,

a) Wenn irgendwo in einem VBSkript-Schnipselchen die Zeile "On Error Resume Next" steht, bedeutet das, dass der Verfasser der
Meinung ist, bei ihm auf dem Rechner läuft es/lief es mindestens einmal und wer Fehlermeldungen sehen will ist ein Weichei.
Dennoch sollte jede/r, der/die irgendwo in diesen World-Wide-Wurschtelforen einen Schnipsel mit dieser Zeile aufliest, genau diese Zeile als erstes auskommentieren.

b) Richtige Hasenfüße (so wie ich) ändern dann alles (ggf. in mehreren Etappen) so ab, das zuerst nur angezeigt wird, was passieren würde beim nächsten Etappenziel.

Deshalb würde mein geCopy&Pasteter Schnipsel im ersten Step so aussehen:
'on error resume next  
> Set fso =
> Wscript.CreateObject("scripting.FileSystemObject")  
> Set WshShell = Wscript.CreateObject("Wscript.Shell")  
> Set WSHNetwork = WScript.CreateObject("WScript.Network")  
> Set WshSysEnv = WshShell.Environment("PROCESS")  
> USERNAME = WshSysEnv("USERNAME")  
> wscript.echo TEMP & "\OfficeUser.reg"  
> wscript.quit
> '----------hier ist Ende der ersten Etappe!! ---  
> 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\9.0\Common\UserInfo]")  
> fi.WriteLine (chr(34) & "UserName" & chr(34) &  
> "=hex:" & change2unicode(USERNAME))  
> fi.close
> 
> ' wscript.sleep (1000)  
> 
> ' WshShell.Run chr(34) & "regedit.exe" &  
> chr(34) & " /s " & chr(34) & TEMP &  
> ' "\OfficeUser.reg" & chr(34),,True  
> 
> WScript.Quit (0)
> 
> function change2unicode(text)
> for i = 1 to len(text)
> RegBinary = RegBinary & hex(asc(mid(text,i,1))) &
> ",00,"  
> next
> change2unicode = RegBinary & "00,00"  
> end function 
> 
... und dabei würde ich feststellen, dass bei mir (und bei dir
dito) das locker hingeworfene TEMP zu etwas
aufgelöst wird, dass auch als der große
wirtschaftspolitische Plan der FDP bekannt ist.

Angezeigt wird jedenfalls als Ergebnis der Zeilen 07/08 oben:
>cscript e:\schnipsel\writeofficeReg.vbs
> \OfficeUser.reg
> 
...d.h. bei mir würde, weil ich als Admin unterwegs bin und auf
Laufwerk D: im Rootverzeichnis eine Datei OfficeUser.reg geschieben
werden.
Da du vermutlich auf Laufwerk C:\ unterwegs bist, bekommst du sofort
eine aufs Maul, weil so etwas wirklich nicht sein können sollte.

Sorge dafür, dass bei dir irgendwohin geschrieben wird, wo
Schreibrechte vorhanden sind und/oder initialisiere die Variable
Temp.

Grüße
Biber

@edit : Hier findet das hoffentlich jeder, der Excel schreiben kann....