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

Anmeldescript als local admin per runas unter Windows 7

Frage Entwicklung Batch & Shell

Mitglied: davinci91

davinci91 (Level 1) - Jetzt verbinden

05.07.2012 um 06:47 Uhr, 4925 Aufrufe, 7 Kommentare

Hallo Leute,

ich beschäftige mich schon seit langer Zeit mit dem Thema
Office 2007 per Script zu verteilen.

Leider stoße ich dabei immer wieder auf Probleme. Habt Ihr
eine Idee dazu, wie ich einen registry key per Anmeldeskript
als nicht lokaler Admin hinzufügen kann?

Zwar gibt es den "runas" Befehl, der hilft mir aber nicht
unbedingt weiter, da die Anmeldung nur durch Eingabe eines
Passwort erfolgt.

Das sollte nicht Sinn der Sache sein, weil die Installation
voll automatisch, ohne jegliche Benutzerinteraktion erfolgen
soll.

Könnt Ihr mir helfen?


LG, Davinci

Mitglied: catachan
05.07.2012 um 08:58 Uhr
Hi

für das Problem direkt hab ich keine Lösung, aber ich kann dir nur raten die Registry Keys über Gruppenrichtlinien zu verteilen. Funktioniert zuverlässig und ist wesentlich einfacher zum Einrichten. Vorausgesetzt du hast ne Domäne und Clients neuer als XP Sp2

LG
Bitte warten ..
Mitglied: bastla
05.07.2012 um 09:51 Uhr
Hallo davinci91!

Wenn sich der Key nur als Admin setzen lässt, wird das Anmeldescript wohl der falsche Ansatz sein - verwende ein Startscript, das läuft mit SYSTEM-Rechten ...

Grüße
bastla
Bitte warten ..
Mitglied: SlainteMhath
05.07.2012 um 10:23 Uhr
Zitat von bastla:
Wenn sich der Key nur als Admin setzen lässt, wird das Anmeldescript wohl der falsche Ansatz sein - verwende ein Startscript,
das läuft mit SYSTEM-Rechten ...
Das, oder du setzt die Reg-Keys direkt bei der Installation - dazu musst Du ledlglich die Office Installation entsprechend anpassen. Das geht mit "setup.exe /admin"

lg,
Slainte
Bitte warten ..
Mitglied: davinci91
05.07.2012 um 11:09 Uhr
Hallo,

Problem ist folgendes Domain ist mit Windows Server 2003.
Clients größtenteils XP = keine Probleme und ich kann direkt
ein Skript beim herunterfahren ausführen.

Bei Windows 7 sieht die Welt allerdings anders aus. Hier klappt
nur ein Anmeldeskript... warum auch immer.

Das ist der Hintergrund der gesamten Situation.
Bitte warten ..
Mitglied: DerWoWusste
05.07.2012 um 11:12 Uhr
Moin Davinci.
Anmeldeskript passt hier nicht, vergiss das ganz schnell.

Sag mal an, was Dich daran hindert, ein Startskript zu verwenden. Wir haben Office 2010 auf Vista und 7 per Startskript problemlos verteilt.
Regkeys setzt man nachträglich per GPO/GPP bzw. administrativer Vorlage.
Bitte warten ..
Mitglied: davinci91
06.07.2012, aktualisiert um 06:43 Uhr
Das Skript wird einfach nicht ausgeführt unter Windows 7.

Zunächst muss der registry key erstellt werden, der die Ausführung von nicht zertifizierten Skripts erlaubt.
Das mache ich mit einem Batchskript wie folgt:

regedit /s \\w2k3-test\Public_Install\powershell.reg

%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe \\w2k3-test\Public_Install\OFFICE_2007\officeinstall.ps1


Im Registrykey steht folgendes:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell]
"ExecutionPolicy"="Unrestricted"

/\ Dafür braucht dann logischer Weise admin Rechte, wenn man das nicht mehr Start- Herunterfahren Skript ausführen kann.

In dem Powershellskript machen wir eine Reihe von Abfragen ect. eigentlich nicht dramatisches.
Wäre nett, wenn du dir das mal anschauen könntest, bzw. mal eure Variante darlegen kannst.

Das eigentliche Skript sieht wie folgt aus:

#Installation Office 2007 Standard

#Script beenden
function beenden
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Script wird beendet" | Add-Content $datei
"" | Add-Content $datei
Exit
}

function prüfungofficeversion
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
if (Test-path $officeReg)
{
"$uhrzeit $officeVersion $architektur Bit ist installiert" | Add-content $datei
beenden
}
else
{
if(Test-path "hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90110407-6000-11D3-8CFE-0150048383C9}")
{
"$uhrzeit Office 2003 ist installiert" | Add-content $datei
deinstallation
}
else
{
"$uhrzeit Kein Office ist installiert" | Add-content $datei
installation
}
}
}

function deinstallation
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Deinstallation gestartet" | Add-content $datei
msiexec /uninstall "{90110407-6000-11D3-8CFE-0150048383C9}" /quiet
#Warten bis Deinstallation beendet ist
$eventlog = Get-eventlog -logname application -instanceID 11724 -source "MsiInstaller" -message "*Microsoft Office*" -newest 1 -ErrorAction SilentlyContinue
while (!($eventlog))
{
#Variable neu Einlesen, Erroraction verhindert Ausgabe eines Fehlers wenn Prozess beendet ist
$eventlog = Get-eventlog -logname application -instanceID 11724 -source "MsiInstaller" -message "*Microsoft Office*" -newest 1 -ErrorAction SilentlyContinue
$wshshell = New-object -comobject wscript.shell
$answer = $wshshell.popup("Office 2003 wird deinstalliert. Geschätze Dauer: 20 Minuten. Bitte warten.",5,"Deinstallation",0)
}
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Deinstallation beendet" | Add-content $datei
#Prüfung Office 2003
if (Test-path "hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90110407-6000-11D3-8CFE-0150048383C9}")
{
"$uhrzeit Fehler bei der Deinstallation von Office 2003" | Add-content $datei
#sendmail $body
beenden
}
#Deinstallation compatiblity pack
if (Test-path "hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90120000-0020-0407-0000-0000000FF1CE}")
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Deinstallation Compatibility Pack gestartet" | Add-content $datei
msiexec /uninstall "{90120000-0020-0407-0000-0000000FF1CE}" /quiet
#Warten bis Deinstallation beendet ist
$eventlog = Get-eventlog -logname application -instanceID 11724 -source "MsiInstaller" -message "*Compatibility Pack*" -newest 1 -ErrorAction SilentlyContinue
while (!($eventlog))
{
#Variable neu Einlesen, Erroraction verhindert Ausgabe eines Fehlers wenn Prozess beendet ist
$eventlog = Get-eventlog -logname application -instanceID 11724 -source "MsiInstaller" -message "*Compatibility Pack*" -newest 1 -ErrorAction SilentlyContinue
$wshshell = New-object -comobject wscript.shell
$answer = $wshshell.popup("Compatibility Pack wird deinstalliert. Geschätze Dauer: 20 Minuten. Bitte warten.",5,"Deinstallation",0)
}
if (Test-path "hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90120000-0020-0407-0000-0000000FF1CE}")
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Fehler bei der Deinstallation des Compatibility Pack" | Add-content $datei
#sendmail $body
beenden
}
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Deinstallation des Compatiblity Pack erfolgreich" | Add-content $datei
}
#starte installation Office2007
installation
}

function installation
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
#start der Installation
"$uhrzeit Installation von $officeVersion wurde gestartet und wird ausgeführt" | Add-content $datei
\\w2k3-test\Public_Install\OFFICE_2007\SETUP.exe -adminfile \\w2k3-test\Public_Install\OFFICE_2007\UPDATES\install.msp
$prozess = Get-Process Setup
prozesstest
}

function prozesstest
{
#Prüfung ob Installation noch läuft
#solange Installation läuft
$uhrzeit = Get-Date -Format "hh:mm:ss"
while ($prozess.responding)
{
#Variable neu Einlesen, Erroraction verhindert Ausgabe eines Fehlers wenn Prozess beendet ist
$prozess = Get-Process Setup -ErrorAction SilentlyContinue
$wshshell = New-object -comobject wscript.shell
$answer = $wshshell.popup("Office 2007 wird installiert. Geschätze Dauer: 20 Minuten. Bitte warten.",5,"Installation",0)
}
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit Installation von $officeVersion wurde abgeschlossen" | Add-content $datei
#Zur funktion prüfunginstall
prüfunginstall
}

function prüfunginstall
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
#prüfung ob office 2007 in Registry vorhanden
#Ist vorhanden
if (Test-path $officeReg)
{
popup
}
#nicht vorhanden
else
{
#Fehlermeldung
#sendmail $body
"$uhrzeit ERROR!!! bei $computer Registry Key nicht vorhanden" | Add-content $datei
#$wshshell = new-object -comobject wscript.shell
#$Answer = $wshshell.popup("Fehler bei der Installation!!! Wenden Sie sich an die EDV Abteilung unter der Nummer 727 oder 728!",30,"Installation Fehlgeschlagen",0)
beenden
}
}

function popup
{
$uhrzeit = Get-Date -Format "hh:mm:ss"
"$uhrzeit $officeVersion $architektur Bit wurde erfolgreich installiert auf $computer" | Add-content $datei

beenden
}

#Start des Scripts
$body = "Bei der Installation ist ein Fehler aufgereten, siehe Logdatei!"
$computer = get-content env:computername
$datum = Get-Date -UFormat "%d_%m"
$uhrzeit = Get-Date -Format "hh:mm:ss"
$datei="\\w2k3-test\Public_Install\OFFICE_2007\Logs\$computer-$datum.txt"
$officeVersion="Office 2007 Standard"

#installierte Architektur
$architektur= Get-WmiObject -class Win32_Processor | Select-Object AddressWidth
#Setzte Office 2007 Key
if (select-String -inputObject $architektur -pattern "64")
{
$officeReg="hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90120000-002A-0000-1000-0000000FF1CE}"
$architektur="64"
}
else
{
$officeReg="hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90120000-0012-0000-0000-0000000FF1CE}"
$architektur="32"
}


#starte function prüfungofficeversion
prüfungofficeversion
Bitte warten ..
Mitglied: DerWoWusste
06.07.2012, aktualisiert um 12:11 Uhr
Moin.

Ich verstehe weiterhin nicht, warum ein Startskript nicht laufen sollte. Du kannst doch testhalber die Ausgabe jedes Kommandos in eine Datei loggen, dann siehst Du doch, was schief läuft.
Bei uns deinstallierte das Batch-Startskript per msiexec /x *Uninstallstring* Vorgängerversionen bzw. compat. Packs. Dann wurde das Officesetup per Batch über config.xml-Dateien gesteuert, siehe http://wpkg.org/MS_Office_2010
Eine Unterscheidung nach Architektur wurde nicht betrieben und es wurde nur Office32 (wie auch von MS empfohlen) installiert.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

Exchange Server
DNS Einstellung - zwei feste IPs für Mailserver (15)

Frage von ivan0s zum Thema Exchange Server ...