Erster Programmstart einer VB.NET Anwendung nach Windows Start dauert zu lange

  • WPF

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von dive26.

    Erster Programmstart einer VB.NET Anwendung nach Windows Start dauert zu lange

    Liebe Programmiererkollegen,

    .NET Anwendung (VB.NET)

    ich habe das Problem, dass unter Windows 10 der erstmalige Start meiner .NET Anwendung ewig lange dauert (bis zu 25 Sekunden). Egal ob ich nach dem Windows-Start 1 Minute warte oder gar nicht. Der erste Start dauert immer ewig. Jedoch nicht jede .NET Anwendung. Ich habe eine zweite .NET Anwendung im Autostart liegen die sofort gestartet wird.

    Unterschied: bei der langsam startenden Anwendung ist das Anwendungsframework nicht aktiviert (siehe Screenshots).

    Hier ist dieses Phänomen ebenfalls beschrieben, leider aber ohne brauchbare Antwort: entwickler-forum.de/showthread…ersten-Start-sehr-langsam

    Gibt es

    a) eine Möglichkeit den ersten Programmstart zu beschleunigen

    b) eine Möglichkeit beim ersten Programmstart einen Splash-Screen zu zeigen. Der erste Einsprungspunkt im Modul "Main" wird leider auch erst nach 20 Sekunden angesprungen. Also muss der Splashscreen früher ansetzen. Aber wohin mit dem Code und vor allem welchen Code?

    Vielen Dank für Eure mithilfe
    Bilder
    • DauertLange.jpg

      165,64 kB, 799×613, 156 mal angesehen
    • StartetSofort.jpg

      219,86 kB, 810×620, 188 mal angesehen
    Liebe Grüße
    Roland Berghöfer

    Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at
    Ich hau jetz einfach ma das hier rein
    stackoverflow.com/questions/14…-in-a-vb-net-winforms-app

    Du sagst der Zweite start geht schneller? du meinst wohl der 2. start direkt nach dem ersten? Liegt wohl noch alles im RAM und desswegen startet es schneller? starte ma dein Programm (also das langsame) dann mache was anderes und nach xMinuten (so 20 Minuten) mal nochmal (da sollte der RAM dann überschrieben worden sein). Wenn es dann immernoch zu lange dauert hast du irgendeine abfrage da eingebaut die zuviel CPU frist.
    Mach mal dein Taskmanager auf und beobachte wann deine Programm gestartet ist (Form Anzeigen und starten ist ein unterschied!). Da siehst du dann auch ob dein programm viel CPU first die ersten 25Sekunden.

    Ich bin mir nicht sicher aber ich glaube die MAIN Methode wird erst aufgerufen wenn die Form geladen ist oder? Hast du in der ersten Form noch Methoden wie FormLoaded, FormLoading, oder viele viele Bilder in WinForms?
    Baust du eine Netzwerkverbindung beim ersten start auf und der Proxy wird nicht gefunden (bekanntes .net problem) und er sucht ersmal dein Proxy?
    zeig mal deine Methoden in der ersten Form
    @nafets
    Die Anwendung als kompilierte Datei (.exe) hat 10MB . Ist also schon sehr umfangreich (80.500 Codezeilen).
    Die schnell startende Anwendung in der Autostart hat gerade mal 250 kb (574 Codezeilen).
    Aber warum startet die Software unter Windows 7 normal schnell und nur unter 8 und 10 nicht?

    @MVN050
    Auch wenn ich dazwischen etwas anderes mache startet die Software beim zweiten Start schnell. Es betrifft auch nur Windows 8 und 10. Bei Windows 7 überhaupt nicht. Da startet die Software sofort. Und der Windows 10 Rechner ist ein Core i5 mit 8 GB RAM und SSD. Da kann das reine Compilieren des JIT nicht so ausschlaggebend sein.

    Die Main-Methode wird als erstes aufgerufen - da wird zuvor keine Form geöffnet. Eine msgbox im Einsprungspunkt dauert ebenso so lange. Das bedeutet, dass .NET vorher (also vor dem Start der Programmausführung) irgendwas macht. Aber warum nur auf Windows 10 und nur beim ersten Programmstart?

    LÖSUNG
    Habe den "schuldigen" gefunden: Windows Defender.
    Ist dieser deaktiviert, dann funktionierts einwandfrei!
    Liebe Grüße
    Roland Berghöfer

    Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „dive26“ ()