bill_mustermann 1 Geschrieben 7. Dezember 2016 Autor Melden Teilen Geschrieben 7. Dezember 2016 (bearbeitet) Hi, ich machs nun per Btach Datei und Login Script. Es gäbe zwar noch den Weg das MSI mit einem SelfSigned Cert zu versehen und das Cert per GPO zu verteilen, aber irgendwo hörts ja auch auf ;) Jetzt fehlt mir eigentlich nur noch die Abfrage ob 32 oder 64 Bit OS. Das hier funktioniert leider nicht: if exist "%PROGRAMFILES(X86)%" ( echo 64Bit "\\XXXXXX\Fileserver\IT\SOFTWARE\MICROSOFT\OFFICE\Skype for Business\Teams_windows_x64.exe" ) else ( echo 32Bit "\\XXXXXX\Fileserver\IT\SOFTWARE\MICROSOFT\OFFICE\Skype for Business\Teams_windows.exe" ) pause das scheint garnicht ausgeführt zu werden da ich weder 32 oder 64 bit angezeigt bekomme. Jemand ne idee wie ich das abfragen könnte? Nur für Win10! gruesse Vergesst es :) ich frage es so ab: IF %processor_architecture% == AMD64 gruesse bearbeitet 7. Dezember 2016 von bill_mustermann Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 7. Dezember 2016 Melden Teilen Geschrieben 7. Dezember 2016 Und täglich grüßt das Murmeltier. :) Wenn sonst nichts weiter im Batch ist, wird sie täglich ausgeführt. ;) Zitieren Link zu diesem Kommentar
NilsK 2.957 Geschrieben 7. Dezember 2016 Melden Teilen Geschrieben 7. Dezember 2016 (bearbeitet) gelöscht, Irrtum bearbeitet 7. Dezember 2016 von NilsK Zitieren Link zu diesem Kommentar
bill_mustermann 1 Geschrieben 7. Dezember 2016 Autor Melden Teilen Geschrieben 7. Dezember 2016 Hallo, täglich auch nur dann wenn sich jeden Tag jemand einloggt :) Ich habe aber eine Prüfung drin ob das schon installiert wurfde. Näheres dazu gleich. Derezeit habe ich das Problem das die Batch datei aus dem Login Script nicht ausgeführt wird. @Echo off Color 1E Cls Echo. Echo Guten Tag %Username% Echo Ihre Domäne heisst %UserDomain% Net Use Z: \\XXXXXXX\Homes\%Username% Net Use y: \\XXXXXXX\Fileserver Net Use x: \\XXXXXXX\IT Userlogin.bat "\\XXXXXXXX\Fileserver\XX IT\XX SOFTWARE\MICROSOFT\OFFICE\Skype for Business\teams-installer.bat" Wenn ich sie auf dem Laptop aufrufe über Win+R und dem Pfad wird sie ausgeführt und alles funktioniert. Hier mal mein Batch Script (geklaut aus dem Internet https://community.spiceworks.com/scripts/show/72-deploy-software-at-login): REM By adding one command to your user's login file and running the below batch file, you can install many applications when users login. REM The proper command is: REM start /d\\Server\Path filename.bat REM MS reference to using Start command is found at: REM http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/start.mspx?mfr=true REM The sample below was used to install .NET 3.5 as a prerequisite to a major software roll out. REM Prevent each command from being echoed to the screen - very annoying otherwise @echo off REM Check to see if batch file was previously run by looking for dropped file (dropped at end of batch) REM This sample uses deploy.txt for the dropped file If exist c:\users\%USERNAME%\deploy-teams.txt goto done REM Clear the DOS Box and display detailed message for End User REM Explain what is being installed and why REM Give expected duration of install REM Include any instructions that the end user needs to know about. CLS echo. echo. echo. echo. echo. echo. echo Installing Required components .....Microsoft TEAMS echo. echo You can continue working during the installation (it takes about 1 Minute). echo. echo Do NOT close this box until prompted, otherwise the installation will run again the next time that you login to the network. echo. echo If you have any questions, please contact xxxxx or xxxxxx or better xxxxxx :) echo. echo. REM Place your install command here IF %processor_architecture% == AMD64 ( echo 64Bit "\\xxxxxx\Fileserver\xx IT\xx SOFTWARE\MICROSOFT\OFFICE\Skype for Business\Teams_windows_x64.exe" ) else ( echo 32Bit "\\xxxxxx\Fileserver\xx IT\xx SOFTWARE\MICROSOFT\OFFICE\Skype for Business\Teams_windows.exe" ) REM Drop a file in the root directory so that the batch file does not run repeatedly at login REM Include install results in dropped file echo %COMPUTERNAME% >>c:\users\%USERNAME%\deploy-teams.txt date /T >>c:\users\%USERNAME%\deploy-teams.txt time /T >>c:\users\%USERNAME%\deploy-teams.txt echo TEAMS installed >>c:\users\%USERNAME%\deploy-teams.txt REM Copy file to network share to track install by machine REM Remember to rename file to Computer Name on copy - easy identification REM Change drive:\path to the network share REM copy c:\deploy.txt drive:\path\%COMPUTERNAME%.txt /y REM Inform User that install is complete - Give follow-up instructions if needed cls echo The installation is now complete. You may close this window at any time. echo. echo. echo. REM clean up and exit goto exit echo done :done REM nothing to do echo exit :exit Comments Jemand ne Idee wieso das jetzt nicht automatisch beim login ausgeführt wird? gruesse Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 7. Dezember 2016 Melden Teilen Geschrieben 7. Dezember 2016 Du möchtest im "Login-Script" des Anwenders Software installieren? Da kann man nur hoffen, dass es nicht geht. Dazu müssten die User lokale Admins und UAC ausgeschaltet sein. Das möchtest Du so nicht machen. Zitieren Link zu diesem Kommentar
bill_mustermann 1 Geschrieben 7. Dezember 2016 Autor Melden Teilen Geschrieben 7. Dezember 2016 (bearbeitet) Hi, Das Thema haben wir schon durch. Es geht hier nur um die Installation von TEAMS. Das kann sich jeder User ohne UAC und ohne lokale Admin Rechte installieren. Warum aber funktioniert es wenn ich die bat Datei auf dem laptop per Win+R aufrufe und per logon script nicht wie oben gepostet? Muss ich die Datei erst auf den laptop kopieren und von dort ausführen lassen anstatt von einem Netzlaufwerk? auch dieser Aufruf fruchtet nicht: start /d"\\xxxxxx\Fileserver\xx IT\xx SOFTWARE\MICROSOFT\OFFICE\Skype for Business" teams-installer.bat gruesse bearbeitet 7. Dezember 2016 von bill_mustermann Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 7. Dezember 2016 Melden Teilen Geschrieben 7. Dezember 2016 Schreibe doch einfach ein paar mal "Pause" an passende Stellen und prüfe die FMs. Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 7. Dezember 2016 Melden Teilen Geschrieben 7. Dezember 2016 Zeile für Zeile in eine Logdatei schreiben. Was findet sich im Eventlog? Wird dieses Script denn ausgeführt? @Echo off Color 1E Cls Echo. Echo Guten Tag %Username% Echo Ihre Domäne heisst %UserDomain% Net Use Z: \\XXXXXXX\Homes\%Username% Net Use y: \\XXXXXXX\Fileserver Net Use x: \\XXXXXXX\IT Userlogin.bat "\\XXXXXXXX\Fileserver\XX IT\XX SOFTWARE\MICROSOFT\OFFICE\Skype for Business\teams-installer.bat" Und was macht Userlogin.bat? Zitieren Link zu diesem Kommentar
bill_mustermann 1 Geschrieben 7. Dezember 2016 Autor Melden Teilen Geschrieben 7. Dezember 2016 (bearbeitet) Hi, das habe ich gemacht (pause setzen) beim manuellen testen :) Da es manuell funktioniert macht es keinen Sinn weil.........wird die bat aufgerufen öffnen sich sofort ein cmd Fenster mit Text (Installing Required components .....Microsoft TEAMS). Aber wie gesagt, manuell funktioniert es wunderbar. Edit: Das hier habe ich vor Sunny Post geschrieben. Hat sich überschnitten :) @Sunny: Ja, das Script wird ausgeführt. Es schreibt mir auf den Fileserver in Dateien welcher User sich wann und wo eingeloggt hat. (Datenschutz sei jetzt bitte nicht das Thema ;) ) Woher ich weiß das es ausgeführt wird? Ich sehe meinen Login in der besagten Datei auf dem Fileserver :) gruesse bearbeitet 7. Dezember 2016 von bill_mustermann Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 7. Dezember 2016 Melden Teilen Geschrieben 7. Dezember 2016 Bitte zitiere die Fragen auf die Du antwortest, ich kann mit deiner letzten Antwort nichts anfangen. Niemand von den hier Helfenden sitzt bei dir am Schreibtisch und sieht somit auch nicht, WAS GENAU Du wann und warum machst. Beschreib es so, dass wir es verstehen, Danke. Zitieren Link zu diesem Kommentar
bill_mustermann 1 Geschrieben 8. Dezember 2016 Autor Melden Teilen Geschrieben 8. Dezember 2016 Hallo, Bitte zitiere die Fragen auf die Du antwortest, ich kann mit deiner letzten Antwort nichts anfangen. man vergebe mir :) Nun zur Sache. Es funktioniert nun. Man kann sicherlich die erste Abfrage ob TEAMS schon installiert ist mit in die bat Datei packen, aber ich empfinde das als Kosmetik. Der Grund für die erste Abfrage ist: - User haben teilweise schon TEAMS installiert und daher das Text File nicht in ihrem Userverzeichniss auf welches der zweite Check prüft. Somit würde es zwei mal installiert werden. logon.cmd @Echo off Color 1E Cls Echo. Net Use Z: \\xxxxxx\Homes\%Username% Net Use y: \\xxxxxx\Fileserver Net Use x: \\xxxxxx\IT IF NOT EXIST "C:\Users\%Username%\AppData\Local\Microsoft\Teams\current\Teams.exe" ( echo TEAMS ist noch nicht installiert....es wird jetzt installiert. start /d\\xxxxxx\Fileserver\"xx IT"\"xx SOFTWARE"\MICROSOFT\OFFICE\"Skype for Business" teams-installer.bat ) Userlogin.bat teams-installer.bat REM By adding one command to your user's login file and running the below batch file, you can install many applications when users login. REM The proper command is: REM start /d\\Server\Path filename.bat REM MS reference to using Start command is found at: REM http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/start.mspx?mfr=true REM The sample below was used to install .NET 3.5 as a prerequisite to a major software roll out. REM Prevent each command from being echoed to the screen - very annoying otherwise @echo off REM Check to see if batch file was previously run by looking for dropped file (dropped at end of batch) REM This sample uses deploy.txt for the dropped file If exist c:\users\%USERNAME%\deploy-teams.txt goto done REM Clear the DOS Box and display detailed message for End User REM Explain what is being installed and why REM Give expected duration of install REM Include any instructions that the end user needs to know about. CLS echo. echo. echo. echo. echo. echo. echo Installing Required components .....Microsoft TEAMS echo. echo You can continue working during the installation (it takes about 1 Minute). echo. echo Do NOT close this box until prompted, otherwise the installation will run again the next time that you login to the network. echo. echo If you have any questions, please contact xxxxx or xxxxxx or better xxxxxx :) echo. echo. REM Place your install command here IF %processor_architecture% == AMD64 ( echo 64Bit "\\xxxxxx\Fileserver\xx IT\xx SOFTWARE\MICROSOFT\OFFICE\Skype for Business\Teams_windows_x64.exe" ) else ( echo 32Bit "\\xxxxxx\Fileserver\xx IT\xx SOFTWARE\MICROSOFT\OFFICE\Skype for Business\Teams_windows.exe" ) REM Drop a file in the root directory so that the batch file does not run repeatedly at login REM Include install results in dropped file echo %COMPUTERNAME% >>c:\users\%USERNAME%\deploy-teams.txt date /T >>c:\users\%USERNAME%\deploy-teams.txt time /T >>c:\users\%USERNAME%\deploy-teams.txt echo TEAMS installed >>c:\users\%USERNAME%\deploy-teams.txt REM Copy file to network share to track install by machine REM Remember to rename file to Computer Name on copy - easy identification REM Change drive:\path to the network share REM copy c:\deploy.txt drive:\path\%COMPUTERNAME%.txt /y REM Inform User that install is complete - Give follow-up instructions if needed cls echo The installation is now complete. You may close this window at any time. echo. echo. echo. REM clean up and exit goto exit echo done :done REM nothing to do echo exit :exit Comments Für alle die es vielleicht auh mal brauchen werden :) Vielen Dank für die Unterstützung :) gruesse Zitieren Link zu diesem Kommentar
NilsK 2.957 Geschrieben 8. Dezember 2016 Melden Teilen Geschrieben 8. Dezember 2016 Moin, zwei Tipps dazu: Den lokalen Pfad in deinem Skript kannst du noch weiter abstrahieren mit %LOCALAPPDATA% - das ist genau dafür da. Logonskripte sollten nichts direkt aus dem Netzwerk ausführen. Es ist immer stabiler, die Daten zuerst in einen lokalen Pfad zu kopieren und von da zu starten. Hinterher ggf. löschem´n. Gruß, Nils Zitieren Link zu diesem Kommentar
bill_mustermann 1 Geschrieben 8. Dezember 2016 Autor Melden Teilen Geschrieben 8. Dezember 2016 Hi, vielen Dank :) Werde ich direkt umsetzen. gruesse Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 8. Dezember 2016 Melden Teilen Geschrieben 8. Dezember 2016 Gut, Danke für die Rückmeldung. ;) Zu dem Hinweis von Nils noch ein weiterer Hinweis: Start > Ausführen > cmd [ENTER] set [ENTER]. Hier siehst Du die System- und Benutzervariablen, die es auf dem System gibt. Benutze die Variablen, damit bleibst Du IMMER wesentlich flexibler in Skripten. Zitieren Link zu diesem Kommentar
bill_mustermann 1 Geschrieben 8. Dezember 2016 Autor Melden Teilen Geschrieben 8. Dezember 2016 Hi, auch dir vielen Dank für den Hinweis. Werde ich mir direkt anschauen. Da ich früher mal Programmierer war bin ich auch eher ein Liebhaber von Variablen :) gruesse 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.