AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren
Thema durchsuchen
Ansicht
Themen-Optionen

{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

Ein Thema von Bernhard Geyer · begonnen am 11. Dez 2014 · letzter Beitrag vom 11. Dez 2014
Antwort Antwort
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#1

{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 10:36
Delphi-Version: XE6
Gibt es für oben genannte Defines eine Alternative als ein *.Inc-Datei die überall eingebunden wird?
Ich würde gern das allgemein für die Exe anwenden ohne das in die eigene Inc-Datei sowie die Inc-Dateien der 3th-Party-Komponenten aufnehmen zu müssen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 10:45
In die DPR!

http://stackoverflow.com/questions/2...603650#4603650
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 11:01
Das stimmt nicht!


{$WEAKLINKRTTI ON}
funktioniert in der dpr

{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
funktiniert in der dpr nicht!
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
dGeek
(Gast)

n/a Beiträge
 
#4

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 15:40
Ich habe das gerade mal unter XE2 getestet und es funktioniert in der dpr.

Hat sich das XE2+ was geändert?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 16:22
Vor oder nach dem USES?

Im Allgemeinen gibt es Compilerdirektiven quasi als
* Programm-Globale (irgendwo in DPR/PAS und wirkt sich auf alles aus ... z.B. {$M 123,456} )
* Unit-Globale (irgendwo in Unit und wirkt sich danach auf alles der Unit aus)
* Lokale (ab da wo definiert, bis Unitende oder bis zur nächsten Definition)

Und ja, natürlich könnte der Compilerhersteller daran etwas ändern.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#6

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 17:27
Dass die $RTTI Direktive in der dpr Auswirkungen auf die gesamte Anwendung hatte, war ein Bug und der wurde mit XE6 behoben.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (11. Dez 2014 um 17:37 Uhr)
  Mit Zitat antworten Zitat
dGeek
(Gast)

n/a Beiträge
 
#7

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 17:39
Ein Bug, ok.

Reicht es denn auch, wenn man solche Direktiven in der Haupt-Unit deklariert?
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

AW: {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} allgemein definieren

  Alt 11. Dez 2014, 17:51
Ein Bug, ok.

Reicht es denn auch, wenn man solche Direktiven in der Haupt-Unit deklariert?
Nein, weil diese Direktive lokal ist - das heißt, sie wirkt sich nur auf die Unit aus, in der sie steht.

Dass sie das nicht tat, war ja der Bug. In der dpr stehend hat sie sich deshalb auf alle Units im Projekt ausgewirkt.
Aber auch wenn sie in einer Unit stand, wirkte sie sich auf die nachfolgend kompilierten Units aus.

Man hätte den Bug aber zugegebenermaßen auch geschickter fixen können, indem man sie in der dpr global hätte sein lassen, in Units aber nur lokal.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (11. Dez 2014 um 17:54 Uhr)
  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 15:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz