2017-03-29 5 views
0

Ich habe eine App in WPF erstellt, die nur App ist. Jetzt möchte ich diese App beim Windows Startup starten (nach Benutzeranmeldung). Ich habe auch ein Installationspaket mit Wix Toolset erstellt, das einen Registrierungsschlüssel zu Software \ Microsoft \ Windows \ CurrentVersion \ Run hinzufügt. Programm versucht tatsächlich zu laufen, gibt aber keinen Fehler. Ich konnte Fehler von Windows Event Viewer bekommen und ich kann nicht verstehen, wo dieser Fehler generiert wird.WPF-Anwendung Wird nicht beim Start gestartet, sondern manuell ausgeführt?

Stack Trace:

Application: icBlync.exe 
Framework Version: v4.0.30319 
Description: The process was terminated due to an unhandled exception. 
Exception Info: System.IO.DirectoryNotFoundException 
    at System.IO.__Error.WinIOError(Int32, System.String) 
    at System.IO.FileStream.Init(System.String, System.IO.FileMode, System.IO.FileAccess, Int32, Boolean, System.IO.FileShare, Int32, System.IO.FileOptions, SECURITY_ATTRIBUTES, System.String, Boolean, Boolean, Boolean) 
    at System.IO.FileStream..ctor(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare) 
    at System.Windows.Media.Imaging.BitmapDecoder.SetupDecoderFromUriOrStream(System.Uri, System.IO.Stream, System.Windows.Media.Imaging.BitmapCacheOption, System.Guid ByRef, Boolean ByRef, System.IO.Stream ByRef, System.IO.UnmanagedMemoryStream ByRef, Microsoft.Win32.SafeHandles.SafeFileHandle ByRef) 
    at System.Windows.Media.Imaging.BitmapDecoder.CreateFromUriOrStream(System.Uri, System.Uri, System.IO.Stream, System.Windows.Media.Imaging.BitmapCreateOptions, System.Windows.Media.Imaging.BitmapCacheOption, System.Net.Cache.RequestCachePolicy, Boolean) 
    at System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream(System.Uri, System.Uri, System.IO.Stream, System.Windows.Media.Imaging.BitmapCreateOptions, System.Windows.Media.Imaging.BitmapCacheOption, System.Net.Cache.RequestCachePolicy) 
    at System.Windows.Media.Imaging.BitmapFrame.Create(System.Uri, System.Net.Cache.RequestCachePolicy) 
    at System.Windows.Media.Imaging.BitmapFrame.Create(System.Uri) 
    at icBlync.Windows.SettingWindow..ctor() 
    at icBlync.App..ctor() 
    at icBlync.App.Main() 

Pls Hilfe.

+0

Nun, für mich ist es wie die app (icBlync.exe) sieht gestartet. Beim Versuch, auf eine Datei oder ein Verzeichnis zuzugreifen (Lesen/Schreiben), bricht es ab, weil das Verzeichnis noch nicht erstellt wurde. Haben Sie einen Code, der Dateisystemoperationen durchführt bzw. sind Sie sicher, dass Ihr Installationsprogramm alle erforderlichen Pfade erstellt? –

+2

Beachten Sie, dass Ihr Arbeitsverzeichnis möglicherweise nicht identisch ist. Wenn Sie relative Pfade verwenden, kann dies ein Problem sein. –

+0

App läuft perfekt, wenn ich es manuell ausführen. Dieser Fehler tritt beim automatischen Start auf. –

Antwort

0

Wenn App vom Start gestartet wird, ist das Arbeitsverzeichnis nicht das installierte Verzeichnis. Wenn die App also versucht, Icons zu laden, gibt es System.IO.DirectoryNotFoundException.

Ich habe gerade das Arbeitsverzeichnis auf das installierte Verzeichnis mit:

Environment.CurrentDirectory = System.IO.Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath); 
Verwandte Themen