De første Windows-systemer brugte en 16-bit MS-DOS-baseret kerne til at køre en grafisk shell for at få adgang til systemets tjenester. Hvis den sidste sætning fik dig til at søge efter en teknisk ordliste, så læg dit sind med ro. Oplysningerne i denne artikel vil være tilgængelige for både eksperter og lægfolk. Du har muligvis oplevet nogle problemer, når du kører et 32-bit program i en 64-bit version af Windows. Hvis ja, så læs videre for at lære om, hvorfor dette sker, og hvordan du løser det.
Nogle nødvendige begreber
Den simple kendsgerning er, at du ikke burde have dette problem i første omgang. Windows har en emulator, som - hvis den fungerer korrekt - giver det nødvendige miljø til, at både 64- og 32-bit applikationer kan køre normalt. Denne emulator (WOW64) adskiller 32-bit applikationer fra 64-bit applikationer for at forhindre fil- og/eller registerkollisioner. Teknisk set kan 32-bit processer ikke udføre 64-bit DLL'er, så dette kan være årsag til dit problem.
Noget at huske på er, at du måske faktisk kører en 16-bit applikation, som bestemt ikke vil fungere. En hurtig måde at kontrollere, om et program er 16-bit, er at navigere til dets placering på din computer. Højreklik på den og vælg Egenskaber fra rullemenuen. Hvis fanen Egenskaber har fanen "Version" eller "Tidligere versioner", er det ikke et 16-bit program.
Gør det kompatibelt
Den første ting, du bør prøve, når du vil køre software, der har kompatibilitetsproblemer, er at køre den i kompatibilitetstilstand. Der er meget få problemer, som dette realistisk løser i dag, men det var en meget nyttig funktion, da Windows 95 blev erstattet af NT.
For at køre et program i kompatibilitetstilstand skal du navigere til det i filstifinderen og højreklikke på det. Samme som ovenfor, klik på Egenskaber i menuen. Klik på fanen Kompatibilitet under Egenskaber. Klik på boksen, der siger "Kør dette program i kompatibilitetstilstand for:", og vælg den Windows-version, du vil bruge. Klik derefter på Anvend og prøv at køre din applikation. Der bør kun være en håndfuld muligheder, så prøv at gennemgå dem alle.
Aktiver 32-bit applikationer
For at være grundig kan du sørge for, at 32-bit applikationer er aktiveret i dine Windows-tjenester. For at gøre det skal du følge disse trin:
- Start med at få adgang til Windows-funktioner ved at skrive "Windows-funktioner" i Windows-søgefeltet og vælge de bedste matcher.
- Marker afkrydsningsfeltet, der læser Internet Information Services, og klik på OK. Det vil tage et minut at installere denne funktion
- Start IIS Manager ved at skrive "internetinformationstjenester" i Windows-søgefeltet og vælge det bedste match.
- Du vil se din computers navn i venstre vindue, udvide det og klikke på Application Pools.
- I det højre vindue skal du højreklikke på DefaultAppPools og vælge Avancerede indstillinger.
- Vælg "Aktiver 32-bit applikationer", og skift den fra Falsk til Sand.
- Klik på OK og genstart din computer.
Når du har fuldført dette, skal du prøve at køre programmet igen. Hvis din WOW64 fungerer korrekt, burde dette ikke være nødvendigt, men det har vist sig at være effektivt i nogle tilfælde.
Forkerte programfiler
Ældre programmer blander nogle gange installationen sammen, og deres filer kan ende i den forkerte mappe. Dette er særligt svært at opdage, fordi installationen ser ud til at være gået uden problemer.
På 64-bit versioner af Windows er alle 64-bit applikationer installeret i mappen "Program Files (x86)". Dette inkluderer alle filer relateret til det installerede program. Imidlertid ender 32-bit programmer i en separat mappe med titlen "Program Files." Hvis stierne er forkert kodet i installationen, kan programmet være installeret i den forkerte mappe.
Løsning af dette bør omfatte redigering af noget af installationskoden, men du behøver ikke at gøre det, og du kan muligvis ikke komme til kildekoden alligevel. For en provisorisk løsning skal du blot finde de installerede filer og kopiere dem manuelt til mappen "Program Files".
Barbering og en klipning, to bidder
Dette er blot nogle af de problemer, du kan stå over for, når du kører et 32-bit program. Men igen, det kan ikke understreges nok, at dette aldrig må ske, da der er truffet foranstaltninger for at forhindre det. Det er langt mere sandsynligt, at du har at gøre med et andet kompatibilitetsproblem. Hvis du er meget sikker på, at registret forårsager problemer, skal du starte med de løsninger, der er skitseret i artiklen.
Har nogen af metoderne i artiklen været nyttige? Hvad gjorde dig sikker på, at 32-bit registeret virkelig er det, der forårsager dit problem? Del din begrundelse i kommentarerne nedenfor.