Netranger 10 Geschrieben 10. September 2003 Melden Teilen Geschrieben 10. September 2003 Hi Vielleicht kann mir ja hier einer helfen. Ich schreibe im Moment ein Script mit dem ich die automatische Softwareverteilung im Netzwerk steuere. Beim Installieren ist es ja sehr komfortabel mit den *.msi - Dateien, da diese voll automatisch ablaufen. Nun will ich noch die Option der Deinstallation mit einbauen, die von msiexec mit der Option /x ja unterstützt wird. Nur stört mich dabei, daß jedes mal bei der Ausführung nocheinmal nachgefragt wird, ob man die Software wirklich deinstallieren will. Wie kann ich nun den Dialog standardmäßig mit Ja beantworten lassen? Auch wäre noch wichtig, wenn Fehlermeldungen, die bei der Deinstallation autauchen unterdrückt werden könnten. Vielen Dank schonmal im voraus. MfG Netranger Zitieren Link zu diesem Kommentar
thorgood 10 Geschrieben 10. September 2003 Melden Teilen Geschrieben 10. September 2003 Mit diversen /q Parametern siehe hier http://www.microsoft.com/technet/treeview/default.asp?url=/TechNet/prodtechnol/winxppro/proddocs/msiexec.asp thorgood Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 10. September 2003 Melden Teilen Geschrieben 10. September 2003 Hi, hast Du es schon mal mit der Option /qn probiert oder /qb- ? Bei der Installation wird dann enstprechend die Ausgabe und die Bestätigungen unterdrückt. Eine andere Alternative wäre per vbscript einen entsprechenden Tastencode zu senden, der dann die Eingabe bestätigt. Für weitere Optionen gibt es übrigens von Microsoft eine Übersicht der Befehlszeilenoptionen mit der TID 314881 Gruß Torsten Beck Zitieren Link zu diesem Kommentar
Netranger 10 Geschrieben 10. September 2003 Autor Melden Teilen Geschrieben 10. September 2003 danke schonmal. zum ersten tip: /x und /q scheinen sich leider irgendwie nicht zu vertragen zum zweiten tip, über vbscript: Ich kenn mich leider mit VBScripts fast überhaupt nicht aus. Könntest du mir mal bitte kurz erklären, wie das auszusehen hat? Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 10. September 2003 Melden Teilen Geschrieben 10. September 2003 Hallo, hier ein vbscript Beispiel: Folgenden Text in eine Datei mit Endung .vbs kopieren: Option Explicit Dim objShell Set objShell = WScript.CreateObject("WScript.Shell") objshell.Run("msiexec /x Pfad\dateiname.msi") wscript.Sleep(500) objShell.AppActivate("installer") objShell.SendKeys("j") Mal ausprobieren... Gruß torsten Zitieren Link zu diesem Kommentar
Roi Danton 10 Geschrieben 10. September 2003 Melden Teilen Geschrieben 10. September 2003 Hi, wenn Du schon MSI Files verteilen wills, warum nutzt Du nicht RIS von W2k ? Da sparst Du Dir eine wenig an Arbeit mit ;) Und umsonst ist es auch noch ;) Gruß, Roi Danton Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 10. September 2003 Melden Teilen Geschrieben 10. September 2003 Hi, @Roi Danton es gibt immer mal wieder Gründe es nicht mit Grouppolicy zu tun (RIS ist für Rechner Installationen mit und ohne weiterer Software, Policys sind gut für Nachinstallationen und Softwareverteilung). 1) z.B. läßt sich eine zeitlich gesteuerte Softwareverteilung mit Ghost Enterprise edition realisieren, mit exe files, msi, files and so on.. Damit läßt sich die Netzwerklast tagsüber reduzieren und die Nerven und Anwender schonen. 2) Policys können nicht efectiv meines Wissens die Last verteilen, wenn sich 20 Rechner gerade einschalten, und Du neue Software installierst, dann halt bei gerade 20 Rechnern... Und die Anwender warten. 3) unattend / RIS Installationen ohne Image, sauber aufgesetzt. uso. Gruß Torsten Zitieren Link zu diesem Kommentar
Netranger 10 Geschrieben 10. September 2003 Autor Melden Teilen Geschrieben 10. September 2003 Ja, ich hätte es ja gerne mit RIS oder Gruppenrichtlinien gemacht, nur der Haken dabei war, daß mir mein Praktikumsbetreuer nach der Vorstellung meines ersten Softwareverteilungsprinzip mitgeteilt hat, daß wir noch mindestens 2 Jahre lang kein Active Directory im Betrieb haben werden. Das hat dann wohl meine ganzen Planungen über den Haufen geworfen. Und Programme von anderen Herstellern sind bei den wirtschaftlichen Verhältnissen im Moment leider auch nicht sehr beliebt, auch wenn sie nichtmal so arg teuer wären. Ich werde es dann Morgen mal mit VBScript versuchen. 2 Fragen dazu: sleep(500) sind des millisekunden? sendkeys("j") kann ich da auch unicode- bzw ascii-zeichen reinschreiben für return zum beispiel? und wie siehts mit längeren ausdrücken aus (zum beispiel ein pfad)? einfach die keys aneinandergereiht? in JScript sollte es doch wohl dann auch die ähnliche syntax haben, oder? Weil im Betrieb gibt es glaub ich mehr Java-Programmierer als welche für Visual Basic. Und nochwas, was mir gerade eingefallen ist, was interessant wäre: Kann ich die Einträge, die unter der Systemsteuerung in Software eingetragen sind auch irgendwie mit windows-eigenen Befehlen starten? Da ich manche Programme nicht über MSI-Dateien installieren kann (die Hersteller stellen keine zu Verfügung und selbst erstellen schlägt bei diesen Programmen fehl), wäre das interessant, um dann an die Deinstallation ranzukommen. Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 11. September 2003 Melden Teilen Geschrieben 11. September 2003 Hi, also ich habe mit dem vbscript Teil gerade mein Office deinstalliert... Zu Deinen Fragen: 1) Es sind Milisekunden 2) die sendkeys Methode kann auch längere Texte senden, bzw. Du kannst auch mehrere sendkeys hintereinander schreiben. Für Parameter schau mal unter http://home.wtal.de/aw/texte/windows/script/WSHExtend.htm sonst sprengt es die Message. Es gehen prinzipiell alle Tasten inkl. CTRL und ALT. Ich benutze eigentlich nur vbscript, weil es ähnlich zu vba ist und man so nicht zwei scriptsprachen im Kopf haben muß, in javascript wird es aber ähnlich gehen. Bis denn Torsten Zitieren Link zu diesem Kommentar
Netranger 10 Geschrieben 11. September 2003 Autor Melden Teilen Geschrieben 11. September 2003 Also, des mit dem VBScript hat fast das gewünschte Ergebnis gebracht. Nur damit hat sich jetzt auch wieder ein neues Problem aufgetan. In meiner Verwirklichung der Softwareverteilung verwende ich fast ausschließlich Batch-Dateien. Das Script in diesen Dateien aufzurufen ist ja kein Problem. Das Problem liegt ehr darin, daß die Batch-Datei nicht pausiert, solange die Deinstallation läuft, die durch das Script gestartet wurde. Die Folge ist, daß meine Batch-Datei dann schon das nächste Programm deinstallieren will, noch bevor die vorhergehende Deinstallation beendet wurde. Dadurch wird dann auch der 2. Scriptaufruf zu früh aufgerufen, in dem dann der Tastendruck für die Bestätigung ausgeführt wird, wenn das Dialogfeld zum bestätigen noch gar nicht erschienen ist. Gibt es da eine Möglichkeit, die Batch-Datei solange pausieren zu lassen? Und natürlich bin ich über Antworten immernoch sehr erfreut, um unter Systemsteuerung\Software an die Deinstallationsprgramme ranzukommen. Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 11. September 2003 Melden Teilen Geschrieben 11. September 2003 Hi, ´(fast) alles ist möglich, man erweitere einfach ein bisschen Deine Batchdatei.... mit start /w name_des_skriptes Dabei wird gewartet, bis das andere Skript abgearbeitet wird. Wenn Du eh rumbatchst, dann schau Dir mal die NT Befehle genauer an, es gibt sehr mächtige dabei, z.b. for kann in Dateien suchen... oder noch ein wenig vbscript, wo Du erst in der Registry nach Bestimmten Einträge suchst und dann (de)installierst. Also, noch viel Spaß beim Skripten Achso, Deinstallationsprg unter Systemsteurung... Die Einträge, wie die PRG zu deinstallieren sind, findest Du in Deinem Computer... Häh? (war gemein, geb ich ja zu) In der Registry steht zu der Software, die in der Systemsteuerung unter Software erscheint, welcher Befehl inkl. Parameter für die Deinstallation nötig ist. HKEY_LOKAL_Maschine\software\microsoft\windows\currentversion\installer\userdata\SID\products\installpropertis da Dein Eintrag uninstallstring anschauen. die SID sind entsprechende der Benutzer evtl. verschieden, ist eine Zeichenfolge mit S-und dann Zahlen Gruß Torsten Zitieren Link zu diesem Kommentar
Roi Danton 10 Geschrieben 11. September 2003 Melden Teilen Geschrieben 11. September 2003 Original geschrieben von torstenbeck Hi, @Roi Danton es gibt immer mal wieder Gründe es nicht mit Grouppolicy zu tun (RIS ist für Rechner Installationen mit und ohne weiterer Software, Policys sind gut für Nachinstallationen und Softwareverteilung). 1) z.B. läßt sich eine zeitlich gesteuerte Softwareverteilung mit Ghost Enterprise edition realisieren, mit exe files, msi, files and so on.. Damit läßt sich die Netzwerklast tagsüber reduzieren und die Nerven und Anwender schonen. 2) Policys können nicht efectiv meines Wissens die Last verteilen, wenn sich 20 Rechner gerade einschalten, und Du neue Software installierst, dann halt bei gerade 20 Rechnern... Und die Anwender warten. 3) unattend / RIS Installationen ohne Image, sauber aufgesetzt. uso. Gruß Torsten Ich denke mal das ist alles nur eine Frage der Organisation. Das die Installation mit RIS sehr einfachgehalten ist, heist nicht, das man es nicht erweitern kann. Wenn Du den gleichen Eifer in RIS stecken würdest, hättest Du wahrscheinlich schon längst eine schicke kleine Sofwareverteilung die all Deinen Anvorderungen entsprcht. Einschließlich der Zeitgesteuerten Verteilung. Überleg mal. Mit Dos oder VBS kannst Du nichts Verteilen. Du schreibst dann Skripte die das für Dich tun. Mach das selbe mit RIS (RIS kann schon Softwareverteilen) Nur noch ein bisschen drumherum und fertig. Nur weil in einem Prospekt stand das geht nicht ??? Gruß, Roi Danton Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 11. September 2003 Melden Teilen Geschrieben 11. September 2003 Hallo, @Roi Danton: Völlig richtig, ich habe auch schon mit RIS Installationen inkl. Softwareverteilung durchgeführt. Aber nur in einer W2k Domäne. In einer NT4 Domäne kannst Du z.B. noch kein RIS Implementieren. Bei netranger ist kein Active Directory die nächsten zwei Jahre vorhanden, also is nich. Ich kennen auch noch Netzwerke, wo es erst nächstes Jahr Active Directory gibt. Hätte ich vielleicht noch etwas ausführlicher erläutern sollen. Was mich aber interessiert: Wie hast Du es denn gemacht, verwendest Du RIS und Grouppolicys um zeitgesteuert zu arbeiten, wenn ja, sei so net und schmeiß mal bitte ein paar Anhaltspunkte rüber.... Mercy Gruß Torsten Zitieren Link zu diesem Kommentar
Roi Danton 10 Geschrieben 11. September 2003 Melden Teilen Geschrieben 11. September 2003 Original geschrieben von torstenbeck Hallo, Was mich aber interessiert: Wie hast Du es denn gemacht, verwendest Du RIS und Grouppolicys um zeitgesteuert zu arbeiten, wenn ja, sei so net und schmeiß mal bitte ein paar Anhaltspunkte rüber.... Mercy Gruß Torsten Gemacht habe ich es noch nicht ;) Aber ich stelle es mir nicht sehr kompliziert vor. Du könntest ein Skript schreiben, welches einen Client in eine bestimmt OU verschiebt. Das Zeitgesteuert laufen lassen und gut ist. Andere Methode, da die Rechner ja nur nach einem Reboot oder zwangsaktualisierung der Gruppenrichtlinie anfangen zu installieren, kannst Du alle PC in eine OU verschieben und dann zeitgesteuert einen shutdown einleiten. Oder erst nur 10 Rechner in eine OU und dann rebooten. Sollte möglich sein! Gruß, Roi Danton Zitieren Link zu diesem Kommentar
torstenbeck 10 Geschrieben 11. September 2003 Melden Teilen Geschrieben 11. September 2003 Hi, Ideen muß man haben. Greif ich bei Gelegenheit mal auf Okay, ich setz am liebsten setze ich Ghost Enterprise Edition ein. Da kann ich zeitgesteuert Rechner neu installieren, Imagen, Software, Patches, Servicepacks installieren, Rechner einschalten und hochfahren und runterfahren und so on. Deswegen brauch ich maximal noch Skripts zum installieren. Oder unattend installationen und dann per skript die Software drauf. Aber Deine Variante hat aauch einen gewissen Charme, ging dann mit onboard Mittel. Werde ich mal prüfen... Schreib Doch mal, welche Mittel Du / Ihr einsetzt Gruß Torsten 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.