Domanda

E 'possibile aggiungere eventi di generazione solo per un configurazione di generazione specifica in Delphi 2007?

Io uso 2007, ma sarebbe interessato a quello che si può fare anche nel 2009.

Saluti Sam

È stato utile?

Soluzione

No.

Si può avere (risorse) impostazioni del compilatore per ogni configurazione di generazione in Delphi 2009. Ma questo non vale per le altre impostazioni.

Si può fingere, ma ci vuole un po 'di tempo:

  1. Nella prebuild, eliminare i file il conf * .dcu.
  2. Definisci DEBUG per la configurazione debug.
  3. Aggiungi il seguente al file di progetto:

Codice:

uses
  ..
{$IFDEF DEBUG}
  confDebug,
{$ELSE}
  confRelease,
{$ENDIF}
  ..
  1. Ora il controllo fase di post costruzione per l'esistenza di confDebug.dcu o confRelease.dcu per trovare quale costruire la configurazione viene utilizzato.

E 'un po' ingombrante, ma si può fare ciò che si vuole.

Altri suggerimenti

Sì!

Come si può avere definisce separati in ogni configurazione di generazione. È possibile verificare il progetto definisce per l'elaborazione di compilazione condizionale.

Io uso una cosa del genere:

echo $(DEFINES) | find "RELEASE"> nul
if not errorlevel 1 goto
release

echo $(DEFINES) | find "DEBUG" > nul
if not errorlevel 1 goto debug

goto end

:release
echo Processing RELEASE Build:
...
goto end

:debug
echo Processing DEBUG Build:
..
goto end

:end

Prova questo:

if $(Config) == Release do_something

Qui potete trovare alcune informazioni aggiuntive

Quando si utilizza XE, ho ristretto la scelta a qualcosa di ancora più semplice, se siete interessati:

goto $(Config)

:Release
compil32 /cc f:\dev\MyProject\Installer\MyProject.iss"
etc.

:Debug

Che costruisce mio installatore solo quando ho impostato il configurazione di generazione di rilascio. Se si voleva ottenere più elaborato, si potrebbe chiamare Jenkins e lasciarlo prendere i compiti pre-release. In Delphi 10.x, non è necessario questo trucco più.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top