Har du någonsin undrat varför ditt favoritspel från Windows 95 bara inte verkar köras på Windows 7 men andra applikationer gör det? Vi har svaret åt dig, liksom några lösningar för hur du fixar det.
Var noga med att kolla in de tidigare artiklarna i denna Geek School-serie på Windows 7:
- Introduktion till How-To Geek School
- Uppgraderingar och migreringar
- Konfigurera enheter
- Hantera diskar
Håll koll på resten av serien, eftersom vi har många fler artiklar de närmaste veckorna.
Varför blir ansökningar oförenliga?
En av de vanligaste orsakerna är en Windows-funktion som heter Windows File Protection som först uppträdde i Windows Vista. Windows File Protection, som namnet antyder, skyddar kärnsystemfiler från att ersättas. Det gör detta genom att ändra säkerhets-ACL på filen så att endast TrustedInstaller-användaren får full tillgång till filen, vilket säkerställer att endast program som Windows Updates kan ersätta och redigera filen. I Windows 7 döptes funktionen om till Windows Resource Protection.
Säkerhetsförbättringar spelar också en stor roll i programkompatibilitet, mest notoriskt på grund av UAC (User Account Control), som inte fanns i Windows före Vista. På samma sätt ändrades katalogstrukturen, framför allt kring användarprofiler, i Windows Vista och bröt många applikationer som var designade för pre-longhorn-området. För att försöka åtgärda situationen implementerade de symboliska länkar (kallas ibland Junction Points i äldre versioner av Windows) som omdirigerade de gamla platserna till de nya.
Gör applikationer kompatibla
Bara för att en applikation är oförenlig med ditt operativsystem betyder det inte att du inte kan tvinga den att köra. Det första du vill göra är att identifiera om en app är oförenlig med Windows 7. Öppna Kontrollpanelen och klicka på kategorin Program för att göra detta. Här ser du Kör program gjorda för tidigare version av Windows hyperlänk. Klicka på det.
Expandera sedan avancerat och avmarkera alternativet för att automatiskt åtgärda fel och klicka sedan på nästa.
Klicka nu på bläddra och hitta filen du försöker köra och klicka sedan på nästa.
När den är skannad, se detaljerad information.
Här ser du de problem som hittats. Som du kan se är meddelandena inte alltid så användbara, men åtminstone vet du nu att din applikation kommer att ha problem med att köra.
Använda kompatibilitetsläge
Om programmet du försöker köra specifikt utformats för en tidigare version av Windows kan du försöka efterlikna den äldre miljön med kompatibilitetsläge. För att göra detta högerklickar du på det program du vill köra och väljer egenskaper från snabbmenyn.
Byt sedan över till kompatibilitetsfliken.
Här kommer du att kunna ställa in operativsystemmiljön. Du kan göra detta genom att markera kryssrutan och välja operativsystem i listrutan.
Använda applikationskompatibilitetsverktygssatsen
Applikationskompatibilitetsverktygets fulla kraft ligger utanför denna artikel, men det finns ett verktyg som du behöver veta om. Med Internet Explorer-kompatibilitetstestverktyget kan du testa dina lokala intranätwebbplatser för kompatibilitet med den kommande versionen av Internet Explorer. För att komma igång, fortsätt och starta den.
Klicka sedan på aktivera-knappen.
Öppna nu Internet Explorer, och det första du kommer att märka är ett litet urklipp i statusfältet. Om du klickar på den får du en meddelandefält som förklarar att webbläsaren är upptagen med att användas för att utvärdera kompatibilitet. Allt du behöver göra är att gå igenom dina webbsidor som vanligt. När du är klar stänger du Internet Explorer.
Nedan kan du se de problem som verktyget hittade på de webbsidor jag besökte. Du kan nu spara rapporten och skicka den till utvecklarna.
Tillämpningsbegränsningar
Nu när vi har hanterat applikationer som vi vill köra ur vägen, låt oss titta på hantera applikationer som vi inte vill köra. En av metoderna vi kan använda för att begränsa programvaran som körs i våra miljöer är att använda en policy för programvarubegränsning, även känd som en SRP. Även om detta normalt görs via Active Directory och grupppolicy, kommer vi att ställa in en SRP på vår lokala maskin.
Policyer för programvarubegränsning tillämpas på maskiner och inte på användare. För att skapa en policy öppnar du redigeraren för grupppolicyhantering och navigerar till:
Datorkonfiguration \ Windows-inställningar \ Säkerhetsinställningar \ Programvarubegränsningspolicyer
Det första du behöver göra är att faktiskt skapa en policy genom att högerklicka och välja New Software Restriction Policies.
Gå sedan in i säkerhetsnivåer. Det finns 3 säkerhetsnivåer.
- Ej tillåtet - Ingen programvara körs som standard, endast programvara som du uttryckligen tillåter kan köras.
- Grundläggande användare - Låter all programvara som inte kräver administratörsbehörighet köras.
- Obegränsad - All programvara körs, förutom programvara som du uttryckligen förnekar.
Högerklicka sedan på Obegränsad och gör den till standard.
Nu måste vi byta till regleravsnittet och lägga till en ny regel. Det finns fyra sorters regler.
- Hash - Kontrollerar en körbar mot en lista över förbjudna hash
- Certifikat - Använder digitala certifikat för att förhindra att applikationer körs
- Path - Förbjuder applikationer baserat på en helt kvalificerad sökväg
- Zon - använder alternativa dataströmmar för att se var filen hämtades från och förbjuder den förbjuden på den här informationen.
För detta exempel kommer en hashregel att fungera bra.
Klicka sedan på Bläddra-knappen och välj:
C: \ Windows \ System32 \ mspaint.exe
När du har tillämpat regeln, försök starta Paint.
Avbryta applikationer från att bara starta
En av de vanligaste metoderna som används av skriptkiddie-virusutvecklare är att få skadlig kod att köras automatiskt vid start. Ett enkelt sätt att hantera startobjekt är att använda ett verktyg som heter MSConfig. För att starta det, tryck på Windows + R-tangentbordskombinationen för att få upp en körruta, skriv sedan msconfig och tryck Enter.
När MSConfig öppnas växlar du över till fliken Startup. Här kan du enkelt inaktivera program som startar automatiskt genom att avmarkera dem.
Nyligen har utvecklare dock hittat sätt att dölja objekt från MSConfig och låta dem bara visas i registret. Det finns två platser i registret där Windows låter dig lägga till startobjekt:
- HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Run
- HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Run
Skillnaden är att poster i HKEY_LOCAL_MACHINE-kupan körs för alla användare på maskinen medan poster i HKEY_CURRENT_USER endast körs för den aktuella användaren.
Läxa
- Varför är 16-bitarsapplikationer stöds inte på x64-versioner av Windows 7?
Var noga med att hålla koll på vår nästa Geek School-artikel på måndag, där vi kommer att beskriva hur man hanterar IE-inställningar ur administratörssynpunkt.
Om du har några frågor kan du tweeta mig @taybgibb eller lämna bara en kommentar.