AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte AnimatePNG
Thema durchsuchen
Ansicht
Themen-Optionen

AnimatePNG

Ein Thema von EWeiss · begonnen am 20. Mär 2017 · letzter Beitrag vom 8. Jun 2018
Antwort Antwort
Seite 1 von 2  1 2      
EWeiss
(Gast)

n/a Beiträge
 
#1

AW: AnimatePNG

  Alt 22. Mär 2017, 22:54
Letztes Update für Heute

•- Fehler mit dem Fenster Schatten behoben.
•- Bild wird nicht mehr Skaliert wenn kleiner als der Grafik Container.

Source include.. bye
do what you want what your not want to do

gruss

Geändert von EWeiss (22. Mär 2017 um 22:57 Uhr)
  Mit Zitat antworten Zitat
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#2

AW: AnimatePNG

  Alt 23. Mär 2017, 12:43
Funktioniert bei mir auch nicht, gleich nach dem Programmstart gibt es die Fehlermeldung "...hat ein Problem festgestellt und muß beendet werden".

Dabei habe ich die Verzeichnisstruktur komplett übernommen und lcd.ttf explizit bei Windows registriert (bzw. registrieren lassen).
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: AnimatePNG

  Alt 23. Mär 2017, 16:07
Funktioniert bei mir auch nicht, gleich nach dem Programmstart gibt es die Fehlermeldung "...hat ein Problem festgestellt und muß beendet werden".

Dabei habe ich die Verzeichnisstruktur komplett übernommen und lcd.ttf explizit bei Windows registriert (bzw. registrieren lassen).
Danke nur mit funktioniert nicht kann ich leider nichts anfangen trotzdem Danke.
W10?, Aero aus oder nicht vorhanden.

Aber bei mir geht es selbst mit deaktivierten Aero.
Die Anwendung wird dann nur Schwarz angezeigt.
W10. Nun kein gewähr. (Frage mich nur warum ich den QuellText hochgeladen habe wenn ihn keiner nutzt)

Siehe Pic.

gruss

Geändert von EWeiss (31. Mär 2017 um 18:33 Uhr)
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
982 Beiträge
 
Delphi 6 Professional
 
#4

AW: AnimatePNG

  Alt 23. Mär 2017, 18:19
Hmm..

Habe mir deinen Src mal vorgenommen..

Da ich nur Delphi 6 habe, musste ich die ganzen Regionen entfernen, deine File.. Sachen strkt auf WideString und W-Funktionen umstellen und siehe da, läst sich unter D6 kompilieren, starten und debuggen..

Erster Fehler:

Delphi-Quellcode:
procedure TAnimateGif.LoadGif;
var
  FrameDelay: TFrameDelay;
  DC: HDC;
  GuidFDT: TGUID;
begin

  gp.FrameCount := 0;

  if GetGifFrameCount(gp.GifImage[SelectedIndex], gp.FrameCount) = S_OK then
  begin
    If (gp.FrameCount - 1) = 0 then
    begin
      SetLength(FrameDelay, 0); // <- Hier das Array löschen

      FrameDelay[0] := 0; // <- Aber hier auf das erste (nicht vorhanden) Element zugreifen!
      FrameLoopCount := 0;
      LoopCount := FrameLoopCount + 1;

      CurGifPlayInfo.GifDelay := lFrameDelay[0]; // Und wo kommt das array nun schon wieder her (Ich weis GLOBAL)
      CurGifPlayInfo.GifFrame := 1;
      CurGifPlayInfo.GifFrames := gp.FrameCount;
      CurGifPlayInfo.GifLoop := LoopCount - 1;
      CurGifPlayInfo.GifLoops := FrameLoopCount;
      // Bild anzeigen
      DC := GetDC(GraphicContainer);
      DrawGifFrame(gp.GifImage[SelectedIndex], GuidFDT, ShowFrame, DC);
    end
    else
    begin
Wenn ich nun das korrigiert habe (setlength auf 1) kann ich das ganze starten.

Ich kann dann noch sehen, dass das Formular erstellt wird und das erste GIF dort angezeigt wird.
Danach erhalte ich 4 Exceptions und die App schmiert ab .

Da ich auf alle deine Funktionen Haltepunkte gesetzt hatte, außer auf Result := SKAERO_DefWindowProc(WinHandle, Msg, wP, lP) da dies ja andauernd auch durch steppen immer wieder aufgerufen wird, konnte ich erkennen, dass die Exception aus deiner DLL kommen!
Alles andere läuft durch.

Zu meinem System:
Windows 8.1 Home.
Delphi 6 Prof

Da ja auch andere beim Starten direkt die Exceptions um die Ohren gehauen bekommen, gehe ich von einem Bug auf der anscheinend nur bei Dir nicht auftritt...
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: AnimatePNG

  Alt 23. Mär 2017, 18:34
Zitat:
Da ja auch andere beim Starten direkt die Exceptions um die Ohren gehauen bekommen, gehe ich von einem Bug auf der anscheinend nur bei Dir nicht auftritt...
Danke für den Test. Holger
Wieder mal eine seltsame Sache keine Problem hier sieht man an den Bildern.

Mich würde mal interessieren welche Gif Datei du verwendest.

EDIT:
Ich komme hier gar nicht rein!
If (gp.FrameCount - 1) = 0 then

Ich behaupte also das du ein Nicht animiertes GIF verwendest. (Das habe ich noch nicht probiert)
Das mal versucht ?


gruss

Geändert von EWeiss (23. Mär 2017 um 18:44 Uhr)
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
982 Beiträge
 
Delphi 6 Professional
 
#6

AW: AnimatePNG

  Alt 23. Mär 2017, 18:52
Hmm..

Wenn ich ein Animiertes GIF verwende, dann knallt es schon bei SKAERO_PaintDoubleBuffer(WinHandle, ps.HDC); in

Delphi-Quellcode:
    WM_PAINT:
      begin
        BeginPaint(WinHandle, ps);
        SKAERO_PaintDoubleBuffer(WinHandle, ps.HDC);
        EndPaint(WinHandle, ps);
        Result := 0;
        Exit;
      end;
(Fehlermeldung angehängt..)

Bei einem nicht anmierten Gif wird diese geladen und angezeigt, jedoch knallt es dann später mit einer vergleichbaren Fehlermeldung.

Diese Meldungen kann ich auch nicht durch try.. except abfangen, sollten somit aud deiner DLL kommen


Edit:
Auch mit deinem Testbild knallt es bei SKAERO_PaintDoubleBuffer..
Mit Delphi 6 und dem TGifImage läst sich das Bild jedoch problemlos anzeigen...
(Hab da nen selbstgebauten PictureViewer )
Miniaturansicht angehängter Grafiken
unbenannt.jpg  

Geändert von HolgerX (23. Mär 2017 um 18:56 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: AnimatePNG

  Alt 23. Mär 2017, 18:57
Seltsam aber ich kann es leider nicht nachvollziehen.
Danke.

Zitat:
Mit Delphi 6 und dem TGifImage läst sich das Bild jedoch problemlos anzeigen...
Glaube ich dir nur ich kann und möchte keine Komponente verwenden. (nonvcl)

gruss

Geändert von EWeiss (23. Mär 2017 um 19:00 Uhr)
  Mit Zitat antworten Zitat
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#8

AW: AnimatePNG

  Alt 23. Mär 2017, 19:35
Funktioniert bei mir auch nicht, gleich nach dem Programmstart gibt es die Fehlermeldung "...hat ein Problem festgestellt und muß beendet werden".

Dabei habe ich die Verzeichnisstruktur komplett übernommen und lcd.ttf explizit bei Windows registriert (bzw. registrieren lassen).
Danke nur mit funktioniert nicht kann ich leider nichts anfangen trotzdem Danke.
W10?, Aero aus oder nicht vorhanden.
XP. Ist das zuwenig?
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#9

AW: AnimatePNG

  Alt 23. Mär 2017, 19:44
Funktioniert bei mir auch nicht, gleich nach dem Programmstart gibt es die Fehlermeldung "...hat ein Problem festgestellt und muß beendet werden".

Dabei habe ich die Verzeichnisstruktur komplett übernommen und lcd.ttf explizit bei Windows registriert (bzw. registrieren lassen).
Danke nur mit funktioniert nicht kann ich leider nichts anfangen trotzdem Danke.
W10?, Aero aus oder nicht vorhanden.
XP. Ist das zuwenig?
Kann ich mal eben prüfen.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

AW: AnimatePNG

  Alt 23. Mär 2017, 20:00
Ich hatte jetzt auf Windows 7 Starter folgendes: Deine Anwendung gestartet. Archiv einfach entpackt, Imageverzeichnis leer. Dann deine Fehlermeldung, die ich aber nicht lesen konnte, weil die Absturzmeldung von Windows drüber lag. Alle Benachrichtigungen mit 'OK' Bestätigt und dein Programm war weg.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz