none
Anwendung/Script periodisch ausführen (alle x Tage/Wochen)

    Question

  • Hallo,

    habe ein Script um die SIM-Informationen (IMEI-Nummer) bei mobilen Geräte auszulesen.

    Nun möchte ich dieses Script gerne als Anwendung bereitstellen (das funktioniert bereits) und anschließend alle X-Tage/Wochen automatisch erneut ausführen. 

    Leider finde ich keine Möglichkeit, das in einem gewissen Intervall anzustoßen.

    Da ich ja eine Erkennungsmethode angeben kann/muss wird das Script nur 1x erfolgreich ausgeführt.Die Bereitstellung als Paket kann man periodisch ausführen aber das kann ich leider nicht verwenden


    Toni



    • Edited by tonibert Friday, May 17, 2019 9:12 AM
    Friday, May 17, 2019 8:44 AM

Answers

  • Applications sind "state based", d.h. wenn erkannt wird, dass die Application bereits vorhanden ist (detection method), dann wird diese nicht noch einmal installiert. Somit für zyklische Ausführung nicht geeignet.
    Wieso kannst Du keine Packages/Programs verwenden?
    Wo stehen denn diese Daten? Kannst Du die nicht auf per Hardware-Inventur einsammeln?

    Torsten Meringer | https://blog.meringer.de/


    Friday, May 17, 2019 9:49 AM
    Answerer
  • Hallo Torsten,

    danke für deine Mühe!!

    Das ist sehr freundlich.

    Ich habe es jetzt so gelöst, dass ich eine Anwendung habe inkl. Erkennungsmethode.

    Diese Erkennungsmethode erstellt mir einen Ordner im CCMCache.

    Zusätzlich habe ich ein Paket.Das lasse ich zyklisch laufen und lösche mir den Ordner im CCMCache. Damit wird auch die Anwendung wieder gezogen...nicht schön..aber es funktioniert!

    Nochmals danke für deine Hilfe!

    Sobald ich herausfinde woran es gelegen hat meld ich mich wieder!


    Toni

    • Marked as answer by tonibert Wednesday, May 22, 2019 6:35 AM
    Wednesday, May 22, 2019 6:11 AM

All replies

  • Schau dir mal die Aufgabenplanung an. Dort findest du hunderte von Aufgaben, auch von Microsoft.
    Dafür gibt es auch API's zur Verwaltung.
    Friday, May 17, 2019 9:21 AM
  • Applications sind "state based", d.h. wenn erkannt wird, dass die Application bereits vorhanden ist (detection method), dann wird diese nicht noch einmal installiert. Somit für zyklische Ausführung nicht geeignet.
    Wieso kannst Du keine Packages/Programs verwenden?
    Wo stehen denn diese Daten? Kannst Du die nicht auf per Hardware-Inventur einsammeln?

    Torsten Meringer | https://blog.meringer.de/


    Friday, May 17, 2019 9:49 AM
    Answerer
  • Vielen Dank für eure Infos!

    @bfuerchau-ich schau mal!

    @Torsten -  danke für die ausführliche Info.

    Wieso kannst Du keine Packages/Programs verwenden?

    Hier wird es kurios aber vielleicht kennst du auch hier die Antwort. 

    Ich frage in einem PS-Skript verschiedene Varialen ab. u.a.

    $get_iccid=cmd /c "netsh mbn sh read i=*" 

    Wenn ich mein Skript als Anwendung bereitstelle funktioniert alles fehlerfrei.

    Wenn ich das gleiche Skript als Paket zur Verfügung stelle werden alle Variablen gefüllt, nur meine $get_icccid bekommt einen Fehler

    Der folgende Befehl wurde nicht gefunden: mbn sh read i=*

    Es ist das identische Skript aber funktioniert nur als Anwendung?

    Wo stehen denn diese Daten? Kannst Du die nicht auf per Hardware-Inventur einsammeln?

    Die Möglichkeit hatte ich schon herausgefunden und wollen wir auch prüfen.

    Aber mich interessiert eher warum ein Skript als Anwendung geht, als Paket aber nicht.


    Toni

    Monday, May 20, 2019 5:59 AM
  • Führe doch mal folgendes PowerShell-Skript im System-Kontext (psexec -i -s powershell_ise) händisch zum Test aus - also ganz ohne ConfigMgr:

    $get_iccid = netsh mbn sh read i=*
    $get_iccid

    Klappt das dann?


    Torsten Meringer | https://blog.meringer.de/

    Monday, May 20, 2019 11:02 AM
    Answerer
  • Ja, das funktioniert

    PsExec.exe -s  -i powershell.exe -file d:\test.ps1

    Der Inahlt von test.ps1 lautet

    $get_iccid = netsh mbn sh read i=*
    $get_iccid|Out-File d:\ausgabe.txt -Append


    Toni

    Monday, May 20, 2019 11:12 AM
  • Ich habe es eben auch nochmal probiert.

    Es bringt wieder einen Fehler.

    In der Befehlszeile steht der folgende Aufruf

    powershell.exe -executionpolicy bypass -file "Test.ps1"

    Der folgende Befehl wurde nicht gefunden: mbn sh read i=*

    Toni

    Monday, May 20, 2019 11:33 AM
  • Muss irgendwie an PowerShell liegen, aber nicht ConfigMgr. Ich habe aber spontan keine Idee, wieso das so ist.
    Der zweite netsh-Befehl klappt ja auch. Hab diverses Escaping probiert (wegen dem = oder *) und Invoke-Command, Invoke-Expression, etc. …


    Torsten Meringer | https://blog.meringer.de/

    Tuesday, May 21, 2019 11:58 AM
    Answerer
  • Hallo Torsten,

    danke für deine Mühe!!

    Das ist sehr freundlich.

    Ich habe es jetzt so gelöst, dass ich eine Anwendung habe inkl. Erkennungsmethode.

    Diese Erkennungsmethode erstellt mir einen Ordner im CCMCache.

    Zusätzlich habe ich ein Paket.Das lasse ich zyklisch laufen und lösche mir den Ordner im CCMCache. Damit wird auch die Anwendung wieder gezogen...nicht schön..aber es funktioniert!

    Nochmals danke für deine Hilfe!

    Sobald ich herausfinde woran es gelegen hat meld ich mich wieder!


    Toni

    • Marked as answer by tonibert Wednesday, May 22, 2019 6:35 AM
    Wednesday, May 22, 2019 6:11 AM