Domanda

Ho un problema.Proverò a spiegarlo.

Ho un'unità che ha una classe e potrebbe avere nuove funzioni.

D3bf4e849acc45249b990f802efb1f15 unitàfile1.pas 8dc8977e7a7b469aacfe3cc77ca7075e unitfile1.pas

Entrambi hanno la stessa classe:IClass_1 = classe

Sto utilizzando i numeri di codice per diverse versioni di questo file.

Un altro file di unità (UnitFile2.pas) utilizza quel file di unità (UnitFile1.pas).

Inoltre, il file della seconda unità (UnitFile2.pas) ha versioni diverse.

F94C439C822E490DB228F2C16EF2C190 Unitfile2.Pas 14CEEFAFF1D64DDD8CBDEDD334D4A3FF Unitfile2.Pas

Entrambi hanno la stessa classe:IClasse_2 ​​= classe(IClasse_1)

Ora inizia il problema;

"F94c439c822e490db228f2c16ef2c190 unitàfile2.pas" ha bisogno "d3bf4e849acc45249b990f802efb1f15 unitàfile1.pas"

"14CEEFAFF1D64DDD8CBDEDD334D4A3FF\UnitFile2.pas" fabbisogno "8DC8977E7A7B469AACFE3CC77CA7075E\UnitFile1.pas"

Ma i nomi dei file sono gli stessi (ho bisogno di un sistema come questo.Quindi sono uguali).E nel file unit, delphi non mi permette di scrivere in quel modo;

Nel file F94C439C822E490DB228F2C16EF2C190\UnitFile2.pas;utilizza UnitFile1 in 'D3BF4E849ACC45249B990F802EFB1F15\UnitFile1.pas';

Spero di poter raccontare il mio problema.Come posso dire al compilatore quale file unitario voglio utilizzare con il suo percorso?(Sto usando Delphi-7)

È stato utile?

Soluzione

Date ai vostri nomi delle unità nomi diversi, si può poi semplicemente includere entrambe le unità del progetto.

Quindi utilizzare un alias di unità nelle opzioni di progetto per creare un "nome dell'unità virtuale", che si risolve in una o l'altra di queste unità attuali. In unità che "utilizzazione" uno o l'altro di questi loro riferimento dal alias unità - il "nome virtuale"

.

es. nel dpr:

  uses
    ...
    UnitFile1a in '....\UnitFile1a.pas',
    UnitFile1b in '....\UnitFile1b.pas',
    ...

In tue unità:

   uses
     UnitFile1;

Nelle opzioni del progetto un alias unità che è o:

   UnitFile1=UnitFile1a

o

   UnitFile1=UnitFile1b

È possibile quindi costruire il vostro progetto con qualsiasi "UnitFile1?" unità è opportuno semplicemente cambiando l'alias dell'unità.

Altri suggerimenti

È necessario configurare le Opzioni progetto di mettere il "D3BF4E849ACC45249B990F802EFB1F15" e "F94C439C822E490DB228F2C16EF2C190" nei percorsi di ricerca. Non è possibile specificare i percorsi di unità nel codice.

Non sono sicuro se questo risolve il problema, ma non c'è il concetto di spazi dei nomi, che permette di mettere i puntini in nomi delle unità in questo modo:

Invece di avere lo stesso nome in diverse directory ...

D3BF4E849ACC45249B990F802EFB1F15 \ UnitFile1.pas 8DC8977E7A7B469AACFE3CC77CA7075E \ UnitFile1.pas

F94C439C822E490DB228F2C16EF2C190 \ UnitFile2.pas 14CEEFAFF1D64DDD8CBDEDD334D4A3FF \ UnitFile2.pas

è possibile utilizzare un prefisso del nome file:

D3BF4E849ACC45249B990F802EFB1F15.UnitFile1.pas 8DC8977E7A7B469AACFE3CC77CA7075E.UnitFile1.pas

F94C439C822E490DB228F2C16EF2C190.UnitFile2.pas 14CEEFAFF1D64DDD8CBDEDD334D4A3FF.UnitFile2.pas

È quindi possibile utilizzare i nomi di file completi nella clausola usi, per esempio:.

uses
  D3BF4E849ACC45249B990F802EFB1F15.UnitFile1;

Sì, questo funziona con Delphi 7.

Per quanto ne so, non è possibile aggiungere due unità con lo stesso nome a un progetto.

È possibile aggiungere la cartella corretta alle Opzioni progetto oppure aggiungere le unità necessarie al file 'Visualizza - Gestore progetto' schermata (fare clic con il pulsante destro del mouse sul nome del progetto e scegliere 'Aggiungere'.Scegli il unità corretta nel cartella corretta, e da quel momento in poi potrai utilizzare solo il nome dell'unità in ogni modulo e in ogni altra unità del tuo progetto.

Il motivo per cui vorresti usare nomi di cartelle così criptici è davvero al di là delle mie capacità.Non riesco a pensare a nessun motivo per cui vorresti farlo.

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