Delphi-PRAXiS
Seite 2 von 7     12 34     Letzte » 

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Gute Neuigkeit! DEC 6.2 soeben released! (https://www.delphipraxis.net/208252-gute-neuigkeit-dec-6-2-soeben-released.html)

EdAdvokat 7. Jul 2021 11:08

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Nachfolgende Aktionen mit Delphi 10 Seatle Prof getestet:
1. Beim Kompilieren von Hash_FMX aus den Demos von 6.2 erhalte ich nachfolgenden Fehler:
The imported project file could not be loaded. Ein Name darf nicht mit dem Zeichen '<', hexadezimaler Wert 0x3C, beginnen. Zeile 7, Position 2. C:\Users\nowe4\Documents\delphiPrg\A_Crypto\a_DEC\ DEC62\Demos\Hash_FMX\Hash_FMX.deployproj
[Fataler Fehler] The imported project file could not be loaded. Ein Name darf nicht mit dem Zeichen '<', hexadezimaler Wert 0x3C, beginnen. Zeile 7, Position 2. C:\Users\nowe4\Documents\delphiPrg\A_Crypto\a_DEC\ DEC62\Demos\Hash_FMX\Hash_FMX.deployproj

2. Beim Aufruf von Benchmark erhalte ich folgenden Fehler:
Fehler beim Lesen des Formulars 'FormMain'
Fehler beim Lesen von sg_Results.Options: Ungültiger Eigenschaftswert. Den Fehler ignorieren und fortsetzen? Hinweis: Durch Ignorieren des Fehlers könnten Komponenten gelöscht werden oder Eigenschaftswerte verloren gehen.
Ignorieren gewählt:
gleiche Fehlermeldung nur ...beim Lesen von StringColumn2.HorzAlign: Eigenschaft HorzAlign existiert nicht....
ignorieren gewählt:
Form läßt sich laden; beim Kompilieren Fehler [dcc32 Fataler Fehler] MainForm.pas(24): F2613 Unit 'FMX.Grid.Style' nicht gefunden.

3. Hash_VCL von mir umgeschrieben aus der alten Demo von Hash_FMX mit den neuen units von 6.2 mit Delphi Seatle getestet (auch mit Delphi 10.2 gestern mit gleichem Ergebnis):
Programm liegt anliegend bei. Ergebnis: Kompilierung möglich doch beim Einstellen der SHA3 Hashtypen kommt die Meldung der fehlenden Registierung der class (siehe Post #4)

Das mit der Zeit war ein Spass ohne programmtechnischen Hintergrund !

Ich teste das ganze nochmals mit Delphi 10.2 und melde mich dann nochmals.

EdAdvokat 7. Jul 2021 11:09

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier das vormals angekündigte Programm Hash_VCL

Michael II 7. Jul 2021 12:21

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Das Problem tritt in deiner Funktion
function TDECClassList.ClassByName(const Name: string): TDECClass;
auf.

Du rufst dort aus DECBaseClass TDECClass.GetShortClassNameFromName(Name) auf. Weil die SHA3 Hashes Namen mit dem Zeichen "_" (SHA3_224 etc.) haben, liefert GetShortClassNameFromName(Name) nicht den erwarteten Wert zurück. => Dein FindNameShort wird immer FALSE und Result bleibt NIL. => Du löst bei Result=NIL in deiner Funktion die falsche Exception EDECClassNotRegisteredException.CreateResFmt aus.

SHA3_xxx sind registriert und funktionieren.

Falls ich deinen Code korrekt lese: Da du im FormCreate über InitHashCombo; und InitFormatCombos; die Hash- und Formatwerte initialisierst, reicht in deiner Funktion als Workaround generell (oder mind. für SHA3_..) FindNameShort := TRUE.

EdAdvokat 7. Jul 2021 13:37

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Test mit Delphi 10.2 und 10.3 gleiche Ergebnisse:
Hash_FMX nach Kompilieren Fehler:
The imported project file could not be loaded. Ein Name darf nicht mit dem Zeichen '<', hexadezimaler Wert 0x3C, beginnen. Zeile 7, Position 2. C:\Users\nowe4\Documents\DelphiPrg\DEC62\Demos\Has h_FMX\Hash_FMX.deployproj

HashBenchmark_FMX Fehlermeldung stringColumn2.... wie oben dann Inorieren und Programm läßt sich kompilieren.
Nach weiteren Aufrufen der .dpr kommt diese Fehlermeldung nicht mehr und das Programm läßt sich kompilieren.

Dann tauchte bei mir bei der Kompilierung 32bit HashBenchmark_FMX ein völlig eigenartiger Fehler E1026 auf, mit dem ich überhaupt nichts anfangen kann.
Es wird in einem FMX-Programm die fehlende MainForm.dfm angemahnt.
Was mag das wohl sein, denn in dem gesamten FMX-Programm ist an keiner Stelle ein Hinweis auf MainForm.dfm zu finden.
Das gibt mir ein völliges Rätsel auf.
[dcc32 Fehler] E1026 Datei nicht gefunden: 'MainForm.dfm' beim Aufruf von HashBenchmark_FMX !!!

HashBenchmark_FMS 64bit kompiliert - alles i.o eigenartig.

Programm Cipher_FMX läßt sich kompilieren in 10.2 aber Fehlermeldung:
---------------------------
Anwendungsfehler
---------------------------
Exception EReadError in Modul Cipher_FMX.exe bei 000BC8A4.

Fehler beim Lesen von ComboBoxCipherAlgorithm.OnChange: Ungültiger Eigenschaftswert.

---------------------------
OK
---------------------------

Ich habe das in der VM mit 10.2 und 10.3 getestet, nachdem ich die DEC 6.2 dort jeweils neu und erstmals installiert habe.
Einiges gibt mir Rätsel auf.

EdAdvokat 7. Jul 2021 13:39

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Hallo Michael II Das schaue ich mir in Ruhe an und gebe Bescheid.

Michael II 7. Jul 2021 13:48

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Hallo EdAdvokat

bei deinem zweiten gemeldeten Problem:
In Hash_FMX.deployproj hat's tatsächlich etwas viele <<<< und >>>> drin.
u.a. aber nicht nur wie von Delphi gemeldet an Postion Zeile 7 Spalte 2.

Ein Fall für TM ;-).

Gruss
M

EdAdvokat 7. Jul 2021 14:19

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
@Michael II mit Deinem Post #13 beziehst Du dich vermutlich auf die DEC-unit DECBaseClass.pas und regst an, dort eine Änderung vorzunehmen.
Dies ist sicher dann an TurboMagic gerichtet.

Michael II 7. Jul 2021 15:07

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Zitat:

Zitat von EdAdvokat (Beitrag 1492009)
@Michael II mit Deinem Post #13 beziehst Du dich vermutlich auf die DEC-unit DECBaseClass.pas und regst an, dort eine Änderung vorzunehmen.
Dies ist sicher dann an TurboMagic gerichtet.



Hallo EdAdvokat,

ja genau. Ich meinte, ich wäre da in deinem Teil des Codes unterwegs.

Falls du deine App kurzfristig benötigst, dann reicht für dich der erwähnte WorkAround. Dann zeigt deine App auch die SHA3 Werte korrekt an.

"Besser" wäre: GetShortClassNameFromName anpassen. Diese Funktion liefert momentan für bereits gekürzte SHA3-Namen statt SHA3_<nnn> das Resultat <nnn> zurück.

Delphi-Quellcode:
class function TDECObject.GetShortClassNameFromName(const ClassName: string): string;
var
  i: Integer;
begin
  Result := ClassName;
  if pos( 'SHA3_', ClassName ) = 1 then exit;

  i := Pos('_', Result);
  if i > 0 then
    Delete(Result, 1, i);
end;
Schön hast du das gefunden.

Gruss
M

TurboMagic 7. Jul 2021 16:54

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Zitat:

Zitat von EdAdvokat (Beitrag 1491971)
Hallo Markus, schau doch mal nach Hash_FMX und auch HashBenschmark_FMX in den Demos. Da gibt es Fehlermeldungen und die Programme lassen sich nicht kompilieren. Es wird ein Problem mit der Datei Hash_FMX.deployproj Zeile 7 Pos 2.... gemeldet.
05:35 Uhr Erstellungszeit war wohl etwas spät oder zu früh.
Ich hatte Hash_FMX und Hash_VCL mit meinen Projekten aus der Vorversion und mit den jetzt neuen units getestet und das Problem mit der Registrierung (s.o.) festgestellt.
Nun habe ich Deine neuen Demos getestet und das o.g. festgestellt.

Ok, ich versuche mich mal mit der Ursachenforschung, so wie ich das verstanden habe gibt's 3 Probleme:

1. .deployproj Datei

2. Klassenregistrierungsmechanismus, hat wohl doch noch ein Problem mit dem zusätzlichen _ bei den SHA3 Umsetzungen

3. FMX Formular enthält eine Eigenschaft die es früher noch nicht gab.

Habe ich das richtig erfasst?

Zu 1.: das kann ich gerade nicht nachvollziehen. Ich habe eben geschaut, das in der Hash_FMX Demo im Masterbranch auf Github
in dieser Datei drin steht. Und dort sieht diese korrekt aus. Letzte Änderung der Datei vor 3 Tagen, also am Sonntag als ich
released habe.

Hier kann man die Datei anschauen und sehen, dass da keine <<<<<< drin sind. Das wären wohl Marker von Git.
https://github.com/MHumm/DelphiEncry...FMX.deployproj

2. und 3. schaue ich gleich an.

TurboMagic 7. Jul 2021 17:22

AW: Gute Neuigkeit! DEC 6.2 soeben released!
 
Hallo,

das HorzAlign beim FMX StringGrid scheint in Sydney neu rein gekommen zu sein,
zumindest gibt's da im Dokwiki eine komplette Stub-Docwiki Seite für, die es für
Rio in der Form noch nicht gibt.

Was kann ich in so einem Fall überhaupt tun?
Ja, ich könnte die Zeile aus der .FMX Datei nehmen und mittels $IF Compilerversion > X
im Code der Demo für die neueren Versionen setzen. Wäre das ein geeigneter Ansatz?

Grüße

TurboMagic


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:36 Uhr.
Seite 2 von 7     12 34     Letzte » 

Powered by vBulletin® Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf