Hva gjør Runtime Error 200 på 209E 0091 mener?

Hva gjør Runtime Error 200 på 209E 0091 mener?


Annet enn defekt maskinvare, er det få ting flummox en datamaskin mer grundig enn programmeringsfeil. Når en applikasjon utsteder en kommando systemet ikke forstår, selve programvaren avsluttes med et dunk. Å finne ut hvorfor søknaden ikke klarte å kjøre skikkelig betyr tyde ofte kryptiske feilmeldinger, inkludert "runtime error 200" kan du se om du prøver å kjøre en virkelig gamle program på en nyere datamaskin.

Gamle og nye

Det er fristende å henge på gammel programvare og prøver å kjøre den på nye datamaskiner. Dessverre er det ofte en øvelse i frustrasjon. Noen gamle programmer rett og slett ikke vil installere i henhold til nyere versjoner av Windows. Andre ser ut til å være riktig installert, men ikke klarer å starte. I noen tilfeller kan du finne patcher å oppdatere programmet tilstrekkelig at det kjører på nyere datamaskin. I andre, du er rett og slett ute av lykken. I tilfelle av "runtime error 200," systemet bokstavelig talt er for rask for programvaren.

Bakgrunn

Mange gamle DOS-programmer brukt en programmeringsenhet kalt Delphi CRT. Rutiner hjelpe oppdatere gamle programmer bygd i Turbo Pascal og Borland Pascal slik at de kan kjøre i en 32-biters Windows-operativsystemet. Dessverre er disse programmene avbryte når du kjører dem på et system med en prosessorhastighet raskere enn 200 MHz. Som beskriver virkelig gammel hardware, men hvis du er desperat å forynge en virkelig gamle programmet, er du sannsynligvis jobber med en ut-av-dato CPU.

Feilmelding Detaljer

Når programvaren berørt av denne feilmeldingen starter opp, bruker den en del av programmeringskode som kalles en timing sløyfe for å finne ut hvor raskt datamaskinens prosessor kjører. Resultatet av denne beregningen skriver til et lagerregister. Når rutinen kjører på en rask prosessor, den produserer et resultat for stor for størrelsen på lagringsregistre på 16-bit operativsystemer der disse gamle programmene forventer å kjøre. Den resulterende "divide flow" feil blir rapportert som en divisjon med null, som datamaskiner ikke kan håndtere. Resten av feilmelding etter antall 200 består av heksadesimale koden som refererer til en minneadresse.

Solutions

Dessverre kan søknadene som er berørt av denne feilen ikke oppdateres uten rekompileres dem. Fordi Borland ikke lenger tilbyr oppdateringer for kompilatoren de bruker, som krever enten en patch for samlet søknad eller en bakke-up omskriving for å produsere en helt ny søknad. Noen av patcher rett og slett tvinge disken til å lagre den største verdien den kan holde. Andre endre programvarens kjørbare filer og kan utløse virusadvarsler fra anti-malware beskyttelse. Din beste løsningen på dette problemet kan være like vanskelig som det er åpenbar: oppdatere programvaren til en versjon kompatibel med maskinvaren.