Autor Beitrag
galagher
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2510
Erhaltene Danke: 44

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: Di 18.10.16 19:48 
Hallo!

Ich konnte diese Komponenten erfolgreich unter Delphi 10.1 installieren, in Delphi XE2 waren sie ebenfalls installiert. Dort verursachten sie beim Versuch, sie auf die Form zu ziehen, zunächst Fehler (habe mir die Fehlermeldungen leider nicht kopiert), nach einem Neustart von XE2 sind sie nun weg und lassen sich auch nicht mehr installieren:

Bei dclshlctrls150.bpl kommt: Zugriffsverletzung bei Adresse 1ABB8799. Lesen von Adresse 00000010.
Bei vclshlctrls150.bpl kommt: Package ...\Bpl\vclshlctrls150.bpl kann nicht installiert werden, da es kein Entwurfszeit-Package ist.

Neukompilieren der dpk's nützt nichts.
Gibt es da eine Lösung oder kann man diese Komponenten prinzipiell nur in einer Delphi-Version benutzen?

_________________
gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 18.10.16 19:59 
Die kann man auch in mehreren nutzen, aber du musst das Lib-Suffix für jede Delphiversion anders setzen. Am besten für Delphi 10.1 (wo diese Komponenten nicht mehr in den Samples dabei sind) einfach den Ordner mit den Komponenten aus den Samples von XE2 woanders hin kopieren und dort das Lib-Suffix in den Projekteinstellungen umstellen.

Alternativ kannst du ein eigenes Package erstellen und dort die Units hinzufügen. Diese sind nämlich in der VCL integriert als Unit Vcl.Shell.Ctrls usw.

Hintergrund:
Das Lib-Suffix sagt aus wie die erstellte BPL heißt. Wenn dieses bei beiden Delphiversionen gleich ist, heißen die BPLs auch gleich. Da beide BPL-Ausgabepfade im Systempfad drin sind, finden so beide Delphiversionen die gleiche BPL (die, die als erste im Pfad liegt). Das funktioniert natürlich nicht.

Für diesen Beitrag haben gedankt: galagher
galagher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2510
Erhaltene Danke: 44

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: Di 18.10.16 20:31 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Die kann man auch in mehreren nutzen, aber du musst das Lib-Suffix für jede Delphiversion anders setzen.
Wie genau mache ich das? :gruebel:

//Edit: In den dpk-Files statt {$LIBSUFFIX '150'} zB. {$LIBSUFFIX '149'} schreiben oder so?

_________________
gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
galagher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2510
Erhaltene Danke: 44

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: Di 18.10.16 21:38 
user profile icongalagher hat folgendes geschrieben Zum zitierten Posting springen:
//Edit: In den dpk-Files statt {$LIBSUFFIX '150'} zB. {$LIBSUFFIX '149'} schreiben oder so?
Ja, genau so! Ich habe die Suffixe einfach zu 'XE2' geändert, habe nun zwei Dateien: dclshlctrlsXE2.bpl und vclshlctrlsXE.bpl (diese Datei heisst tatsächlich so!)
Warum hier nicht auch XE2, sondern XE, weiss ich nicht! Änder ich beide Suffixe zu 'XE', heissen die Dateien dclshlctrlsXE.bpl und vclshlctrlsX.bpl!

Wie auch immer, ich habe jetzt die ShellCtrls-Komponenten wieder!

_________________
gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!