Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
EXE: Lange Startzeit
reloop
myCSharp.de - Member

Avatar #avatar-3256.jpg


Dabei seit:
Beiträge: 139

Themenstarter:

EXE: Lange Startzeit

beantworten | zitieren | melden

Hallo liebe Community,

meine Anwendung (WPF-EXE) benötigt wenn ich Sie aus der Entwicklungsumgebung heraus starte, ca. 2 Sekunden bis sie sich öffnet. Das ist soweit noch vertretbar.

Nun habe ich Sie bei meinem Kunden installiert (.NET4 etc. läuft alles auf dem Client!) und die Anwendung brauch 7 Sekunden bis Sie sich öffnet. Der Cursor wird auch nicht zur Sanduhr o.ä. .

Auch bei der Bedienung hängt die Anwendung. Maximieren der Maske ruckelt und ist ebenfalls langwierig.

Die Anwendung selbst lädt beim Start nur eine 50 Zeilen lange Textdatei, beinhaltet eine Navigation und ein DataGrid in der Mitte - das wars!

Ich habe im Web & hier im Forum leider nichts zu diesem Thema gefunden, deshalb mein Post.

Mit freundlichen Grüßen,
reloop
private Nachricht | Beiträge des Benutzers
Sarc
myCSharp.de - Member



Dabei seit:
Beiträge: 417

beantworten | zitieren | melden

Hallo,

die Probembeschreibung ist natürlich sehr ungenau. Wie alt ist denn
der Rechner des Kunden? Evtl. zu wenig Leistung oder eine sehr alte Grafikkarte?
Kommt auch drauf an, welche (komplexen) Grafikoperationen deine WPF-Anwendung noch ausführt.

Gruß
Daniel
private Nachricht | Beiträge des Benutzers
talla
myCSharp.de - Experte

Avatar #avatar-3214.jpg


Dabei seit:
Beiträge: 6.862
Herkunft: Esslingen

beantworten | zitieren | melden

Hallo,

brauch die Anwendung immer 7 Sekunden zum Starten oder nur beim ersten mal? Falls nur beim ersten mal dannw ird sie dort erst kompiliert und eventuell das Framework geladen falls noch keine andere .net Anwendung auf dem Rechner lief.

Ansonsten noch ergänzend zu dem was sarc gesagt hat:
Wenn WPF die Arbeit nicht auf die Hardware auslagern kann wird alles in Software gerendert - das ist natürlich nicht sonderlich schnell. Kann man über das Rendering Tier prüfen.

Und ansonsten kann man durch falschen Einsatz von Styles, Templates, Bindings und Co. auch die einfachste Anwendung in die Knie zwingen.
Baka wa shinanakya naoranai.

Mein XING Profil.
private Nachricht | Beiträge des Benutzers
reloop
myCSharp.de - Member

Avatar #avatar-3256.jpg


Dabei seit:
Beiträge: 139

Themenstarter:

beantworten | zitieren | melden

Also, bei mir:

Intel Core 2 Duo 2.8 GHZ
3 GB Ram
und aktueller G-Force Garfikkarte, braucht die Exe aus dem Release Ordner 3-4 Sekunden bis sie sich öffnet.

Und das immer, nicht nur einmalig.

Die genauen Eckdaten des Kundensystems kann ich dir im Moment leider nicht nennen, da ich dort gegenwärtig niemanden telefonisch erreiche.

Selbst wenn ich das Binding entferne und die Maske sich ohne Daten öffnet, bleibt meine Startzeit bei 3-4 Sekunden.

Gruss,
reloop
private Nachricht | Beiträge des Benutzers
Equilibrium
myCSharp.de - Member



Dabei seit:
Beiträge: 180

beantworten | zitieren | melden

Eine Option kann auch ein sehr intensiver Virenscanner sein der eine sehr tiefe heuristik verwendet um die exe zu prüfen, was die lange ladezeit auch erklären könnte. prinzipiell ist es jedoch ein blick in die glaskugel :-)
private Nachricht | Beiträge des Benutzers
reloop
myCSharp.de - Member

Avatar #avatar-3256.jpg


Dabei seit:
Beiträge: 139

Themenstarter:

beantworten | zitieren | melden

Ich habe etwas interessantes festgestellt:

Setze ich den Aufruf des Controls auf Kommentar, dass mein Grid beinhaltet, öffnet sich das Projekt binnen 1-2 Sekunden.

Klicke ich nun auf den Menüpunkt der das Control mit dem Grid lädt, dauert der Vorgang nochmal 1-2 Sekunden.

Klicke ich auf einen anderen Menüpunkt und wechsel danach wird zum Control mit dem Grid zurück, öffnet es sich direkt ohne Ladezeit.

Kurz gefasst:

Das erste Laden zur Laufzeit, von meinem GridControl, dauert immer 1-2 Sekunden.

(OHNE Binding!)

Ich hoffe, ich habe es nicht zu umständlich beschrieben.
private Nachricht | Beiträge des Benutzers
talla
myCSharp.de - Experte

Avatar #avatar-3214.jpg


Dabei seit:
Beiträge: 6.862
Herkunft: Esslingen

beantworten | zitieren | melden

Wie sieht denn der Markup vom Grid aus?
Baka wa shinanakya naoranai.

Mein XING Profil.
private Nachricht | Beiträge des Benutzers
reloop
myCSharp.de - Member

Avatar #avatar-3256.jpg


Dabei seit:
Beiträge: 139

Themenstarter:

beantworten | zitieren | melden

<my:GridControl Name="grdRGUe">
                                        <my:GridControl.View>
                                            <my:TableView AutoWidth="True" SelectionChanged="TableViewSelectionChanged" MultiSelectMode="Row"  AllowEditing="False"/>
                                        </my:GridControl.View>
                                        <my:GridControl.Columns>
                                            <my:GridColumn x:Name="columnDatum" Header="Datum" FieldName="AnzeigeDispDat"
GroupInterval="DateRange"/>
                                            <my:GridColumn x:Name="columnVon" Header="Ersteller" FieldName="Ersteller" />
                                        </my:GridControl.Columns>
                                    </my:GridControl>

Ich benutzer das WPF-DataGrid von DevExp.

Beste grüße,
und danke für die Hilfe.
private Nachricht | Beiträge des Benutzers
MagicAndre1981
myCSharp.de - Member

Avatar #avatar-2623.jpg


Dabei seit:
Beiträge: 906
Herkunft: Nordhausen

beantworten | zitieren | melden

bitte nutze ngen um die Exe im Maschinencode zu übersetzen. Das beschleunigt den Start. Dann sollte der Dienst "WPF Schriftcache" (Windows Presentation Foundation-Schriftartcache 3.0.0.0) schon gestartet sein.
private Nachricht | Beiträge des Benutzers