Delphi "Errore E2161: RLINK32: Errore durante l'apertura del file ________. Drf" durante Build All

StackOverflow https://stackoverflow.com/questions/1215289

Domanda

Sto cercando di risolvere un problema con una serie di pacchetti che apparentemente ha problemi di dipendenza . Occasionalmente durante un Build All, ottengo questo errore:

Delphi " E2161 Errore: RLINK32: Errore durante l'apertura del file ________. drf "

Che cosa significa / indica e che cos'è un " drf " il file?

È stato utile?

Soluzione 2

Sembra che questo si è rivelato essere il problema / la soluzione principale.

/ p>

Apri tutti i pacchetti per i quali hai il codice sorgente e specifica l'opzione di compilazione: 'Ricostruisci esplicitamente' invece di 'Ricostruisci quando necessario'.

Altri suggerimenti

Oltre al Risolvere il problema "Impossibile trovare il file drf" durante la compilazione dei pacchetti articolo, mi sono anche imbattuto in Segnalazione bug Delphi # 44134 , in che un commentatore menziona che il problema deriva dall'avere i tuoi file .dpk nella stessa directory dei tuoi file .pas quando quella stessa directory si trova nel percorso della libreria e " ricostruisci secondo necessità " è abilitato.

Hai quindi tre opzioni per risolvere questo problema:

  • Disattiva " ricostruisci secondo necessità " ;. Questa sembra essere la soluzione più comune.
  • Metti i file del pacchetto ( * .dpk , * .dproj ) in una directory separata e quindi reinstalla i pacchetti. L'ho fatto, con successo.
  • Rimuovi la directory contenente i tuoi file .dpk e .pas dal percorso della libreria. Nota che Delphi lo aggiungerà nuovamente in determinate circostanze, incluso quando installi / reinstalli il tuo pacchetto.

Da http://www.delphifaq.com/faq/delphi/ delphi_ide / f157.shtml :

  

Quando compili con i pacchetti, tu   può specificare quali pacchetti dovrebbero essere   considerato per il collegamento. Il pacchetto   i requisiti del progetto vengono archiviati   in un file di risorse temporaneo di Windows   con estensione .DRF.

Qualunque sia quel file con molti caratteri di sottolineatura, è molto probabile che il linker lo stia cercando in quello che pensa che sia la tempdirectory (puoi confermarlo usando filemon ). La spiegazione di DelphiFaq, in cui un% TEMP% errato è il colpevole, è probabile come qualsiasi motivo.

Hmm ... non ne ho mai sentito parlare. Ho appena cercato il progetto che ha ispirato la domanda a cui ti sei collegato, e non c'è niente lì dentro con un "DRF" estensione. Controllando qui non viene visualizzato nulla relativo a Delphi. Ma il fatto che si tratti di un errore del linker, non di un compilatore, mi indurrebbe a pensare che le prime due lettere significano "risorsa di Delphi".

Prova una ricerca nella struttura di directory del tuo progetto e vedi se riesci a trovare qualcosa con un'estensione DRF. In tal caso, prova ad aprirlo con un editor di testo per vedere se è leggibile e, in caso contrario, prova un editor esadecimale se sai qualcosa sulla lettura di formati di file binari. Vedi se riesci a capirlo.

Se non ne trovi, probabilmente Delphi lo sta ottenendo da qualche parte del codice che sta compilando. Prova a eseguire una ricerca grep per " DRF " nella tua struttura di directory e vedi se viene visualizzato qualcosa.

A volte il problema erano le autorizzazioni di accesso ai file.

Delphi è stato eseguito come soluzione alternativa come amministratore.

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