vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Prozess-Ausführung mit Argument - Fehler unter Vista: Ungültige Win32-Anwendung 
Autor: Steinheimer
Datum: 27.11.07 16:31

Hallo zusammen,

im Moment arbeite ich an einer kleinen Anwendung, welches für eine erfolgreiche Ausführung unter Windows eventuell ein Update benötigt. Falls ein entsprechendes Update benötigt wird, soll dieses installiert werden. Dabei werden zwei Argumente übergeben - "/quiet" und "/norestart" - welche jeweils das Erscheinen des Installations-Fensters sowie einen eventuell benötigten Neustart vermeiden.

Als Beispiel hier der Code, welcher unter Windows XP mit einem Windows XP-Update, welches als .EXE-Datei vorliegt, funktioniert:

 
Imports System.Diagnostics
 
Module Module1
 
    Sub Main()
 
        Dim output As String
 
        Dim process As New Process()
 
        process.StartInfo.FileName = "Update-Windows-XP.exe"
        process.StartInfo.Arguments = "/quiet /norestart"
        process.StartInfo.UseShellExecute = False
        process.StartInfo.RedirectStandardOutput = True
        process.StartInfo.CreateNoWindow = False
 
        Try
 
            process.Start()
 
            output = process.StandardOutput.ReadToEnd
 
            process.WaitForExit()
 
            process.Close()
 
            Console.WriteLine(output)
 
        Catch ex As Exception
 
            Console.WriteLine(ex)
 
        End Try
 
        Console.ReadLine()
 
    End Sub
 
End Module
Dieser Code sieht unter Windows Vista nicht anders aus. Das Einzige, was sich geändert hat, ist die Datei-Endung des Updates. In Windows Vista liegen Updates nämlich nicht mehr als .EXE-Dateien, sondern als .MSU-Dateien (Microsoft Update) vor.

Der Code hierfür:

 
Imports System.Diagnostics
 
Module Module1
 
    Sub Main()
 
        Dim output As String
 
        Dim process As New Process()
 
        process.StartInfo.FileName = "Update-Windows-Vista.msu"
        process.StartInfo.Arguments = "/quiet /norestart"
        process.StartInfo.UseShellExecute = False
        process.StartInfo.RedirectStandardOutput = True
        process.StartInfo.CreateNoWindow = False
 
        Try
 
            process.Start()
 
            output = process.StandardOutput.ReadToEnd
 
            process.WaitForExit()
 
            process.Close()
 
            Console.WriteLine(output)
 
        Catch ex As Exception
 
            Console.WriteLine(ex)
 
        End Try
 
        Console.ReadLine()
 
    End Sub
 
End Module
Das Problem bei der Sache: Beim Ausführen dieses Codes unter Vista tritt aus einem mir nicht ersichtlichen Grund eine Ausnahme auf, welche mir folgende Fehler-Meldung liefert:

[u]Die angegebene ausführbare Datei ist keine gültige Win32-Anwendung.

Meine Frage dazu: Hat irgend jemand eine Ahnung, wo der Fehler liegt?

Vielen dank im Voraus und viele Grüße,
Thomas
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Prozess-Ausführung mit Argument - Fehler unter Vista: Ungült...2.169Steinheimer27.11.07 16:31
Re: Prozess-Ausführung mit Argument - Fehler unter Vista: Un...1.390DJ BlueSky 200227.11.07 21:50
Re: Prozess-Ausführung mit Argument - Fehler unter Vista: Un...1.368Steinheimer28.11.07 09:16

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel