* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Dicembre 08, 2025, 11:31:55 am

Inserisci il nome utente, la password e la durata della sessione.

5 Visitatori, 0 Utenti

Autore Topic: Errore 20xxxxxx  (Letto 761 volte)

cappe

  • Jr. Member
  • **
  • Post: 65
  • Karma: +0/-0
Errore 20xxxxxx
« il: Agosto 10, 2025, 07:46:11 pm »
FIno a qualche giorno mi veniva fuori un errore tipo 200706102  (il numero non ricordo bene), la cosa strana è che veniva fuori sono quando premevo run (F9) mentre se facevo la build funzionava tutto correttamente.
Quindi mi toccava ricompilare tutto ogni volta. Ho modificato il mio programma togliendo alcuni helper e ha preso a funzionare tutto correttamente anche con F9.

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1671
  • Karma: +52/-0
  • Prima ascoltare, poi decidere
Re:Errore 20xxxxxx
« Risposta #1 il: Agosto 10, 2025, 10:40:57 pm »
Il problema viene riportato molte volte nel forum internazionale.

Essenzialmente il problema sembra esistere quando si fanno modifiche a file non inclusi nel progetto, cioè file richiamati solo nelle uses delle varie unità.

Il compilatore nonsi accorge che questi file sono stati cambiati e non li ricompila, così si generano poi questi errori o a runtime o addirittura durante il linking.

Soluzioni non pare che ce ne siano.

Io ritengo ciò abbastanza critico, perchè finchè vengono generati errori immediati si può porre rimedio ma se questi errori venogno generati a runtime in maniera casuale e non ripetitiva ... chi và a pensare che basta rigenerare la build.
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1671
  • Karma: +52/-0
  • Prima ascoltare, poi decidere
Re:Errore 20xxxxxx
« Risposta #2 il: Agosto 10, 2025, 11:05:04 pm »
Ovviamente ciò vale anche al contrario: io faccio una mofica ad un file (Unita UNO) e questo file viene usato in un altro file (UNITA DUE) non incluso nel progetto, bhè ovviamente quest'ultimo file non verrà compilato con le nuove modifiche.
Quindi se io uso UNITA DUE incluso nelle uses in una qualche mia unità, UNITA DUE potrebbe essere disallineata, anche se non è mai stata modificata.
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

cappe

  • Jr. Member
  • **
  • Post: 65
  • Karma: +0/-0
Re:Errore 20xxxxxx
« Risposta #3 il: Agosto 11, 2025, 07:59:33 am »
Il problema viene riportato molte volte nel forum internazionale.

Essenzialmente il problema sembra esistere quando si fanno modifiche a file non inclusi nel progetto, cioè file richiamati solo nelle uses delle varie unità.

Il compilatore nonsi accorge che questi file sono stati cambiati e non li ricompila, così si generano poi questi errori o a runtime o addirittura durante il linking.

Soluzioni non pare che ce ne siano.

Io ritengo ciò abbastanza critico, perchè finchè vengono generati errori immediati si può porre rimedio ma se questi errori venogno generati a runtime in maniera casuale e non ripetitiva ... chi và a pensare che basta rigenerare la build.

Se non ho capito male quello che hai detto, il problema che la build bisognava rigenerarla ad ogni compilazione.

Perciò la sintesi, se vi capita, provate a togliere qualche helper finchè non verrà sistemato il bug. Penso sia un bug perchè se funziona con Build e non con Run c'è un bug.
« Ultima modifica: Agosto 11, 2025, 08:02:39 am da cappe »

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1671
  • Karma: +52/-0
  • Prima ascoltare, poi decidere
Re:Errore 20xxxxxx
« Risposta #4 il: Agosto 11, 2025, 10:26:35 am »
Se non ho capito male quello che hai detto, il problema che la build bisognava rigenerarla ad ogni compilazione.
Perciò la sintesi, se vi capita, provate a togliere qualche helper finchè non verrà sistemato il bug. Penso sia un bug perchè se funziona con Build e non con Run c'è un bug.

Per essere un bug è un bug. Diciamo che è un bug noto e che in questo momento non c'è soluzione. L'unica soluzione è inserire tutti i file che possono essere interessati a modifiche nel progetto in modo che il compilatore possa verificarlo ad ogni "run" (vengono usate tecniche di caching e di verifica delle date sui file).

Potrebbe anche essere che nella versione "trunk" cioè quella sperimentale sia già stato risolto in una qualche maniera.

Non interessa solo gli Helper (che sono normalmente inseriti nelle uses ma non nel progetto) ma acnhe tutta una schiera di ulteriori file (e come accennavo il problema è più complesso in progetti "voluminosi").

Ciò non interessa solo FPC ma anche Delphi. In Delphi l'unico vantaggio è che puoi fare il build ogni volta perchè il compilatore è velocissimoe quindi non devi attendere "il caffe" per poi far girare l'applicazione.

Da parte mia eseguo sempre una BUILD (anzi una doppia BUILD) quando testo qualcosa con modifiche importanti a più file (SOPRATTUTTO QUANDO CI SONO DI MEZZO {$IFDEF ...}).
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1671
  • Karma: +52/-0
  • Prima ascoltare, poi decidere
Re:Errore 20xxxxxx
« Risposta #5 il: Agosto 11, 2025, 11:02:14 am »
Ulteriore consiglio: nei miei progetti il percorso "lib" di progetto, ossia dove il compilatore mette il file compilati (cioè i .ppu, .o, etc...) temporanei (che venogno però usati per la validazione di una eventuale compilazione aggiuntiva) io c'è l'ho su un RAMDISK.

Perchè ho ciò: perchè sono certo che dopo ogni accensione del PC qualunque cosa io usi verrà ricompilata indipendentemente dal fatto che sia stata modificata o meno.
Inoltre, con una semplicissima cancellazione del disco forza la ricompilazione di tutto in un qualsiasi momento, indipendentemente dal RUN o dal BUILD.

E inoltre non uso mai le librerie precompilate dei componenti di terze parti (anche di quelle poche cho ho comprato) ma uso sempre la ricompilazione a sorgente. Ciò significa che ogni qualvolta eseguo una BUILD di un qualsiasi progetto, tutti i sorgenti (eccetto quelli bundle) verranno ricompilati per quello specifico progetto.
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

cappe

  • Jr. Member
  • **
  • Post: 65
  • Karma: +0/-0
Re:Errore 20xxxxxx
« Risposta #6 il: Agosto 11, 2025, 03:23:32 pm »
Terrò conto

bonmario

  • Hero Member
  • *****
  • Post: 1431
  • Karma: +11/-1
Re:Errore 20xxxxxx
« Risposta #7 il: Agosto 11, 2025, 06:10:02 pm »
Ulteriore consiglio: nei miei progetti il percorso "lib" di progetto, ossia dove il compilatore mette il file compilati (cioè i .ppu, .o, etc...) temporanei (che venogno però usati per la validazione di una eventuale compilazione aggiuntiva) io c'è l'ho su un RAMDISK.

Avevo notato qualcosa fin da quando ho iniziato ad usare Lazarus, intorno al 2007.
Mi sono fato un programmino che, a comando ed all'avvio del PC, cancella tutti quei files !!!

 

Recenti

How To

Utenti
Stats
  • Post in totale: 20058
  • Topic in totale: 2417
  • Online Today: 23
  • Online Ever: 1080
  • (Novembre 10, 2025, 06:15:39 am)
Utenti Online
Users: 0
Guests: 5
Total: 5

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.