Führen Sie den Taskplaner aus, ohne eine neue JMP-Instanz zu öffnenIch versuche, ein JSL-Skript auszuführen, das alle 3 Stunden verschiedene Datentabellen aktualisiert, indem ich den Windows-Taskplaner verwende.Leider wird jedes Mal, wenn die JSL ausgeführt wird, eine neue Instanz von JMP geöffnet, anstatt die bereits geöffnete zu verwenden.Gibt es einen Trick, um diese Aufgabenautomatisierung abzuschließen, ohne dass jedes Mal, wenn der Aufgabenplaner die JSL-Datei aufruft, eine neue Instanz von JMP geöffnet wird?
SkriptingBetreff: Taskplaner ausführen, ohne eine neue JMP-Instanz zu öffnenVielleicht möchten Sie sich die Funktion Schedule() in JMP ansehen.Es wird in einer bestimmten JMP-Sitzung ausgeführt und führt den Code in derselben Sitzung erneut aus.
Betreff: Taskplaner ausführen, ohne eine neue JMP-Instanz zu öffnenEin paar Optionen.
1. Warum lassen Sie es nicht einfach eine neue Instanz öffnen und schließen es dann einfach am Ende des JMP-Skripts?
2. Setzen Sie `//!` an den Anfang des Skripts und öffnen Sie es einfach.Es sollte in Ihrer derzeit registrierten Version von jmp geöffnet und automatisch ausgeführt werden.
3. Speichern Sie die .jsl-Datei als .jrp und es sollte dasselbe tun wie 2.
Ich persönlich bevorzuge nicht interaktive Dinge wie diese, um 1 zu tun, weil ich dann bestätigen kann, dass JMP in Powershell ordnungsgemäß geschlossen wurde, damit ich bessere Konsolenfehlermeldungen ausgeben kann.
Betreff: Taskplaner ausführen, ohne eine neue JMP-Instanz zu öffnenIch werde einen Blick auf Jim werfen und sehen, ob das besser funktioniert als der Taskplaner.
Betreff: Taskplaner ausführen, ohne eine neue JMP-Instanz zu öffnenIch möchte, dass der Prozess in der vorhandenen Instanz ausgeführt wird, damit ich kürzlich gesammelte Daten regelmäßig darstellen/auswerten kann, ohne JMP jedes Mal öffnen zu müssen.
Ich hatte Option 2 bereits verwendet, aber sie und Option 3 öffnen immer eine neue Instanz von JMP, anstatt innerhalb der bereits geöffneten Instanz auszuführen.Wenn Sie das folgende Skript mehrmals ausführen, wird es innerhalb der aktuellen Instanz von JMP ausgeführt oder wird bei jeder Ausführung auch eine neue Instanz geöffnet? Neugierig, wenn Sie ein anderes Verhalten als ich bekommen.
//!
Protokoll löschen();
Drucken ("Hallo Welt");
Betreff: Taskplaner ausführen, ohne neue JMP-Instanz zu öffnenOh, das liegt wahrscheinlich daran, dass Ihre Registrierung durcheinander gebracht wurde. Denn bei mir läuft es super.Tut es das auch, wenn Sie eine JMP-Datentabelle öffnen?Unter Windows?
Antwort von hier gestohlen
Ich glaube, Sie können dies mit dem Folgenden korrigieren.
- Beenden Sie alle laufenden JMP-Sitzungen
- Führen Sie die JMP-Version aus, die Sie als Standard-JMP-Version verwenden möchten (falls auf Ihrem Computer mehrere JMP-Versionen installiert sind).
- Gehen Sie zu Datei-->Einstellungen-->Windows-spezifisch und klicken Sie dann auf die Schaltfläche Zuordnungen zurücksetzen am unteren Rand des Dialogfensters
Das sollte die Windows-Registrierung reparieren, um die aktuelle JMP-Sitzung JMP-Dateien zuzuordnen.
Versuchen Sie nun, auf Ihre Dateien zu doppelklicken und zu sehen, ob es sich wie erwartet verhält.
Lassen Sie uns wissen, ob es dadurch behoben wird.
-Jeff
Betreff: Taskplaner ausführen, ohne neue JMP-Instanz zu öffnenJeff,
Danke für die Vorschläge.Leider haben die empfohlenen Schritte das Problem nicht behoben.Interessanterweise hat ein anderer Computer von mir, auf dem JMP und JMP Pro ausgeführt werden, nicht das gleiche Problem.Auf dem Computer, auf dem das Problem jetzt auftritt (ich habe kürzlich von JMP 15 auf 16 aktualisiert), habe ich die von Ihnen angegebenen Schritte ausprobiert und habe immer noch das gleiche Problem, bei dem bei jedem Doppelklick auf eine JSL-Datei mehrere Instanzen geöffnet werden.Ich bin so weit gegangen, alle JMP-Versionen zu deinstallieren, den Computer neu zu starten und nur JMP 16 neu zu installieren, habe aber weiterhin bei jedem Start einer JSL-Datei eine neue Instanz von JMP geöffnet (wobei das oben gezeigte Hello World-Skript sowie ein anderes ausgeführt werden Skript, das eine Datentabelle öffnet).Irgendwelche weiteren Ideen, wie man das lösen kann?