ben1310
Goto Top

Skript über Aufgabenplanung bleibt hängen

Hallo zusammen. Kurze Zusammenfassung: Lokal habe ich eine vbs mit folgedem Inhalt liegen:

const xlsFileName = "D:\Excel\Etikett\Etikett.xlsm"
set fso = createobject("Scripting.FileSystemObject")
set a = createobject("excel.application")
a.visible = true
set b = a.workbooks.open(xlsFileName)
b.Application.Run "Ausfuehren"
b.close true
a.quit
WScript.Quit()


besagtes Etikett.xlsm befindet sich im gleichen lokalen Ordner.

Die xlsm greift unter anderem auf eine csv-Datei im Netzwerk (per UNC-Pfad) zu und erstellt eine weitere .xlsx-Datei.

Die Aufgabenplanung wird unabhängig von der Benutzeranmeldung mit Domänenadmin ausgeführt.

Starte ich die vbs manuell wird alles korrekt abgearbeitet. Lasse ich die vbs über die Aufgabenplanung ausführen bleibt die Aufgabe im Status "wird ausgeführt" hängen, und im Taskmanager bleibt auch der Prozess wscript.exe hängen.

Content-ID: 553738

Url: https://administrator.de/contentid/553738

Ausgedruckt am: 22.11.2024 um 04:11 Uhr

143127
143127 03.03.2020 aktualisiert um 13:43:55 Uhr
Goto Top
Office Automation hat ein paar Besonderheiten bei der Ausführung über den Taskplaner, liest du hier
Per Batch in Aufgabeplanung XLS in CSV umwandeln
(Besonders die zwei Ordner die angelegt werden müssen)

Außerdem fehlen dem Skript noch ein paar Anweisungen für die unbeaufsichtigte Ausführung wie z.B.
a.DisplayAlerts = False am Anfang und
a.DisplayAlerts = True am Ende.

von der Benutzeranmeldung mit Domänenadmin ausgeführt.
Ein "Domänenadmin-Account" sollte niemals nie für einen Task im Aufgabenplaner hinterlegt sein, dazu sind die Accounts viel zu sensibel für die Domain. Für solche Aufgaben sollte man extra extra Service-Accounts verwenden!
Bitboy
Bitboy 03.03.2020 um 13:13:25 Uhr
Goto Top
Moin,

Excel COM Object und Task Scheduler ist so ne Sache hatte ich auch Probleme mit. Bei mir hatte damals geholfen die beiden Ordner zu erstellen die da erwähnt sind: https://superuser.com/questions/579900/why-cant-excel-open-a-file-when-r ...

Grüße
ben1310
ben1310 03.03.2020 um 13:49:39 Uhr
Goto Top
Zitat von @143127:

von der Benutzeranmeldung mit Domänenadmin ausgeführt.
Ein "Domänenadmin-Account" sollte niemals nie für einen Task im Aufgabenplaner hinterlegt sein, dazu sind die Accounts viel zu sensibel für die Domain. Für solche Aufgaben sollte man extra extra Service-Accounts verwenden!


Desen bin ich mir durchaus bewusst face-smile Ich hab das auch explizit nur erwähnt weil ich ein Rechteproblem ausschließen wollte. Natürlich wird es dann wieder auf einen Service-User umgestellt.
ben1310
ben1310 03.03.2020 um 14:10:04 Uhr
Goto Top
Zitat von @143127:

Office Automation hat ein paar Besonderheiten bei der Ausführung über den Taskplaner, liest du hier
Per Batch in Aufgabeplanung XLS in CSV umwandeln
(Besonders die zwei Ordner die angelegt werden müssen)

Die beiden Ordner sidn bereits vorhanden, und bei Komponentendienste gibt es weder einen Eintrag zu Excel, noch zu Visual Studio


Außerdem fehlen dem Skript noch ein paar Anweisungen für die unbeaufsichtigte Ausführung wie z.B.
a.DisplayAlerts = False am Anfang und
a.DisplayAlerts = True am Ende.


Die beiden Anweisungen werden im Script der xlsm abgearbeitet