AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.
Thema durchsuchen
Ansicht
Themen-Optionen

Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.

Ein Thema von NooL · begonnen am 13. Okt 2012 · letzter Beitrag vom 14. Okt 2012
Antwort Antwort
NooL

Registriert seit: 26. Okt 2008
Ort: Dreiländereck
15 Beiträge
 
Delphi 7 Professional
 
#1

AW: Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.

  Alt 13. Okt 2012, 13:21
Danke himitsu und mkinzler für die Rückinfo.

Also, beide Komponenten liegen als .Pas vor. Sind momentan auch im Internet noch frei downloadbar.
Wenn ich die Komponente einzeln Compiliere, dann meckert er momentan nur an Char / AnsiChar rum, da
ja Char neuerdings = WideChar (2 Byte) ist. Aber ich denke, das läßt sich beseitigen.


Ich habe zwei ältere Anwendungen von mir bereits erfolgreich nach 64bit portiert, aber dort hatte
ich nur Standard-Komponenten verwendet und mußte nur die Char-Geschichte anpassen.

In beiden Units ist jeweils procedure Register; und

RegisterComponents('Jazarsoft', [TjsCoolGauge]); und
RegisterComponents(ThePalettePage, [TEmiDriveComboBox]); vorhanden.

Leider reicht mein wissen nicht so weit, um zu erkennen, ob Quelltext 64bit-tauglich sind.
Bei Delphi7 habe ich die vorhandene dclusr.dpk ausgewählt und die Komponente erschien dann
eben in der Tool-Palette.
Jetzt habe schon mal eine .dpk mit einer Komponente erzeugt, jedoch raff ich es leider nicht,
wie ich die jetzt in mein Projekt aktiviere.
Vieleicht könnt ihr mir das mal idiotensicher erklären.

Ich habe mal beide Komponenten angehängt. Evtl. erkennt ihr ja gleich, ob das überhaupt
sinn macht.
Es wäre eben einfach nur schön gewesen, Komponenten einbinden, altes Projekt compilieren
und fertig. Zur not muß ich dann eben im Projekt die Sachen anders gestalten. Da ich viel
mit WinPE3.0 32bit gearbeitet habe, brauche ich eben meine Anwendungen nach und nach für
für WinPE3.0 64bit. Ich habe zwar auch zwittriges WinPE3.0 32bit+64bit am laufen, aber da
wird die Imagegröße langsam zu viel.

Zitat:
Für 64Bit werden aber 2 Packages benötigt
Das sagt mir nun leider überhaupt nichts.

Zitat:
( Da Design-Packages momentan nur 32Bit sind)
Könnt ihr mal bitte in den Anhang schauen, ob das Design-Packages sind ?
Habe da den Hinweis auf eine fehlende designide erhalten.

Gruß Nool.
Angehängte Dateien
Dateityp: pas emiDriveCombo.pas (16,7 KB, 12x aufgerufen)
Dateityp: pas jsCoolGauge.pas (11,3 KB, 10x aufgerufen)
Nool

Geändert von NooL (13. Okt 2012 um 14:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.542 Beiträge
 
Delphi 12 Athens
 
#2

AW: Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.

  Alt 13. Okt 2012, 17:46
Zitat:
Für 64Bit werden aber 2 Packages benötigt
Das sagt mir nun leider überhaupt nichts.
Die Delphi-IDE ist halt nur als 32-Bit verfügbar, also kann man darin nur 32 bittige Packages laden.
Für ein 64 Bit-Programm braucht man aber eventuell ein 64 Bit-Package.

Selbst wenn die IDE 64 Bit wäre, dann gäbe es dort das selbe Problem mit 32 Bit-Programmen.


Heißt also, wenn man für die EXE Packages benötigt, dann braucht man für jedes Ziel eine passende Package-Version.
Also aktuell wären das ein 32 Bit-DesignTime-Package, ein 32 Bit-Runtime-Package und ein 64 Bit-Runtime-Package. (Runtime-Packages für OSX und Co. noch nichtmal einbezogen)



Versuch es mal so:

Die PAS müssen im Suchpfad des Projekts liegen, das Package muß als Win32 kompiliert sein und das Projekt darf nicht mit Laufzeitpackages kompiliert werden.
Angehängte Dateien
Dateityp: 7z Neuer Ordner.7z (7,1 KB, 25x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
NooL

Registriert seit: 26. Okt 2008
Ort: Dreiländereck
15 Beiträge
 
Delphi 7 Professional
 
#3

AW: Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.

  Alt 13. Okt 2012, 19:54
OK, danke für den Anhang.

Werde es morgen ausprobieren, komme heute leider nicht mehr dazu.

Ein Problem stellt sich dann natürlich. Wenn das Package nur als 32bit
vorliegt und die Anwendung selbst 64bit ist und dann im WinPE3.0 64bit
in einer reinen 64bit Umgebung (ohne SysWOW64)läuft, ob dann das 32bit
Package noch akzepiert wird.

Desweiteren ist mir jetzt auch noch nicht ganz klar, wenn ich ohne
Laufzeitpackages kompiliere, was ich der Anwendung dann alles separat
mitgeben muss. Habe bis jetzt aus Sicherheit und Bequemlichkeit immer
mit Laufzeitpackages kompiliert. Die EXEn sind dann zwar recht groß, aber
das war bis jetzt nicht so wichtig. Gibt es noch andere Vorzüge ohne Laufz.
zu kompilieren.

Na gut werde es morgen sehen. Melde mich wieder.
Wenn es zu viele Klimmzüge bei der Portierung werden, muss ich dann halt
einen anderen Weg gehen.

Aber erstmal vielen Dank für die Hinweise.

Gruß Nool.
Nool
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.542 Beiträge
 
Delphi 12 Athens
 
#4

AW: Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.

  Alt 13. Okt 2012, 20:41
Das Designtime-Package kann (aktuell) nur 32 Bit sein, da Delphi schließlich keine 64 Bit-Packages laden kann.

Wie gesagt, das Package als 32 Bit und dann dein 64 Bit-Programm nicht mit Laufzeitpackages, sondern direkt mit den PAS kompilieren.
Oder du mußt dir eben noch weitere 32 und 64 Bit Laufzeitpackages erstellen.

Hab es nicht geprüft, aber so auf den ersten Blick sah es nicht so aus, als wenn da immernoch was Schlimmes drin wäre. (ich glaub die paar Stellen hab ich erwischt)
Falls der Code immernoch funktioniert (ich bau gerne mal kleine Fehlerchen ein ), dann dürfte er hoffentlich auch mit 64 Bit laufen ... konnte die unvollständigen Dateien ja schlecht testen
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
NooL

Registriert seit: 26. Okt 2008
Ort: Dreiländereck
15 Beiträge
 
Delphi 7 Professional
 
#5

AW: Ältere Komponente von Delphi7 in XE2 64bit weiter nutzen.

  Alt 14. Okt 2012, 16:51
Hallo himitsu,

jsCoolGauge zeigt sich jetzt in der Tool-Palette unter Jazarsoft gemäß RegisterComponents
wie es sein sollte und mein altes Delphi7-Projekt meckert es auch nicht mehr an.

Aber emiDriveCombo ist in der Tool-Palette nicht sichtbar, müsste aber eigentlich
lt. RegisterComponents unter Add-Ons auftauchen. Ich kann an beiden Units keinen mir
bekannten markannten Unterschied feststellen. Einzig emiDriveCombo wird noch eine
emiDriveCombo.res mitgegeben.

Vieleicht hast du ja noch eine Idee, woran es liegen könnte, aber bitte nicht unnötige
Energie rein stecken. Werde die Laufwerksauswahl dann eben anders gestalten.

Falls du keine Idee mehr hast, dann hat sich dieser Betrag erledigt und ich danke dir
für deine Mühe. Muss dieser Beitrag irgendwie noch als erledigt markiert werden ?
Habe hier leider nichts gefunden.

Danke und Gruß Nool !
Nool
  Mit Zitat antworten Zitat
Antwort Antwort


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 21:44 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