Probleme mit Process.Start

26/01/2008 - 21:48 von Peter Schirmer | Report spam
Hallo,

ich möchte gerne den Microsoft Baseline Security Analyzer aus meinem
Programm aufrufen.

Ich habe auch schon mit Process.start(pfad, "/xmlout >c:\ausgabe.xml")
probiert. Allerdings liefert mir der MBSA keine Ausgabe. Ich habe viel
herumprobiert, auch die Kommandos manuell über Start => Ausführen
eingegeben. Das gleiche Ergebnis; dabei ist der Parameter /xmlout so
dokumentiert.

Aus Verzweiflung habe ich dann eine .bat-Datei geschrieben und habe
Schritt für Schritt folgende Befehle eingeben und zwar so, dass sich die
.bat-Datei in das Verzeichnis des MBSA bewegt und dort das gewünschte
aufruft.

Hier die Datei:
@echo off
cls
c:
cd\
pushd "C:\Programme\Microsoft Baseline Security Analyzer 2"
mbsacli /xmlout >C:\test_ausgabe.xml

Und siehe da, es funktioniert. Offensichtlich làsst sich das Programm
"mbsacli.exe" nur aufrufen, wenn es im gleichen Verzeichnis liegt.

Meine Frage ist nun, wie kriege ich es hin, dass es mit VB.NET auch so
funktioniert? Ich habe die mbsacli.exe schon in mein Debug- und
Releaseverzeichnis kopiert. Nichts. Dann meine Programm.exe nach
C:\Programme\Microsoft Baseline Security Analyzer. Auch nichts.

Irgendwie wird die mbsacli.exe vom "falschen Ort" her aufgerufen.

Kann mir jemand dabei helfen?

Peter
 

Lesen sie die antworten

#1 Thorsten Doerfler
26/01/2008 - 23:02 | Warnen spam
Peter Schirmer schrieb:
ich möchte gerne den Microsoft Baseline Security Analyzer aus meinem
Programm aufrufen.

Ich habe auch schon mit Process.start(pfad, "/xmlout >c:\ausgabe.xml")
probiert. Allerdings liefert mir der MBSA keine Ausgabe.



Die Umleitung der Ausgabe in eine Datei ist ein Feature des
Befehlsinterpreters. Die Umgebungsvariable 'COMSPEC' enthàlt den Pfad-
und Dateinamen des aktuellen Befehlsinterpreters. Unter NT basierten
Systemen 'cmd.exe':

Process.Start(Environment.GetEnvironmentVariable("COMSPEC"), _
"/c " & pfad & " /xmlout >c:\ausgabe.xml")

Thorsten Dörfler
Microsoft MVP Visual Basic

vb-hellfire visual basic faq | vb-hellfire - einfach anders
http://vb-faq.de/ | http://www.vb-hellfire.de/

Ähnliche fragen