Benutzer mit den meisten Antworten
Softwareverteilung: Skript Fehler: EnterRsRuningState failed to run script 0x80009106

Frage
-
Hallo,
ich würde gerne ein Skript einsetzen, mit dem Dateien ausgetauscht werden. Das Skript funktioniert auch, wenn ich es als admin lokal ausführe. (Quelltext unten)
Ich habe auf dem SCCM-Server nun ein Paket erstellt (ohne den Haken bei "enthält Quelldateien"), ein Programm angelegt, das auf die Batch-Datei zeigt (Installation unabhängig von Benutzeranmeldung mit Adminrechten, versteckt) und den Verteilungspunkt eingestellt, und das Programm dann einer Sammlung angekündigt. Entsprechende Clients bekommen auch die Ankündigung , dass ein Programm ausgeführt werden soll, aber es passiert dann nichts. (beim Paketstatus sehe ich auch bei Zustand "Installation steht an" und nicht "Installiert", wie es bei anderen Paketen der Fall ist...)
Im execmgr.log steht u.a Folgendes:
<![LOG[Execution Request for package 20000024 program austausch state change from Running to NotifyExecution]LOG]!><time="11:03:10.114+-60" date="12-14-2011" component="execmgr" context="" type="1" thread="3920" file="executionrequest.cpp:488">
<![LOG[GetFileVersionInfoSize failed for file \austausch.bat, error 1812]LOG]!><time="11:03:10.161+-60" date="12-14-2011" component="execmgr" context="" type="2" thread="3920" file="executioncontext.cpp:119">
<![LOG[Executing program as a script]LOG]!><time="11:03:10.161+-60" date="12-14-2011" component="execmgr" context="" type="1" thread="3920" file="executionengine.cpp:103">
<![LOG[Invalid executable file austausch.bat]LOG]!><time="11:03:10.177+-60" date="12-14-2011" component="execmgr" context="" type="3" thread="3920" file="scriptexecution.cpp:511">
<![LOG[Raising event:
[SMS_CodePage(850), SMS_LocaleID(1031)]
instance of SoftDistProgramBadEnvironmentEvent
{
AdvertisementId = "2002002C";
ClientID = "GUID:DDF764E3-0A8D-4CDD-A271-D0039D984BFB";
CommandLine = "austausch.bat";
DateTime = "20111214100310.177000+000";
DriveLetter = "";
MachineName = "A2345";
PackageName = "20000024";
ProcessID = 580;
ProgramName = "austausch";
SiteCode = "200";
ThreadID = 3920;
Win32ErrorCode = 2147942402;
WorkingDirectory = "";
};
]LOG]!><time="11:03:10.193+-60" date="12-14-2011" component="execmgr" context="" type="1" thread="3920" file="event.cpp:525">
<![LOG[Raised Program Bad Environment Event for Ad:2002002C, Package:20000024, Program: austausch]LOG]!><time="11:03:10.193+-60" date="12-14-2011" component="execmgr" context="" type="1" thread="3920" file="executioncontext.cpp:739">
<![LOG[EnterRsRuningState failed to run script austausch.bat 0x80009106]LOG]!><time="11:03:10.193+-60" date="12-14-2011" component="execmgr" context="" type="2" thread="3920" file="executionrequest.cpp:3318">
<![LOG[Fatal error 0x80009106 enountered for program austausch. This program will not retry.]LOG]!><time="11:03:10.193+-60" date="12-14-2011" component="execmgr" context="" type="1" thread="3920" file="executionrequest.cpp:3477">
<![LOG[Execution Manager timer has been fired.]LOG]!><time="11:08:27.963+-60" date="12-14-2011" component="execmgr" context="" type="1" thread="1220" file="execreqmgr.cpp:5188">
Hier der Inhalt des Skriptes:
@echo off
set Quelle="\\srvsccm\deployment\pakete\abc\austauschdaten\*.*"
set Ziel="%PROGRAMFILES%\abc\xml\"
set Pfad="%windir%\System32\"IF EXIST "%PROGRAMFILES%\abc\xml" GOTO VORHANDEN
GOTO NICHT_VORHANDEN
:VORHANDEN
%Pfad%xcopy.exe %Quelle% %Ziel% /E /Y
EXIT
:NICHT_VORHANDEN
echo breche Installation abEXIT
- Bearbeitet olaf81 Mittwoch, 14. Dezember 2011 10:23
Antworten
-
Ich habe auf dem SCCM-Server nun ein Paket erstellt (ohne den Haken bei "enthält Quelldateien"), ein Programm angelegt, das auf die Batch-Datei zeigt (Installation unabhängig von Benutzeranmeldung mit Adminrechten, versteckt) und den Verteilungspunkt eingestellt,
Das widerspricht sich und macht keinen Sinn (s.u.).
Entweder enthält das Package Quelldateien, dann muss es auch auf DPs verteilt werden.
Oder es enthält keine Quelldateien, dann braucht (muss) es nicht auf DPs verteilt werden; in dem Fall muss sich aber das Program, welches in der Command Line angegeben worden ist im Pfad (%path%) auf dem Client befinden, oder es muss ein (UNC-)Pfad bei "Start in" angeben werden.
Der Errorcode 2147942402 bedeutet "Das System kann die angegebene Datei nicht finden.". Dies ist logisch, da er die Batch-Datei im Package sucht, diese dort aber nicht vorhanden ist.
Also entweder die Batch ins Package, oder bei "Start in" einen UNC-Pfad zur Batch angeben (dann das Package auf keine DPs verteilen).
Torsten Meringer | http://www.mssccmfaq.de- Als Antwort markiert olaf81 Mittwoch, 14. Dezember 2011 11:12
Alle Antworten
-
Ich habe auf dem SCCM-Server nun ein Paket erstellt (ohne den Haken bei "enthält Quelldateien"), ein Programm angelegt, das auf die Batch-Datei zeigt (Installation unabhängig von Benutzeranmeldung mit Adminrechten, versteckt) und den Verteilungspunkt eingestellt,
Das widerspricht sich und macht keinen Sinn (s.u.).
Entweder enthält das Package Quelldateien, dann muss es auch auf DPs verteilt werden.
Oder es enthält keine Quelldateien, dann braucht (muss) es nicht auf DPs verteilt werden; in dem Fall muss sich aber das Program, welches in der Command Line angegeben worden ist im Pfad (%path%) auf dem Client befinden, oder es muss ein (UNC-)Pfad bei "Start in" angeben werden.
Der Errorcode 2147942402 bedeutet "Das System kann die angegebene Datei nicht finden.". Dies ist logisch, da er die Batch-Datei im Package sucht, diese dort aber nicht vorhanden ist.
Also entweder die Batch ins Package, oder bei "Start in" einen UNC-Pfad zur Batch angeben (dann das Package auf keine DPs verteilen).
Torsten Meringer | http://www.mssccmfaq.de- Als Antwort markiert olaf81 Mittwoch, 14. Dezember 2011 11:12