Re: Entfernten Prozess starten

From: Reiner Ziegler (Reiner.Ziegler_at_mail.regio.net)
Date: 08/11/04


Date: Wed, 11 Aug 2004 23:50:50 +0200

Hallo Roland,

ohne Einsicht in den Sourcecode der EXE ist da relativ wenig
zu machen. Dazu sind zu viele Komponenten beteiligt.
Was ich dir empfehlen koennte:
  1.) Starte den jeweiligen Task
  2.) Warte mit WaitForSingleObject() auf das entspr.
        Process-/Thread-Handle.
  3.) Lies mit GetProcessExitCode() den jeweiligen
       Exit-Code aus.
       Vorrausetzung ist natuerlich, das die einzelnen Tasks
       einen solchen Exit-Code bei einer Fehlerbedingung
       auch setzen.

Gruss

Reiner
Reiner.Ziegler@mail.regio.net

"Roland Stirnimann" <roland.stirnimann@gmlu.ch> schrieb im Newsbeitrag
news:OMoCsAxfEHA.3320@TK2MSFTNGP11.phx.gbl...
> Hallo
>
> Ich habe folgende vbs Datei:
> -------------------------------------------------------------------------
> Dim objWMIService, Computer, ProcessName, Fehler, intProcessID
> Computer = "DB001"
> ProcessName =
> "E:\SQL-Programs\StartInventarDTSPackage\StartInventarDTSPackage.exe"
> Set objWMIService = GetObject("winmgmts:" & _
> "{impersonationLevel=impersonate}!\\" & _
> Computer & "\root\cimv2:Win32_Process")
> Fehler = objWMIService.Create(ProcessName, Null, Null, intProcessID)
> If Fehler = 0 Then
> WScript.Echo "Die Anwendung wurde erfolgreich ausgefuehrt."
> Else
> WScript.Echo "ERROR: Beim Ausfuehren der Anwendung ist leider ein Fehler
> aufgetreten."
> End If
> -------------------------------------------------------------------------
>
> Das Starten der entfernten exe Datei funktioniert soweit. Die exe (VB.Net)
> wiederum startet mir einen SQL Server DTS Task (SQL Server ist auch
> installiert). Leider wird aber der Task nicht vollständig ausgeführt. Ich
> vermute, dass es irgendwas mit Berechtigungen zu tun hat. Mein DTS Task
ist
> wie folgt aufgebaut:
>
> 1. Export von Daten aus SQL Server in ein Excelfile
> 2. Bei Erfolg Mail mit Exceldatei an bestimmte Benutzer.
> 3. Batch starten, der bestehende Exceldatei loescht und von einer Vorlgage
> eine leere kopiert. Dies ist noetig, da ich nicht mit "delete from table"
> aus Excel Daten loeschen kann.
>
> Schritt 1. funktioniert beim Remoteaufruf immer. Jedoch das Mailversenden
> und das Ausführen der Batchdatei (Schritte 2 und 3) klappt nicht. Woran
> könnte das liegen?
> Komischerweise funktioniert die exe Datei beim lokalen Starten über eine
> Terminal Session einwandfrei. Starte ich den DTS Task aus dem SQL Server
> Enterprise Manager funktioniert auch alles bestens. Nur der Remoteaufruf
hat
> seine Tücken.
> Hat jemand einen Tipp?
>
> Vielen Dank!
> Roland
>
>