Hallo zusammen,
ich habe ein kleines Problem: Aber zuerst einige Eckdaten.
Derzeit programmiere ich eine CE Anwendung auf einem SYMBOL Scanner (MC7090). Zur Zeit arbeite ich an einer Ablösung für eine bereits bestehende Software. Da ich einen sogenannten SplashScreen nutzen möchte habe ich mir das Beispiel von Microsoft angesehen und entsprechend in meiner Anwendung eingebaut (SplashScreen als eigener Thread).
Hier der Event:
<pre>
private void frmMain_Load(object sender, EventArgs e)
{
Thread aSplashThread = new Thread(new ThreadStart(StartingSplash));
aSplashThread.Start();
Thread.Sleep(fSplashMinTimeToShow / 2);
while (fSplashForm.GetUptime() < fSplashMinTimeToShow)
{
InitSystem();
Thread.Sleep(fSplashUpdateInterval / 4);
}
StoppingSplash();
}
</pre>
Allerdings habe ich hier Probleme. Lasse ich den SplashScreen ohne InitSystem() laufen, geht es. LAsse ich den SplashScreen weg und starte nur die InitSystem() Routine, geht es auch. Aber beides zusammen geht nicht, oder nur in einem von 10 Fällen. Es erscheint auch keine Fehlermeldung (try catch ...). In der Routine InitSystem() lade ich alle Stammdaten über einen WebService. Zusätzlich nutze ich noch SYMBOL eigene Routine für ScanEngine usw. Zusätzlich habe ich noch 2 UserControls erstellt, die dem Benutzer den Batterie- und WLAN Status anzeigen.
Was ich auch probiere, ich bekomme es nicht hin, das der benutzer den SplashScreen sieht, und im Hintergrund die Stammdaten usw. gelesen und gesetzt werden. Vielleicht habet Ihr eine Idee oder sogar eine Möglichkeit, dieses Problem in den griff zu bekommen.
Gruß
Sascha:
confused:
ich habe ein kleines Problem: Aber zuerst einige Eckdaten.
Derzeit programmiere ich eine CE Anwendung auf einem SYMBOL Scanner (MC7090). Zur Zeit arbeite ich an einer Ablösung für eine bereits bestehende Software. Da ich einen sogenannten SplashScreen nutzen möchte habe ich mir das Beispiel von Microsoft angesehen und entsprechend in meiner Anwendung eingebaut (SplashScreen als eigener Thread).
Hier der Event:
<pre>
private void frmMain_Load(object sender, EventArgs e)
{
Thread aSplashThread = new Thread(new ThreadStart(StartingSplash));
aSplashThread.Start();
Thread.Sleep(fSplashMinTimeToShow / 2);
while (fSplashForm.GetUptime() < fSplashMinTimeToShow)
{
InitSystem();
Thread.Sleep(fSplashUpdateInterval / 4);
}
StoppingSplash();
}
</pre>
Allerdings habe ich hier Probleme. Lasse ich den SplashScreen ohne InitSystem() laufen, geht es. LAsse ich den SplashScreen weg und starte nur die InitSystem() Routine, geht es auch. Aber beides zusammen geht nicht, oder nur in einem von 10 Fällen. Es erscheint auch keine Fehlermeldung (try catch ...). In der Routine InitSystem() lade ich alle Stammdaten über einen WebService. Zusätzlich nutze ich noch SYMBOL eigene Routine für ScanEngine usw. Zusätzlich habe ich noch 2 UserControls erstellt, die dem Benutzer den Batterie- und WLAN Status anzeigen.
Was ich auch probiere, ich bekomme es nicht hin, das der benutzer den SplashScreen sieht, und im Hintergrund die Stammdaten usw. gelesen und gesetzt werden. Vielleicht habet Ihr eine Idee oder sogar eine Möglichkeit, dieses Problem in den griff zu bekommen.
Gruß
Sascha:
confused:
Comment