Che cosa fa l'errore 200 di runtime a 209E 0091 Mean?

July 25

Che cosa fa l'errore 200 di runtime a 209E 0091 Mean?


Altro che hardware difettoso, poche cose flummox un computer più a fondo di quanto errori di programmazione. Quando un'applicazione emette un comando il sistema non capisce, il software stesso si chiude con un tonfo. Capire perché l'applicazione non è stato eseguito correttamente significa decifrare i messaggi di errore spesso criptici, tra cui il "errore di runtime 200" si può vedere se si tenta di eseguire una veramente vecchia applicazione su un computer più recente.

Vecchio e nuovo

Si sta tentando di aggrapparsi a vecchi software e provare a eseguirlo su nuovi computer. Purtroppo, è spesso un esercizio di frustrazione. Alcune vecchie applicazioni semplicemente non installare con le versioni più recenti di Windows. Altri sembrano installato correttamente ma non riescono a lanciare. In alcuni casi, è possibile trovare le patch per aggiornare l'applicazione sufficientemente che viene eseguito sul computer più recente. In altri casi, si è semplicemente fuori di fortuna. Nel caso del "errore di runtime 200," il sistema è letteralmente troppo veloce per il software.

sfondo

Molte applicazioni vecchie DOS hanno usato una unità di programmazione chiamato Delphi CRT. La sua routine di aggiornamento per i vecchi programmi costruiti in Turbo Pascal e Borland Pascal in modo che possano funzionare in un sistema operativo Windows a 32 bit. Purtroppo, questi programmi abortire quando vengono eseguiti su un sistema con una velocità del processore più veloce di circa 200 MHz. Che descrive veramente vecchio hardware, ma se siete disperati per ringiovanire un programma molto vecchio, probabilmente stai lavorando con una CPU out-of-date.

Messaggio di errore Dettagli

Quando il software colpiti da questo messaggio di errore si avvia, utilizza un pezzo di codice di programmazione chiamato un ciclo di temporizzazione per capire quanto velocemente corre il processore del computer. Il risultato di questo calcolo scrive un registro di memorizzazione. Quando viene eseguito di routine su un processore veloce, produce un risultato troppo grande per la dimensione dei registri di memorizzazione sui sistemi operativi a 16 bit in cui queste vecchie applicazioni prevedono l'esecuzione. L'errore risultante "divario troppo pieno" viene segnalata come una divisione per zero, che i computer non in grado di gestire. Il resto del messaggio di errore dopo il numero 200 è costituita da codice esadecimale che fa riferimento a un indirizzo di memoria.

soluzioni

Purtroppo, le applicazioni interessate da questo errore non possono essere aggiornati senza ricompilazione. Perché Borland non fornisce più aggiornamenti per il compilatore che usano, che richiede sia una patch per l'applicazione compilata o una riscrittura terra-up per la produzione di una nuovissima applicazione. Alcuni dei patch semplicemente forzare il contatore per memorizzare il valore più grande che può contenere. Altri modificano i file eseguibili del software e possono innescare avvisi di virus da una protezione anti-malware. La soluzione migliore a questo problema può essere così difficile come è ovvio: aggiornare il software a una versione compatibile con l'hardware.