Finestra di dialogo "Impostazioni del progetto" - "Sviluppo della libreria".Permalink

Simbolo: _cds_icon_library_manager.png

Funzione: Configurazione dei parametri per il comando ‎⮫ Check all Pool Objects. Questo comando viene utilizzato soprattutto per le librerie, per verificare che tutti gli oggetti possano essere compilati correttamente.

Chiama: Progetto → Impostazioni del progetto, categoria di sviluppo della libreria

Requisito: Un progetto è aperto.

Durante il processo di compilazione di un'applicazione, vengono compilati solo i blocchi di funzioni/programmi/funzioni che vengono effettivamente utilizzati direttamente o indirettamente dal codice dell'applicazione. Tuttavia, il comando Controlla tutti gli oggetti del pool controlla anche i blocchi funzione/programmi/funzioni non utilizzati. Se possibile, tutti i percorsi di esecuzione del codice devono essere presi in considerazione.

Tab. 696: Definizioni del compilatore da utilizzare

Scansione

Esamina tutti i blocchi funzione/programmi/funzioni della libreria e inserisce le definizioni del compilatore trovate come elenco separato da virgole nella panoramica Definizioni del compilatore da utilizzare.

Per gli enunciati a cascata {IF definito(...)}-{ELSIF definito(...)}, viene presa in considerazione solo la definizione a {IF}.

Tab. 697: Controllare tutti gli oggetti del pool

Dimensione del puntatore da utilizzare

Se nella libreria si salva una variabile POINTER in una variabile DWORD, la libreria può essere compilata solo per dispositivi a 32 bit.

Per individuare ed evitare questo problema, è possibile specificare la dimensione del puntatore che deve essere specificata per il comando Controlla tutti gli oggetti del pool. È possibile selezionare i seguenti valori:

  • 32 bit

  • 64 bit

  • 32 e 64 bit

L'esempio seguente mostra come utilizzare il comando Controlla tutti gli oggetti del pool per rilevare le assegnazioni non valide per la dimensione del puntatore a 64 bit:

FUNCTION F : INT
VAR
               
ptr : POINTER TO BYTE;
               
ptrSave : DWORD;
END_VAR
ptrSave := ptr;

Questa assegnazione genera l'errore C0032: Il tipo 'POINTER TO BYTE' non può essere convertito in 'DWORD'.

Per evitare questo errore, utilizzate la seguente dichiarazione per ptrSave:

ptrSave : __XWORD;

Per ulteriori informazioni, vedere: ‎⮫ Controllare tutti gli oggetti del pool