2011-10-04 9 views
9

Qualcuno può dirmi dove trovare un elenco delle variabili di ambiente "pseudo" disponibili in RAD Studio? Quelli come $ (Piattaforma), $ (Config) e così via. Specificamente, ne voglio uno che mi dia la versione RTL, in modo che possa mettere le mie unità compilate (* .dcu) nella directory corretta, es. D15 per XE, D16 per XE2, ecc.Variabili d'ambiente predefinite Delphi

Speravo che ci fosse uno di questi che corrisponde alla definizione condizionale del compilatore "RTLVersion", ma $ (RTLVersion) non funziona.

+0

Penso che siano solo normali variabili di ambiente come discusso [qui] (http://stackoverflow.com/questions/6870282/how-are-delphi-environment-variables-such-as-bds-evaluated). –

+0

Queste sono le variabili d'ambiente impostate come IDE stesso. "Sostituzioni" sono memorizzate nel registro. BTW, 'RTLVersion' non è un simbolo condizionale, ma una vera costante. Inoltre, non vedo grandi motivi per organizzare i file temporanei. –

+0

Sto provando a configurare i miei progetti in modo che possano essere creati su un server di build, senza dover aggiungere comandi speciali sul build server. Il build server può avere diverse versioni di Delphi. Può anche avere diverse librerie di codici diversi, come Jedi (tutto nel controllo del codice sorgente). Voglio che lo script di build costruisca quelle librerie oltre al mio prodotto. Ma Jedi ha diverse cartelle per ogni versione RTL (es. \ Lib \ D15). Quindi voglio che le mie opzioni di progetto vengano visualizzate in .. \ lib \ D $ (RTLVersion), perché in quel momento non devo modificare ogni file di progetto quando viene rilasciata una nuova versione di Delphi. – user977725

risposta

1

Non esiste una variabile di ambiente per la versione RTL. Dovrai creare un progetto separato per ogni versione e quindi ritoccare le cartelle di output secondo necessità.

10

non c'è un RTLVersion variabile ma è possibile creare facilmente utilizzando le variabili di opzione Enviroment

enter image description here

o il registro di Windows.

per Delphi XE Controllare questa voce

HKEY_CURRENT_USER\Software\Embarcadero\BDS\8.0\Environment Variables 

Quindi è possibile creare una nuova variabile chiamata RTLVersion

enter image description here

E poi dal Delphi è possibile utilizzare in questo modo

enter image description here

+0

In D2007 ho una pagina "Variabili d'ambiente" nella finestra di dialogo delle opzioni sotto "Opzioni ambiente" (tutte tradotte dal tedesco). Questo è andato in DXE? –

+0

@UlrichGerhardt, la pagina 'Variabili d'ambiente' esiste ancora, ho aggiornato la mia risposta. – RRUZ

4

Hai provato $ (ProductVersion)? questo non ti darà D16, ma contiene la versione 9.0 del prodotto BDS per XE2.

Purtroppo la mia versione demo di XE2 è scaduta, quindi non posso verificare se funziona. Troverete le definizione bin \ CodeGear.Common.Targets

Update: Il ProductVersion definire è nuovo in XE2, in modo che non funziona nelle versioni precedenti, ma dal momento che la sua appena aggiunta, la possibilità è alta che sarà mantenuto da embarcadero nelle versioni future.

+0

buona idea, make e altri strumenti di compilazione possono impostare anche variabili –

+0

Si noti che $ (ProductVersion) è/era disponibile anche in XE. –

Problemi correlati