రిజిస్ట్రీ లేదా PowerShellతో ప్రోగ్రామ్ అన్ఇన్స్టాల్
ఇన్స్టాల్ అయిన ప్రతి ప్రోగ్రామ్ తన అన్ఇన్స్టాల్ కమాండ్ను రిజిస్ట్రీలో నమోదు చేస్తుంది. సెట్టింగ్లు → అనువర్తనాలు నుంచి ప్రోగ్రామ్ పోనప్పుడు, లేదా నిశ్శబ్దంగా తీసేయాల్సినప్పుడు ఈ కమాండే పనికొస్తుంది.
Windows అన్ఇన్స్టాల్ కమాండ్లను ఎక్కడ ఉంచుతుంది
యూజర్లందరికీ ఇన్స్టాల్ అయిన ప్రోగ్రామ్లు HKLMలో, 64-బిట్ Windowsలో 32-బిట్ ప్రోగ్రామ్లు WOW6432Nodeలో, మీకు మాత్రమే ఇన్స్టాల్ అయినవి HKCUలో ఉంటాయి. ప్రతి ప్రోగ్రామ్కు ఒక సబ్కీ ఉంటుంది; అందులో DisplayName, DisplayVersion, UninstallString, తరచుగా QuietUninstallString ఉంటాయి.
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\UninstallHKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallPowerShellతో ఇన్స్టాల్ అయిన ప్రోగ్రామ్ల జాబితా
ఇది మూడు చోట్లనూ చదివి పేరు, వెర్షన్, అన్ఇన్స్టాల్ కమాండ్ చూపిస్తుంది.
$keys = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*", "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*", "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*"Get-ItemProperty $keys | Where-Object DisplayName | Select-Object DisplayName, DisplayVersion, UninstallString, QuietUninstallString | Sort-Object DisplayNameఅన్ఇన్స్టాల్ కమాండ్ రన్ చేయండి
QuietUninstallString ఉంటే, అది ఏమీ అడగకుండా ప్రోగ్రామ్ను తీసేస్తుంది. లేకపోతే UninstallString రన్ చేసి, ఇన్స్టాలర్ రకానికి తగిన సైలెంట్ స్విచ్ జోడించండి (NSISకు /S, Inno Setupకు /VERYSILENT). MSI ప్యాకేజ్లలో సబ్కీ పేరే ProductCode; msiexec /x దాన్ని తీసేస్తుంది.
msiexec /x {PRODUCT-CODE-GUID} /qn /norestart"C:\Program Files\App\uninstall.exe" /Sలేదా ఈ పనిని winget కు అప్పగించండి
winget ఇవే రిజిస్ట్రీ కీలలో ప్రోగ్రామ్లను కనుగొంటుంది, తాను ఇన్స్టాల్ చేయని వాటిని కూడా, వాటి అన్ఇన్స్టాలర్ను రన్ చేస్తుంది.
winget listwinget uninstall --name "App Name"అన్ఇన్స్టాలర్ లేనప్పుడు
అన్ఇన్స్టాలర్ ఫైల్ డిలీట్ అయి ఉంటే, అదే వెర్షన్ను మళ్లీ ఇన్స్టాల్ చేస్తే తరచుగా అది తిరిగి వస్తుంది; ఆ తర్వాత ప్రోగ్రామ్ మామూలుగా తొలగిపోతుంది. ప్రోగ్రామ్ ఫైల్లు ఇప్పటికే పోయి ఉంటేనే రిజిస్ట్రీ ఎంట్రీని చేతితో డిలీట్ చేయండి, డిలీట్ చేసే ముందు ఆ కీని ఎక్స్పోర్ట్ చేయండి.
తరచుగా అడిగే ప్రశ్నలు
ఒక ప్రోగ్రామ్ సెట్టింగ్లు → అనువర్తనాలులో ఎందుకు కనిపించడం లేదు?
సెట్టింగ్లు, DisplayName ఉండి సిస్టమ్ కాంపోనెంట్గా గుర్తించని ఎంట్రీలను మాత్రమే చూపిస్తాయి. పోర్టబుల్ ప్రోగ్రామ్లు ఏమీ నమోదు చేయవు; వాటి ఫోల్డర్ డిలీట్ చేస్తే పోతాయి.
MSI ProductCode అంటే ఏమిటి?
ఒక MSI ప్యాకేజ్ను గుర్తించే GUID. …\Uninstall కింద ప్రోగ్రామ్ సబ్కీ పేరు ఇదే; ExeAtlasలో ప్రతి MSI యాప్ సైలెంట్ ఇన్స్టాల్ పేజీలో ఇది చూపిస్తాం.