Forum: Programmieren allgemein
by Harry Stahl,
15. Apr 2014
Nein, daran liegt es wohl nicht, wenn man den WorkAround von Lemmy verwendet, funktioniert das Demo hier trotzdem nicht.
Das Demo funktioniert auch unter XE6 übrigens nicht!! :(
Na ja, ich will ja hier nicht meckern, bin in erster Linie jetzt mal froh um die vielen Verbesserungen und Fixes in XE6 (die Fixliste ist wirklich lang).
Erledigt ist aber leider längst noch nicht alles... Aber...
Forum: Programmieren allgemein
by Harry Stahl,
14. Apr 2014
OK, bei genauem Nachdenken stimme ich Dir zu. Was ich meine, ist, dass diese Variablen auf ein und die gleiche Instanz verweisen und wenn ich ÜBER die unterschiedlichen Variablen in unterschiedlichen Threads auf ein- und dieselben Daten der einen Instanz zugreife, dann kann das problematisch sein.
Forum: Programmieren allgemein
by Harry Stahl,
14. Apr 2014
Um zu erkennen, warum die Bilder nicht geladen werden (bei mir werden alle 10 Bilder angezeigt), ersetz doch mal die Execute-Methode hiermit (damit werden die Exceptions aus dem Thread angezeigt):
Meldung: MainFrm.pas(576): E2250 Es gibt keine überladene Version von 'Synchronize', die man mit diesen Argumenten aufrufen kann.
Was muss ich ändern, damit es compiliert?
Forum: Programmieren allgemein
by Harry Stahl,
14. Apr 2014
Ja, hätte ich natürlich etwas genauer beschreiben müssen.
ABER Deine Aussage "Die Variablen sind aber unabhängig" stimmt das wirklich?
Im Oncreate der Form findet ja folgendes statt:
FImages := TImageDataSource.Create;
// Create thread with image loader
FSplashImageLoader := TSplashImagesLoader.Create;
FSplashImageLoader.Form := Self;
Forum: Programmieren allgemein
by Harry Stahl,
14. Apr 2014
3 x Zustimmung! Und wie gesagt, unter XE3 funktionierte das Demo noch so, wie es soll. Ich habe auch schwer die Thread-Verwaltung in Verdacht. Hoffentlich ist das in XE6 gefixt, sonst wird es echt schwer...
Forum: Programmieren allgemein
by Harry Stahl,
14. Apr 2014
OK, habe mal Dein geändertes Projekt geladen. Das geht zwar nun ohne OLEInitialize, allerdings werden immer 3-4 Bilder nicht geladen (hast Du bei Dir auch wirklich mal alle 10 Bilder durchgeklickt, ob alle da sind und nicht einige nur schwarz sind)?
Auch wenn ich den Timer z.B. von 1 auf 100, 500, 700 erhöhe, immer fehlen Bilder.
Erst wenn ich das so ergänze, werden alle Bilder geladen.
...
Forum: Programmieren allgemein
by Harry Stahl,
12. Apr 2014
Wobei ich gerade feststelle, dass nicht alle Bilder eingelesen werden, einige dazwischen sind schwarz, mitunter in zufälliger Reihenfolge.
Vorab sei noch mal bemerkt, dass in Delphi XE3 (nach meiner Meinung bislang noch die stabilste FMX-Fassung) noch alles richtig funktionierte, sowohl unter 32 als auch unter 64 bit.
Ja, so wäre es wohl richtig. Dennoch werden nicht alle Bilder...
Forum: Programmieren allgemein
by Harry Stahl,
12. Apr 2014
Wobei ich ja geschrieben habe, dass es nicht funktioniert, wenn man das wie hier von Dir vorgeschlagen macht (was ich ja normalerweise auch so machen würde). Bei mir klappt es nur, wenn ich OleInitialize direkt am Anfang der Prozedur aufrufe.