├── LICENSE ├── README.md ├── assets ├── community-pkg.gif ├── intro.gif └── translation_screen.png ├── latest.txt ├── scripts ├── Block Telemetry IPs via Hosts file.ps1 ├── Block Telemetry IPs via Windows Firewall.ps1 ├── Disable Services.ps1 ├── Disable Windows Defender.ps1 ├── Reinstall all built-in apps.ps1 ├── Remove OneDrive.ps1 ├── Remove default apps (Provisioned).ps1 ├── Remove default apps (Recommended).ps1 ├── Run Windows10Debloater (Community).ps1 ├── Telemetry of third-party apps (Template).ps1 ├── Unpin Startmenu Tiles.ps1 ├── packages.zip └── readme.txt └── src ├── Privatezilla.sln └── Privatezilla ├── App.config ├── AppIcon.ico ├── GitHubIcon.png ├── Helpers ├── RegistryHelper.cs ├── SettingsNode.cs ├── SetttingsBase.cs └── WindowsHelper.cs ├── Interfaces ├── IListView.cs └── ITreeNode.cs ├── Locales ├── Locale.Designer.cs ├── Locale.ar.resx ├── Locale.de.resx ├── Locale.es.resx ├── Locale.fr.resx ├── Locale.it.resx ├── Locale.resx ├── Locale.ru.resx ├── Locale.tr.resx └── Locale.zh.resx ├── MainWindow.Designer.cs ├── MainWindow.cs ├── MainWindow.resx ├── Privatezilla.csproj ├── Privatezilla.sln ├── Program.cs ├── Properties ├── AssemblyInfo.cs ├── Resources.Designer.cs ├── Resources.resx ├── Settings.Designer.cs └── Settings.settings ├── Settings ├── Apps │ ├── AccountInfo.cs │ ├── AppNotifications.cs │ ├── BackgroundApps.cs │ ├── Calendar.cs │ ├── Call.cs │ ├── CallHistory.cs │ ├── Camera.cs │ ├── CellularData.cs │ ├── Contacts.cs │ ├── DiagnosticInformation.cs │ ├── Documents.cs │ ├── Email.cs │ ├── EyeGaze.cs │ ├── FileSystem.cs │ ├── Messaging.cs │ ├── Microphone.cs │ ├── Motion.cs │ ├── Notifications.cs │ ├── OtherDevices.cs │ ├── Pictures.cs │ ├── Radios.cs │ ├── Tasks.cs │ ├── TrackingApps.cs │ └── Videos.cs ├── Bloatware │ ├── RemoveUWPAll.cs │ ├── RemoveUWPDefaults.cs │ └── UWPAppsEngine.cs ├── Cortana │ ├── DisableBing.cs │ ├── DisableCortana.cs │ └── UninstallCortana.cs ├── Defender │ └── DisableSmartScreenStore.cs ├── Edge │ ├── AutoFillCredits.cs │ ├── BlockEdgeRollout.cs │ ├── DisableSync.cs │ └── EdgeBackground.cs ├── Gaming │ └── GameBar.cs ├── Privacy │ ├── DiagnosticData.cs │ ├── DisableAds.cs │ ├── DisableBiometrics.cs │ ├── DisableCEIP.cs │ ├── DisableCompTelemetry.cs │ ├── DisableFeedback.cs │ ├── DisableHEIP.cs │ ├── DisableLocation.cs │ ├── DisableMSExperiments.cs │ ├── DisableTelemetry.cs │ ├── DisableTimeline.cs │ ├── DisableTips.cs │ ├── DisableTipsLockScreen.cs │ ├── DisableWiFi.cs │ ├── GetMoreOutOfWindows.cs │ ├── HandwritingData.cs │ ├── InstalledApps.cs │ ├── InventoryCollector.cs │ ├── SuggestedApps.cs │ └── SuggestedContent.cs ├── Security │ ├── DisablePassword.cs │ └── WindowsDRM.cs └── Updates │ ├── BlockMajorUpdates.cs │ ├── DisableSafeguards.cs │ ├── DisableUpdates.cs │ └── UpdatesSharing.cs ├── app.manifest ├── bin └── Debug │ ├── Privatezilla.exe │ ├── Privatezilla.exe.config │ ├── Privatezilla.pdb │ └── System.Management.Automation.dll ├── github.png ├── icon.ico ├── obj └── Debug │ ├── .NETFramework,Version=v4.8.AssemblyAttributes.cs │ ├── DesignTimeResolveAssemblyReferences.cache │ ├── DesignTimeResolveAssemblyReferencesInput.cache │ ├── Privatezilla.Locales.Locale.ar.resources │ ├── Privatezilla.Locales.Locale.de.resources │ ├── Privatezilla.Locales.Locale.es.resources │ ├── Privatezilla.Locales.Locale.fr.resources │ ├── Privatezilla.Locales.Locale.it.resources │ ├── Privatezilla.Locales.Locale.resources │ ├── Privatezilla.Locales.Locale.ru.resources │ ├── Privatezilla.Locales.Locale.tr.resources │ ├── Privatezilla.Locales.Locale.zh.resources │ ├── Privatezilla.MainWindow.resources │ ├── Privatezilla.Properties.Resources.resources │ ├── Privatezilla.csproj.AssemblyReference.cache │ ├── Privatezilla.csproj.CopyComplete │ ├── Privatezilla.csproj.CoreCompileInputs.cache │ ├── Privatezilla.csproj.FileListAbsolute.txt │ ├── Privatezilla.csproj.GenerateResource.cache │ ├── Privatezilla.csproj.SuggestedBindingRedirects.cache │ ├── Privatezilla.exe │ ├── Privatezilla.pdb │ ├── TempPE │ ├── Locales.Locale.Designer.cs.dll │ └── Properties.Resources.Designer.cs.dll │ ├── ar │ └── Privatezilla.resources.dll │ ├── de │ └── Privatezilla.resources.dll │ ├── es │ └── Privatezilla.resources.dll │ ├── fr │ └── Privatezilla.resources.dll │ ├── it │ └── Privatezilla.resources.dll │ ├── ru │ └── Privatezilla.resources.dll │ ├── tr │ └── Privatezilla.resources.dll │ └── zh │ └── Privatezilla.resources.dll └── privatezilla.ico /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Builtbybel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 |
3 | Privatezilla 4 |
5 | Privatezilla 6 |
7 |

8 |

Privatezilla is the simplest way to perform a quick privacy and security check of your Windows 10 copy. 9 |

10 | 11 |

12 | 13 | Latest GitHub release 14 | 15 | 16 | 17 | Downloads on GitHub 18 | 19 | 20 | 21 | GitHub last commit 23 | 24 | GitHub issues 26 | 27 |

28 | 29 |

30 | About • 31 | Download • 32 | Community package • 33 | Credits • 34 | Support 35 |

36 | 37 | ![intro](https://github.com/builtbybel/privatezilla/blob/master/assets/intro.gif) 38 | 39 | ## About 40 | 41 | Privatezilla integrates the most critical Windows 10 privacy settings and allows you to quickly perform a privacy check against these settings. Active settings are marked with the status "Configured" and indicates that your privacy is protected. The inactive ones are declared as "Not configured". All available settings (currently 60) can be enabled as well as disabled. 42 | 43 | ### System Requirements 44 | 45 | - Windows 10 (supports 1809 - 2009) 46 | 47 | ## Download 48 | 49 | - (GitHub) [Download](https://github.com/builtbybel/privatezilla/releases) 50 | 51 | ## Community package 52 | ### For advanced users only! 53 | 54 | The community package for Privatezilla adds support for several advanced scripting features based upon PowerShell, e.g. 55 | - Removal of specific pre-installed apps 56 | - Uninstall of OneDrive 57 | - Unping Startmenu tiles 58 | - Disable telemetry of third-party apps (E.g. CCleaner, Firefox, Dropbox, Microsoft Office) 59 | - Removal of Windows Defender (NOT recommended! I can highly recommend using Windows Defender on consumer versions of Windows 10) 60 | - Blocking telemetry via firewall and host files. Rules are provided by [crazy-max/WindowsSpyBlocker](https://github.com/crazy-max/WindowsSpyBlocker) 61 | - Support for all-in-one PowerShell debloating script [Windows10Debloater.ps1](https://github.com/Sycnex/Windows10Debloater) 62 | - New automation templates 63 | 64 | All objects (templates and scripts) included can be viewed [here](https://github.com/builtbybel/privatezilla/tree/master/scripts) 65 | 66 | ### How-to Install 67 | * **[Download](https://github.com/builtbybel/privatezilla/blob/master/scripts/packages.zip?raw=true)** the latest `packages.zip` file. 68 | * **Extract the package** to Privatezilla installation directory 69 | *(the extracted package must have the name scripts)* 70 | * **Restart Privatezilla** 71 | 72 | ### Intro of community package after Installing 73 | 74 | ![community-package](https://github.com/builtbybel/privatezilla/blob/master/assets/community-pkg.gif) 75 | 76 | ## Credits 77 | 78 | Since release 0.30 this project is partly based upon 79 | 80 | - https://github.com/t-richards/chemo 81 | 82 | More infos [here](https://www.builtbybel.com/blog/12-company-announcements/39-spydish-becomes-privatezilla-open-source) 83 | 84 | This software uses the following packages: 85 | 86 | - [Icon by bokehlicia](https://iconarchive.com/show/captiva-icons-by-bokehlicia/preferences-system-icon.html) 87 | 88 | ## Support 89 | If you like the tool please consider supporting me via PayPal. 90 | 91 | You can [buy me a coffee or donut, some banana, a shirt, Taycan or Tesla, the stars or whatever you want here](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=donate@builtbybel.com&lc=US&item_name=%20Builtbybel&no_note=0&cn=¤cy_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted) 92 | 93 | --- 94 | 95 | > [builtbybel](https://www.builtbybel.com)  ·  96 | > GitHub [@builtbybel](https://github.com/builtbybel)  ·  97 | > Twitter [@builtbybel](https://twitter.com/builtbybel) 98 | -------------------------------------------------------------------------------- /assets/community-pkg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/assets/community-pkg.gif -------------------------------------------------------------------------------- /assets/intro.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/assets/intro.gif -------------------------------------------------------------------------------- /assets/translation_screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/assets/translation_screen.png -------------------------------------------------------------------------------- /latest.txt: -------------------------------------------------------------------------------- 1 | 0.60.0 2 | -------------------------------------------------------------------------------- /scripts/Block Telemetry IPs via Hosts file.ps1: -------------------------------------------------------------------------------- 1 | ### This script blocks telemetry related domains via the hosts file and related IPs via Windows Firewall ### 2 | ###- Please note that adding these domains may break certain software like iTunes or Skype. As this issue is location dependent for some domains, they are not commented by default. The domains known to cause issues marked accordingly. ### 3 | ### Please see the related issue: 4 | ### https://github.com/W4RH4WK/Debloat-Windows-10/issues/79 5 | 6 | Import-Module -DisableNameChecking $PSScriptRoot\..\lib\force-mkdir.psm1 7 | 8 | Write-Output "Disabling telemetry via Group Policies" 9 | force-mkdir "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" 10 | Set-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" "AllowTelemetry" 0 11 | 12 | # Entries related to Akamai have been reported to cause issues with Widevine 13 | # DRM. 14 | 15 | Write-Output "Adding telemetry domains to hosts file" 16 | $hosts_file = "$env:systemroot\System32\drivers\etc\hosts" 17 | $domains = @( 18 | "184-86-53-99.deploy.static.akamaitechnologies.com" 19 | "a-0001.a-msedge.net" 20 | "a-0002.a-msedge.net" 21 | "a-0003.a-msedge.net" 22 | "a-0004.a-msedge.net" 23 | "a-0005.a-msedge.net" 24 | "a-0006.a-msedge.net" 25 | "a-0007.a-msedge.net" 26 | "a-0008.a-msedge.net" 27 | "a-0009.a-msedge.net" 28 | "a1621.g.akamai.net" 29 | "a1856.g2.akamai.net" 30 | "a1961.g.akamai.net" 31 | #"a248.e.akamai.net" # makes iTunes download button disappear (#43) 32 | "a978.i6g1.akamai.net" 33 | "a.ads1.msn.com" 34 | "a.ads2.msads.net" 35 | "a.ads2.msn.com" 36 | "ac3.msn.com" 37 | "ad.doubleclick.net" 38 | "adnexus.net" 39 | "adnxs.com" 40 | "ads1.msads.net" 41 | "ads1.msn.com" 42 | "ads.msn.com" 43 | "aidps.atdmt.com" 44 | "aka-cdn-ns.adtech.de" 45 | "a-msedge.net" 46 | "any.edge.bing.com" 47 | "a.rad.msn.com" 48 | "az361816.vo.msecnd.net" 49 | "az512334.vo.msecnd.net" 50 | "b.ads1.msn.com" 51 | "b.ads2.msads.net" 52 | "bingads.microsoft.com" 53 | "b.rad.msn.com" 54 | "bs.serving-sys.com" 55 | "c.atdmt.com" 56 | "cdn.atdmt.com" 57 | "cds26.ams9.msecn.net" 58 | "choice.microsoft.com" 59 | "choice.microsoft.com.nsatc.net" 60 | "compatexchange.cloudapp.net" 61 | "corpext.msitadfs.glbdns2.microsoft.com" 62 | "corp.sts.microsoft.com" 63 | "cs1.wpc.v0cdn.net" 64 | "db3aqu.atdmt.com" 65 | "df.telemetry.microsoft.com" 66 | "diagnostics.support.microsoft.com" 67 | "e2835.dspb.akamaiedge.net" 68 | "e7341.g.akamaiedge.net" 69 | "e7502.ce.akamaiedge.net" 70 | "e8218.ce.akamaiedge.net" 71 | "ec.atdmt.com" 72 | "fe2.update.microsoft.com.akadns.net" 73 | "feedback.microsoft-hohm.com" 74 | "feedback.search.microsoft.com" 75 | "feedback.windows.com" 76 | "flex.msn.com" 77 | "g.msn.com" 78 | "h1.msn.com" 79 | "h2.msn.com" 80 | "hostedocsp.globalsign.com" 81 | "i1.services.social.microsoft.com" 82 | "i1.services.social.microsoft.com.nsatc.net" 83 | "ipv6.msftncsi.com" 84 | "ipv6.msftncsi.com.edgesuite.net" 85 | "lb1.www.ms.akadns.net" 86 | "live.rads.msn.com" 87 | "m.adnxs.com" 88 | "msedge.net" 89 | "msftncsi.com" 90 | "msnbot-65-55-108-23.search.msn.com" 91 | "msntest.serving-sys.com" 92 | "oca.telemetry.microsoft.com" 93 | "oca.telemetry.microsoft.com.nsatc.net" 94 | "onesettings-db5.metron.live.nsatc.net" 95 | "pre.footprintpredict.com" 96 | "preview.msn.com" 97 | "rad.live.com" 98 | "rad.msn.com" 99 | "redir.metaservices.microsoft.com" 100 | "reports.wes.df.telemetry.microsoft.com" 101 | "schemas.microsoft.akadns.net" 102 | "secure.adnxs.com" 103 | "secure.flashtalking.com" 104 | "services.wes.df.telemetry.microsoft.com" 105 | "settings-sandbox.data.microsoft.com" 106 | #"settings-win.data.microsoft.com" # may cause issues with Windows Updates 107 | "sls.update.microsoft.com.akadns.net" 108 | #"sls.update.microsoft.com.nsatc.net" # may cause issues with Windows Updates 109 | "sqm.df.telemetry.microsoft.com" 110 | "sqm.telemetry.microsoft.com" 111 | "sqm.telemetry.microsoft.com.nsatc.net" 112 | "ssw.live.com" 113 | "static.2mdn.net" 114 | "statsfe1.ws.microsoft.com" 115 | "statsfe2.update.microsoft.com.akadns.net" 116 | "statsfe2.ws.microsoft.com" 117 | "survey.watson.microsoft.com" 118 | "telecommand.telemetry.microsoft.com" 119 | "telecommand.telemetry.microsoft.com.nsatc.net" 120 | "telemetry.appex.bing.net" 121 | "telemetry.microsoft.com" 122 | "telemetry.urs.microsoft.com" 123 | "vortex-bn2.metron.live.com.nsatc.net" 124 | "vortex-cy2.metron.live.com.nsatc.net" 125 | "vortex.data.microsoft.com" 126 | "vortex-sandbox.data.microsoft.com" 127 | "vortex-win.data.microsoft.com" 128 | "cy2.vortex.data.microsoft.com.akadns.net" 129 | "watson.live.com" 130 | "watson.microsoft.com" 131 | "watson.ppe.telemetry.microsoft.com" 132 | "watson.telemetry.microsoft.com" 133 | "watson.telemetry.microsoft.com.nsatc.net" 134 | "wes.df.telemetry.microsoft.com" 135 | "win10.ipv6.microsoft.com" 136 | "www.bingads.microsoft.com" 137 | "www.go.microsoft.akadns.net" 138 | "www.msftncsi.com" 139 | "client.wns.windows.com" 140 | #"wdcp.microsoft.com" # may cause issues with Windows Defender Cloud-based protection 141 | #"dns.msftncsi.com" # This causes Windows to think it doesn't have internet 142 | #"storeedgefd.dsx.mp.microsoft.com" # breaks Windows Store 143 | "wdcpalt.microsoft.com" 144 | "settings-ssl.xboxlive.com" 145 | "settings-ssl.xboxlive.com-c.edgekey.net" 146 | "settings-ssl.xboxlive.com-c.edgekey.net.globalredir.akadns.net" 147 | "e87.dspb.akamaidege.net" 148 | "insiderservice.microsoft.com" 149 | "insiderservice.trafficmanager.net" 150 | "e3843.g.akamaiedge.net" 151 | "flightingserviceweurope.cloudapp.net" 152 | #"sls.update.microsoft.com" # may cause issues with Windows Updates 153 | "static.ads-twitter.com" # may cause issues with Twitter login 154 | "www-google-analytics.l.google.com" 155 | "p.static.ads-twitter.com" # may cause issues with Twitter login 156 | "hubspot.net.edge.net" 157 | "e9483.a.akamaiedge.net" 158 | 159 | #"www.google-analytics.com" 160 | #"padgead2.googlesyndication.com" 161 | #"mirror1.malwaredomains.com" 162 | #"mirror.cedia.org.ec" 163 | "stats.g.doubleclick.net" 164 | "stats.l.doubleclick.net" 165 | "adservice.google.de" 166 | "adservice.google.com" 167 | "googleads.g.doubleclick.net" 168 | "pagead46.l.doubleclick.net" 169 | "hubspot.net.edgekey.net" 170 | "insiderppe.cloudapp.net" # Feedback-Hub 171 | "livetileedge.dsx.mp.microsoft.com" 172 | 173 | # extra 174 | "fe2.update.microsoft.com.akadns.net" 175 | "s0.2mdn.net" 176 | "statsfe2.update.microsoft.com.akadns.net" 177 | "survey.watson.microsoft.com" 178 | "view.atdmt.com" 179 | "watson.microsoft.com" 180 | "watson.ppe.telemetry.microsoft.com" 181 | "watson.telemetry.microsoft.com" 182 | "watson.telemetry.microsoft.com.nsatc.net" 183 | "wes.df.telemetry.microsoft.com" 184 | "m.hotmail.com" 185 | 186 | # can cause issues with Skype (#79) or other services (#171) 187 | "apps.skype.com" 188 | "c.msn.com" 189 | # "login.live.com" # prevents login to outlook and other live apps 190 | "pricelist.skype.com" 191 | "s.gateway.messenger.live.com" 192 | "ui.skype.com" 193 | ) 194 | Write-Output "" | Out-File -Encoding ASCII -Append $hosts_file 195 | foreach ($domain in $domains) { 196 | if (-Not (Select-String -Path $hosts_file -Pattern $domain)) { 197 | Write-Output "0.0.0.0 $domain" | Out-File -Encoding ASCII -Append $hosts_file 198 | } 199 | } 200 | 201 | Write-Output "Adding telemetry ips to firewall" 202 | $ips = @( 203 | "134.170.30.202" 204 | "137.116.81.24" 205 | "157.56.106.189" 206 | "184.86.53.99" 207 | "2.22.61.43" 208 | "2.22.61.66" 209 | "204.79.197.200" 210 | "23.218.212.69" 211 | "65.39.117.230" 212 | "65.52.108.33" # Causes problems with Microsoft Store 213 | "65.55.108.23" 214 | "64.4.54.254" 215 | ) 216 | Remove-NetFirewallRule -DisplayName "Privatezilla Block Telemetry IPs" -ErrorAction SilentlyContinue 217 | New-NetFirewallRule -DisplayName "Privatezilla Block Telemetry IPs" -Direction Outbound ` 218 | -Action Block -RemoteAddress ([string[]]$ips) 219 | -------------------------------------------------------------------------------- /scripts/Block Telemetry IPs via Windows Firewall.ps1: -------------------------------------------------------------------------------- 1 | # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 | # Rules are provided by crazy-max/WindowsSpyBlocker 3 | # https://github.com/crazy-max/WindowsSpyBlocker/blob/master/data/firewall/spy.txt 4 | # Last updated on 23 Jan, 2020 5 | # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6 | ### This script blocks Microsoft telemetry IPs via Windows Firewall ### 7 | ### This script will not block Windows updates and third party applications from Microsoft like OneDrive, Skype, Live etc. 8 | Write-Output "Adding telemetry IPs to firewall" 9 | $ips = @( 10 | "13.68.31.193" 11 | "13.66.56.243" 12 | "13.68.82.8" 13 | "13.70.180.171" 14 | "13.73.26.107" 15 | "13.78.130.220" 16 | "13.78.232.226" 17 | "13.78.233.133" 18 | "13.88.28.53" 19 | "13.92.194.212" 20 | "20.44.86.43" 21 | "20.189.74.153" 22 | "23.99.49.121" 23 | "23.102.4.253" 24 | "23.102.21.4" 25 | "23.103.182.126" 26 | "40.68.222.212" 27 | "40.69.153.67" 28 | "40.70.184.83" 29 | "40.70.220.248" 30 | "40.70.221.249" 31 | "40.77.228.47" 32 | "40.77.228.87" 33 | "40.77.228.92" 34 | "40.77.232.101" 35 | "40.79.85.125" 36 | "40.90.221.9" 37 | "40.115.3.210" 38 | "40.115.119.185" 39 | "40.119.211.203" 40 | "40.124.34.70" 41 | "51.140.40.236" 42 | "51.140.157.153" 43 | "51.143.111.7" 44 | "51.143.111.81" 45 | "52.114.6.46" 46 | "52.114.6.47" 47 | "52.114.7.36" 48 | "52.114.7.37" 49 | "52.114.7.38" 50 | "52.114.7.39" 51 | "52.114.32.5" 52 | "52.114.32.6" 53 | "52.114.32.7" 54 | "52.114.32.8" 55 | "52.114.32.24" 56 | "52.114.32.25" 57 | "52.114.36.1" 58 | "52.114.36.2" 59 | "52.114.36.3" 60 | "52.114.36.4" 61 | "52.114.74.43" 62 | "52.114.74.44" 63 | "52.114.74.45" 64 | "52.114.75.78" 65 | "52.114.75.79" 66 | "52.114.75.149" 67 | "52.114.75.150" 68 | "52.114.76.34" 69 | "52.114.76.35" 70 | "52.114.76.37" 71 | "52.114.77.33" 72 | "52.114.77.34" 73 | "52.114.77.137" 74 | "52.114.77.164" 75 | "52.114.88.19" 76 | "52.114.88.20" 77 | "52.114.88.21" 78 | "52.114.88.22" 79 | "52.114.88.28" 80 | "52.114.88.29" 81 | "52.114.128.7" 82 | "52.114.128.8" 83 | "52.114.128.9" 84 | "52.114.128.10" 85 | "52.114.128.43" 86 | "52.114.128.44" 87 | "52.114.128.58" 88 | "52.114.132.14" 89 | "52.114.132.20" 90 | "52.114.132.21" 91 | "52.114.132.22" 92 | "52.114.132.23" 93 | "52.114.132.73" 94 | "52.114.132.74" 95 | "52.114.158.50" 96 | "52.114.158.51" 97 | "52.114.158.52" 98 | "52.114.158.53" 99 | "52.114.158.91" 100 | "52.114.158.92" 101 | "52.114.158.102" 102 | "52.138.204.217" 103 | "52.138.216.83" 104 | "52.155.172.105" 105 | "52.157.234.37" 106 | "52.158.208.111" 107 | "52.164.241.205" 108 | "52.169.189.83" 109 | "52.170.83.19" 110 | "52.174.22.246" 111 | "52.178.147.240" 112 | "52.178.151.212" 113 | "52.178.178.16" 114 | "52.178.223.23" 115 | "52.183.114.173" 116 | "52.229.39.152" 117 | "52.230.85.180" 118 | "52.236.42.239" 119 | "52.236.43.202" 120 | "65.52.100.7" 121 | "65.52.100.9" 122 | "65.52.100.11" 123 | "65.52.100.91" 124 | "65.52.100.92" 125 | "65.52.100.93" 126 | "65.52.100.94" 127 | "65.52.161.64" 128 | "65.55.29.238" 129 | "65.55.44.51" 130 | "65.55.44.54" 131 | "65.55.44.108" 132 | "65.55.44.109" 133 | "65.55.83.120" 134 | "65.55.113.11" 135 | "65.55.113.12" 136 | "65.55.113.13" 137 | "65.55.176.90" 138 | "65.55.252.43" 139 | "65.55.252.63" 140 | "65.55.252.70" 141 | "65.55.252.71" 142 | "65.55.252.72" 143 | "65.55.252.93" 144 | "65.55.252.190" 145 | "65.55.252.202" 146 | "66.119.147.131" 147 | "104.41.207.73" 148 | "104.43.137.66" 149 | "104.43.139.21" 150 | "104.43.140.223" 151 | "104.43.228.53" 152 | "104.43.228.202" 153 | "104.43.237.169" 154 | "104.45.11.195" 155 | "104.45.214.112" 156 | "104.46.1.211" 157 | "104.46.38.64" 158 | "104.210.4.77" 159 | "104.210.40.87" 160 | "104.210.212.243" 161 | "104.214.35.244" 162 | "104.214.78.152" 163 | "131.253.6.87" 164 | "131.253.6.103" 165 | "131.253.40.37" 166 | "134.170.30.202" 167 | "134.170.30.203" 168 | "134.170.30.204" 169 | "134.170.30.221" 170 | "134.170.52.151" 171 | "134.170.235.16" 172 | "157.56.74.250" 173 | "157.56.91.77" 174 | "157.56.106.184" 175 | "157.56.106.185" 176 | "157.56.106.189" 177 | "157.56.113.217" 178 | "157.56.121.89" 179 | "157.56.124.87" 180 | "157.56.149.250" 181 | "157.56.194.72" 182 | "157.56.194.73" 183 | "157.56.194.74" 184 | "168.61.24.141" 185 | "168.61.146.25" 186 | "168.61.149.17" 187 | "168.61.172.71" 188 | "168.62.187.13" 189 | "168.63.100.61" 190 | "168.63.108.233" 191 | "191.236.155.80" 192 | "191.237.218.239" 193 | "191.239.50.18" 194 | "191.239.50.77" 195 | "191.239.52.100" 196 | "191.239.54.52" 197 | "207.68.166.254" 198 | ) 199 | Remove-NetFirewallRule -DisplayName "Privatezilla Microsoft Telemetry Block" -ErrorAction SilentlyContinue 200 | New-NetFirewallRule -DisplayName "Privatezilla Microsoft Telemetry Block" -Direction Outbound ` 201 | -Action Block -RemoteAddress ([string[]]$ips) 202 | -------------------------------------------------------------------------------- /scripts/Disable Services.ps1: -------------------------------------------------------------------------------- 1 | ### (Silent) This script disables unwanted Windows services. ### 2 | ### If you do not want to disable certain services comment out the corresponding in code section and save the script as a new preset script.### 3 | ### Author of this script: https://github.com/W4RH4WK/Debloat-Windows-10 4 | 5 | $services = @( 6 | "diagnosticshub.standardcollector.service" # Microsoft (R) Diagnostics Hub Standard Collector Service 7 | "DiagTrack" # Diagnostics Tracking Service 8 | "dmwappushservice" # WAP Push Message Routing Service (see known issues) 9 | "lfsvc" # Geolocation Service 10 | "MapsBroker" # Downloaded Maps Manager 11 | "NetTcpPortSharing" # Net.Tcp Port Sharing Service 12 | "RemoteAccess" # Routing and Remote Access 13 | "RemoteRegistry" # Remote Registry 14 | "SharedAccess" # Internet Connection Sharing (ICS) 15 | "TrkWks" # Distributed Link Tracking Client 16 | "WbioSrvc" # Windows Biometric Service (required for Fingerprint reader / facial detection) 17 | #"WlanSvc" # WLAN AutoConfig 18 | "WMPNetworkSvc" # Windows Media Player Network Sharing Service 19 | "wscsvc" # Windows Security Center Service 20 | #"WSearch" # Windows Search 21 | "XblAuthManager" # Xbox Live Auth Manager 22 | "XblGameSave" # Xbox Live Game Save Service 23 | "XboxNetApiSvc" # Xbox Live Networking Service 24 | "ndu" # Windows Network Data Usage Monitor 25 | # Services which cannot be disabled 26 | #"WdNisSvc" 27 | ) 28 | 29 | foreach ($service in $services) { 30 | Write-Output "Trying to disable $service" 31 | Get-Service -Name $service | Set-Service -StartupType Disabled 32 | } 33 | -------------------------------------------------------------------------------- /scripts/Disable Windows Defender.ps1: -------------------------------------------------------------------------------- 1 | ### This script disables Windows Defender. ### 2 | ###- Run it once (will throw errors), then reboot, run it again (this time no errors should occur) followed by another reboot.### 3 | ### Author of this script: https://github.com/W4RH4WK/Debloat-Windows-10 4 | 5 | Import-Module -DisableNameChecking $PSScriptRoot\..\lib\force-mkdir.psm1 6 | Import-Module -DisableNameChecking $PSScriptRoot\..\lib\take-own.psm1 7 | 8 | Write-Output "Elevating priviledges for this process" 9 | do {} until (Elevate-Privileges SeTakeOwnershipPrivilege) 10 | 11 | $tasks = @( 12 | "\Microsoft\Windows\Windows Defender\Windows Defender Cache Maintenance" 13 | "\Microsoft\Windows\Windows Defender\Windows Defender Cleanup" 14 | "\Microsoft\Windows\Windows Defender\Windows Defender Scheduled Scan" 15 | "\Microsoft\Windows\Windows Defender\Windows Defender Verification" 16 | ) 17 | 18 | foreach ($task in $tasks) { 19 | $parts = $task.split('\') 20 | $name = $parts[-1] 21 | $path = $parts[0..($parts.length-2)] -join '\' 22 | 23 | Write-Output "Trying to disable scheduled task $name" 24 | Disable-ScheduledTask -TaskName "$name" -TaskPath "$path" 25 | } 26 | 27 | Write-Output "Disabling Windows Defender via Group Policies" 28 | force-mkdir "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows Defender" 29 | Set-ItemProperty "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows Defender" "DisableAntiSpyware" 1 30 | Set-ItemProperty "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows Defender" "DisableRoutinelyTakingAction" 1 31 | force-mkdir "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows Defender\Real-Time Protection" 32 | Set-ItemProperty "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows Defender\Real-Time Protection" "DisableRealtimeMonitoring" 1 33 | 34 | Write-Output "Disabling Windows Defender Services" 35 | Takeown-Registry("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinDefend") 36 | Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\WinDefend" "Start" 4 37 | Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\WinDefend" "AutorunsDisabled" 3 38 | Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\WdNisSvc" "Start" 4 39 | Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\WdNisSvc" "AutorunsDisabled" 3 40 | Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Sense" "Start" 4 41 | Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Sense" "AutorunsDisabled" 3 42 | 43 | Write-Output "Removing Windows Defender context menu item" 44 | Set-Item "HKLM:\SOFTWARE\Classes\CLSID\{09A47860-11B0-4DA5-AFA5-26D86198A780}\InprocServer32" "" 45 | 46 | Write-Output "Removing Windows Defender GUI / tray from autorun" 47 | Remove-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "WindowsDefender" -ea 0 48 | -------------------------------------------------------------------------------- /scripts/Reinstall all built-in apps.ps1: -------------------------------------------------------------------------------- 1 | ### This script will reinstall all built-in modern apps in a single step ### 2 | ###- This command will take a few moments and will reinstall all built-in apps. If you receive any error message, ignore it. You may need to restart the computer to take effect 3 | Get-AppxPackage -allusers | foreach {Add-AppxPackage -register "$($_.InstallLocation)\appxmanifest.xml" -DisableDevelopmentMode} -------------------------------------------------------------------------------- /scripts/Remove OneDrive.ps1: -------------------------------------------------------------------------------- 1 | ### This script will remove and disable OneDrive integration. ### 2 | ### Author of this script: https://github.com/W4RH4WK/Debloat-Windows-10 3 | 4 | Import-Module -DisableNameChecking $PSScriptRoot\..\lib\force-mkdir.psm1 5 | Import-Module -DisableNameChecking $PSScriptRoot\..\lib\take-own.psm1 6 | 7 | Write-Output "Kill OneDrive process" 8 | taskkill.exe /F /IM "OneDrive.exe" 9 | taskkill.exe /F /IM "explorer.exe" 10 | 11 | Write-Output "Remove OneDrive" 12 | if (Test-Path "$env:systemroot\System32\OneDriveSetup.exe") { 13 | & "$env:systemroot\System32\OneDriveSetup.exe" /uninstall 14 | } 15 | if (Test-Path "$env:systemroot\SysWOW64\OneDriveSetup.exe") { 16 | & "$env:systemroot\SysWOW64\OneDriveSetup.exe" /uninstall 17 | } 18 | 19 | Write-Output "Removing OneDrive leftovers" 20 | Remove-Item -Recurse -Force -ErrorAction SilentlyContinue "$env:localappdata\Microsoft\OneDrive" 21 | Remove-Item -Recurse -Force -ErrorAction SilentlyContinue "$env:programdata\Microsoft OneDrive" 22 | Remove-Item -Recurse -Force -ErrorAction SilentlyContinue "$env:systemdrive\OneDriveTemp" 23 | # check if directory is empty before removing: 24 | If ((Get-ChildItem "$env:userprofile\OneDrive" -Recurse | Measure-Object).Count -eq 0) { 25 | Remove-Item -Recurse -Force -ErrorAction SilentlyContinue "$env:userprofile\OneDrive" 26 | } 27 | 28 | Write-Output "Disable OneDrive via Group Policies" 29 | force-mkdir "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\OneDrive" 30 | Set-ItemProperty "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\OneDrive" "DisableFileSyncNGSC" 1 31 | 32 | Write-Output "Remove Onedrive from explorer sidebar" 33 | New-PSDrive -PSProvider "Registry" -Root "HKEY_CLASSES_ROOT" -Name "HKCR" 34 | mkdir -Force "HKCR:\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" 35 | Set-ItemProperty "HKCR:\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" "System.IsPinnedToNameSpaceTree" 0 36 | mkdir -Force "HKCR:\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" 37 | Set-ItemProperty "HKCR:\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" "System.IsPinnedToNameSpaceTree" 0 38 | Remove-PSDrive "HKCR" 39 | 40 | # Thank you Matthew Israelsson 41 | Write-Output "Removing run hook for new users" 42 | reg load "hku\Default" "C:\Users\Default\NTUSER.DAT" 43 | reg delete "HKEY_USERS\Default\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "OneDriveSetup" /f 44 | reg unload "hku\Default" 45 | 46 | Write-Output "Removing startmenu entry" 47 | Remove-Item -Force -ErrorAction SilentlyContinue "$env:userprofile\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk" 48 | 49 | Write-Output "Removing scheduled task" 50 | Get-ScheduledTask -TaskPath '\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false 51 | 52 | Write-Output "Restarting explorer" 53 | Start-Process "explorer.exe" 54 | 55 | Write-Output "Waiting for explorer to complete loading" 56 | Start-Sleep 10 57 | 58 | Write-Output "Removing additional OneDrive leftovers" 59 | foreach ($item in (Get-ChildItem "$env:WinDir\WinSxS\*onedrive*")) { 60 | Takeown-Folder $item.FullName 61 | Remove-Item -Recurse -Force $item.FullName 62 | } 63 | -------------------------------------------------------------------------------- /scripts/Remove default apps (Provisioned).ps1: -------------------------------------------------------------------------------- 1 | ### This script allows you to remove unwanted Apps that come with Windows within a GUI. ### 2 | ### Press if you want to select and remove mutliple apps at the same time ### 3 | ### INFO: Provisoned apps are applications that Windows will attempt to reinstall during updates, or when a new user account is made. If you remove these you will have to install them manually through the Store app when making new accounts. 4 | Get-AppxProvisionedPackage -online | Out-GridView -PassThru | Remove-AppxProvisionedPackage -online -------------------------------------------------------------------------------- /scripts/Remove default apps (Recommended).ps1: -------------------------------------------------------------------------------- 1 | ### This script allows you to remove unwanted Apps that come with Windows within a GUI. ### 2 | ### Press if you want to select and remove mutliple apps at the same time 3 | Get-AppxPackage -AllUsers | Out-GridView -PassThru | Remove-AppxPackage -------------------------------------------------------------------------------- /scripts/Telemetry of third-party apps (Template).ps1: -------------------------------------------------------------------------------- 1 | ### This is a template which will block and disable telemetry features of the following apps: ### 2 | ###- Block Google Chrome Software Reporter Tool 3 | # The Software Reporter Tool (also known as Chrome Cleanup Tool and Software Removal Tool, the executable file is software_reporter_tool.exe), is a tool that Google distributes with the Google Chrome web browser. 4 | # It is a part of Google Chrome's Clean up Computer feature which scans your computer for harmful software. If this tool finds any harmful app or extension which can cause problems, it removes them from your computer. 5 | # Anything that interferes with a user's browsing experience may be removed by the tool. 6 | # Its disadvantages, high CPU load or privacy implications, may be reason enough to block it from running. This script will disable the software_reporter_tool.exe in a more cleaner way using Image File Execution Options Debugger value. 7 | # Setting this value to an executable designed to kill processes disables it. Chrome won't re-enable it with almost each update. Next to this, it will also be disabled per default in Registry. 8 | New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Google\Chrome" -Name ChromeCleanupEnabled -Type String -Value 0 -Force 9 | New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Google\Chrome" -Name ChromeCleanupReportingEnabled -Type String -Value 0 -Force 10 | New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Google\Chrome" -Name MetricsReportingEnabled -Type String -Value 0 -Force 11 | # This will disable the software_reporter_tool.exe in a more cleaner way using Image File Execution Options Debugger value. 12 | # Setting this value to an executable designed to kill processes disables it. Chrome won't re-enable it with almost each update. 13 | If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\software_reporter_tool.exe")) { 14 | New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\software_reporter_tool.exe" -Force | Out-Null 15 | Write-Output "Google Chrome Software Reporter Tool has been successfully blocked." 16 | } 17 | Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\software_reporter_tool.exe" -Name "Debugger" -Type String -Value %windir%\System32\taskkill.exe -Force 18 | 19 | ###- Disable Mozilla Firefox telemetry 20 | # Firefox 75 comes with a new telemetry agent that sends information about your operating system and your default browser to Firefox every day. 21 | # The information collected is sent as a background telemetry ping every 24 hours to Mozilla. 22 | # Mozilla has introduced a Windows group policy that prevents the default-browser-agent.exe executable from sending your default browser info. 23 | New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Mozilla\Firefox" -Name DisableTelemetry -Type DWord -Value 1 -Force 24 | New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Mozilla\Firefox" -Name DisableDefaultBrowserAgent -Type DWord -Value 1 -Force 25 | 26 | ###- Disable CCleaner Monitoring 27 | # Since Avast acquired Piriform, the popular system cleaning software CCleaner has become bloated with malware, bundled PUPs(potentially unwanted programs), and an alarming amount of pop-up ads. 28 | # If you're highly dependent on CCleaner you can disable with this script the CCleaner Active Monitoring ("Active Monitoring" feature has been renamed with v5.46 to "Smart Cleaning"), 29 | # automatic Update check and download function, trial offer notifications, the new integrated Software Updater and the privacy option to "Help Improve CCleaner by sending anonymous usage data". 30 | Stop-Process -name CCleaner* 31 | New-ItemProperty -Path "HKCU:\Software\Piriform\CCleaner" -Name Monitoring -Type String -Value 0 -Force 32 | New-ItemProperty -Path "HKCU:\Software\Piriform\CCleaner" -Name HelpImproveCCleaner -Type String -Value 0 -Force 33 | New-ItemProperty -Path "HKCU:\Software\Piriform\CCleaner" -Name SystemMonitoring -Type String -Value 0 -Force 34 | New-ItemProperty -Path "HKCU:\Software\Piriform\CCleaner" -Name UpdateAuto -Type String -Value 0 -Force 35 | New-ItemProperty -Path "HKCU:\Software\Piriform\CCleaner" -Name UpdateCheck -Type String -Value 0 -Force 36 | New-ItemProperty -Path "HKCU:\Software\Piriform\CCleaner" -Name CheckTrialOffer -Type String -Value 0 -Force 37 | New-ItemProperty -Path "HKLM:\Software\Piriform\CCleaner" -Name (Cfg)GetIpmForTrial -Type String -Value 0 -Force 38 | New-ItemProperty -Path "HKLM:\Software\Piriform\CCleaner" -Name (Cfg)SoftwareUpdater -Type String -Value 0 -Force 39 | New-ItemProperty -Path "HKLM:\Software\Piriform\CCleaner" -Name (Cfg)SoftwareUpdaterIpm -Type String -Value 0 -Force 40 | Get-ScheduledTask -TaskName "CCleaner Update" | Disable-ScheduledTask 41 | 42 | ###- Disable Dropbox Update service 43 | # This will disable Dropbox auto update service 44 | Get-ScheduledTask -TaskName "DropboxUpdateTaskMachineCore" | Disable-ScheduledTask 45 | Get-ScheduledTask -TaskName "DropboxUpdateTaskMachineUA" | Disable-ScheduledTask 46 | 47 | ###- Disable Google Update service 48 | # This will disable Google update service 49 | Get-ScheduledTask -TaskName "GoogleUpdateTaskMachineCore" | Disable-ScheduledTask 50 | Get-ScheduledTask -TaskName "GoogleUpdateTaskMachineUA" | Disable-ScheduledTask 51 | 52 | ###- Disable Media Player telemetry 53 | # This will disable Media Player telemetry 54 | New-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\MediaPlayer\Preferences" -Name UsageTracking -Type DWord -Value 0 -Force 55 | New-ItemProperty -Path "HKCU:\Software\Policies\Microsoft\WindowsMediaPlayer" -Name PreventCDDVDMetadataRetrieval -Type DWord -Value 1 -Force 56 | New-ItemProperty -Path "HKCU:\Software\Policies\Microsoft\WindowsMediaPlayer" -Name PreventMusicFileMetadataRetrieval -Type DWord -Value 1 -Force 57 | New-ItemProperty -Path "HKCU:\Software\Policies\Microsoft\WindowsMediaPlayer" -Name PreventRadioPresetsRetrieval -Type DWord -Value 0 -Force 58 | New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\WMDRM" -Name DisableOnline -Type DWord -Value 1 -Force 59 | Set-Service WMPNetworkSvc -StartupType Disabled 60 | 61 | ###- Disable Microsoft Office telemetry 62 | # This will disable Microsoft Office telemetry (supports Microsoft Office 2013 and 2016) 63 | Get-ScheduledTask -TaskName "OfficeTelemetryAgentFallBack2016" | Disable-ScheduledTask 64 | Get-ScheduledTask -TaskName "OfficeTelemetryAgentLogOn2016" | Disable-ScheduledTask 65 | New-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Office\15.0\osm" -Name Enablelogging -Type DWord -Value 0 -Force 66 | New-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Office\15.0\osm" -Name EnableUpload -Type DWord -Value 0 -Force 67 | New-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Office\16.0\osm" -Name Enablelogging -Type DWord -Value 0 -Force 68 | New-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Office\16.0\osm" -Name EnableUpload -Type DWord -Value 0 -Force -------------------------------------------------------------------------------- /scripts/Unpin Startmenu Tiles.ps1: -------------------------------------------------------------------------------- 1 | # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 | # Script is provided by an user from superuser.com 3 | # Compatibility: Tested on Windows 10, version 1903, 1909, 2004 4 | # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5 | ### This script will clean Windows 10s start menu from all the default pinned apps (live tiles) that you are using. ### 6 | ### It will remove all titles for the current logged user, plus it will optionally do the same for all new users accounts created on the computer. 7 | 8 | $START_MENU_LAYOUT = @" 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "@ 18 | 19 | $layoutFile="C:\Windows\StartMenuLayout.xml" 20 | 21 | #Delete layout file if it already exists 22 | If(Test-Path $layoutFile) 23 | { 24 | Remove-Item $layoutFile 25 | } 26 | 27 | #Creates the blank layout file 28 | $START_MENU_LAYOUT | Out-File $layoutFile -Encoding ASCII 29 | 30 | $regAliases = @("HKLM", "HKCU") 31 | 32 | #Assign the start layout and force it to apply with "LockedStartLayout" at both the machine and user level 33 | foreach ($regAlias in $regAliases){ 34 | $basePath = $regAlias + ":\SOFTWARE\Policies\Microsoft\Windows" 35 | $keyPath = $basePath + "\Explorer" 36 | IF(!(Test-Path -Path $keyPath)) { 37 | New-Item -Path $basePath -Name "Explorer" 38 | } 39 | Set-ItemProperty -Path $keyPath -Name "LockedStartLayout" -Value 1 40 | Set-ItemProperty -Path $keyPath -Name "StartLayoutFile" -Value $layoutFile 41 | } 42 | 43 | #Restart Explorer, open the start menu (necessary to load the new layout), and give it a few seconds to process 44 | Stop-Process -name explorer 45 | Start-Sleep -s 5 46 | $wshell = New-Object -ComObject wscript.shell; $wshell.SendKeys('^{ESCAPE}') 47 | Start-Sleep -s 5 48 | 49 | #Enable the ability to pin items again by disabling "LockedStartLayout" 50 | foreach ($regAlias in $regAliases){ 51 | $basePath = $regAlias + ":\SOFTWARE\Policies\Microsoft\Windows" 52 | $keyPath = $basePath + "\Explorer" 53 | Set-ItemProperty -Path $keyPath -Name "LockedStartLayout" -Value 0 54 | } 55 | 56 | #Restart Explorer and delete the layout file 57 | Stop-Process -name explorer 58 | 59 | # Uncomment the next line to make clean start menu default for all new users 60 | #Import-StartLayout -LayoutPath $layoutFile -MountPath $env:SystemDrive\ 61 | 62 | Remove-Item $layoutFile -------------------------------------------------------------------------------- /scripts/packages.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/scripts/packages.zip -------------------------------------------------------------------------------- /scripts/readme.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- 2 | This package is ONLY compatible with version 0.41 of Privatezilla and higher! 3 | You can download the latest version here: https://github.com/builtbybel/privatezilla/releases 4 | -------------------------------------------------------------------------------- 5 | 6 | This feature enhances Privatezilla and adds several community powered PowerShell script files which allows to: 7 | - Uninstall preinstalled apps (debloating) 8 | - Reinstalling all default apps 9 | - Disable various Windows 10 telemetry features 10 | - Block Microsoft telemetry IPs via Windows Firewall and hosts file 11 | - Remove OneDrive integration 12 | - Remove Windows Defender 13 | - Block telemetry of third-party apps, e.g. CCleaner, Firefox, Microsoft Office 14 | - and many more 15 | 16 | These are third party script files and the author of this app does not guarantee that they will also work for you. Each script contains a link to the original author. If you don't understand the scripts, then you should also NOT execute them. 17 | 18 | You will also find bundled script files (called templates) written by the author of this app. These files allow you to automate numerous processes, e.g. you could use the "Telemetry of third-party apps (Template)" to block and disable telemetry features of apps such as CCleaner, Firefox, Google etc. 19 | 20 | NOTE: If you no longer wish to see this notice, then remove the "readme.txt" in the scripts directory. 21 | -------------------------------------------------------------------------------- /src/Privatezilla.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.30011.22 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Privatezilla", "Privatezilla\Privatezilla.csproj", "{1CF5392E-0522-49D4-8343-B732BE762086}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {1CF5392E-0522-49D4-8343-B732BE762086}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {1CF5392E-0522-49D4-8343-B732BE762086}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {1CF5392E-0522-49D4-8343-B732BE762086}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {1CF5392E-0522-49D4-8343-B732BE762086}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {8E8CB191-75D5-4C79-A0FE-23D7D018C316} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /src/Privatezilla/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/Privatezilla/AppIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/AppIcon.ico -------------------------------------------------------------------------------- /src/Privatezilla/GitHubIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/GitHubIcon.png -------------------------------------------------------------------------------- /src/Privatezilla/Helpers/RegistryHelper.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Setting; 3 | using System; 4 | using System.Windows.Forms; 5 | 6 | namespace Privatezilla 7 | { 8 | /// 9 | /// Check whether Registry values equal 10 | /// 11 | internal class RegistryHelper 12 | { 13 | public SettingBase Setting { get; } 14 | 15 | public static bool IntEquals(string keyName, string valueName, int expectedValue) 16 | { 17 | try 18 | { 19 | var value = Registry.GetValue(keyName, valueName, null); 20 | return (value != null && (int)value == expectedValue); 21 | } 22 | catch (Exception ex) 23 | 24 | { 25 | MessageBox.Show(keyName, ex.Message, MessageBoxButtons.OK); 26 | return false; 27 | } 28 | } 29 | 30 | public static bool StringEquals(string keyName, string valueName, string expectedValue) 31 | { 32 | try 33 | { 34 | var value = Registry.GetValue(keyName, valueName, null); 35 | return (value != null && (string)value == expectedValue); 36 | } 37 | catch (Exception ex) 38 | { 39 | MessageBox.Show(keyName, ex.Message, MessageBoxButtons.OK); 40 | return false; 41 | } 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /src/Privatezilla/Helpers/SettingsNode.cs: -------------------------------------------------------------------------------- 1 | using Privatezilla.Setting; 2 | using System.Windows.Forms; 3 | 4 | namespace Privatezilla 5 | { 6 | internal class SettingNode : TreeNode 7 | { 8 | public SettingBase Setting { get; } 9 | 10 | public SettingNode(SettingBase setting) 11 | { 12 | Setting = setting; 13 | Text = Setting.ID(); 14 | ToolTipText = Setting.Info(); 15 | //Checked = true; 16 | } 17 | 18 | } 19 | } -------------------------------------------------------------------------------- /src/Privatezilla/Helpers/SetttingsBase.cs: -------------------------------------------------------------------------------- 1 | namespace Privatezilla.Setting 2 | { 3 | public abstract class SettingBase 4 | { 5 | /// 6 | /// Name of setting 7 | /// 8 | /// The setting name 9 | public abstract string ID(); 10 | 11 | /// 12 | /// Tooltip text of setting 13 | /// 14 | /// The setting tooltip 15 | public abstract string Info(); 16 | 17 | /// 18 | /// Checks whether the setting should be applied 19 | /// 20 | /// Returns true if the setting should be applied, false otherwise. 21 | public abstract bool CheckSetting(); 22 | 23 | /// 24 | /// Applies the setting 25 | /// 26 | /// Returns true if the setting was successfull, false otherwise. 27 | public abstract bool DoSetting(); 28 | 29 | /// 30 | /// Revert the setting 31 | /// 32 | /// Returns true if the setting was successfull, false otherwise. 33 | public abstract bool UndoSetting(); 34 | } 35 | } -------------------------------------------------------------------------------- /src/Privatezilla/Helpers/WindowsHelper.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | 3 | namespace Privatezilla 4 | { 5 | internal static class WindowsHelper 6 | { 7 | internal static string GetOS() 8 | { 9 | 10 | string releaseID = Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion", "ReleaseId", "").ToString(); 11 | return releaseID; 12 | 13 | } 14 | 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/Privatezilla/Interfaces/IListView.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections; 3 | using System.Windows.Forms; 4 | 5 | namespace Privatezilla 6 | { 7 | /* Modified ListView sort example from https://support.microsoft.com/en-us/kb/319401 8 | which will not only sort ascending but both ways */ 9 | 10 | public class ListViewItemComparer : IComparer 11 | { 12 | private readonly int col; 13 | private readonly bool bAsc = false; 14 | 15 | public ListViewItemComparer() 16 | { 17 | col = 0; 18 | } 19 | 20 | public ListViewItemComparer(int column, bool b) 21 | { 22 | col = column; 23 | bAsc = b; 24 | } 25 | 26 | public int Compare(object x, object y) 27 | { 28 | if (bAsc) 29 | { 30 | return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text); 31 | // bAsc = false; 32 | } 33 | else 34 | { 35 | return String.Compare(((ListViewItem)y).SubItems[col].Text, ((ListViewItem)x).SubItems[col].Text); 36 | // bAsc = true; 37 | } 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /src/Privatezilla/Interfaces/ITreeNode.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Windows.Forms; 4 | 5 | namespace Privatezilla.ITreeNode 6 | { 7 | public static class ITreeNode 8 | { 9 | // Retrieving TreeView nodes as IEnumerable 10 | public static IEnumerable All(this TreeNodeCollection nodes) 11 | { 12 | if (nodes == null) throw new ArgumentNullException(nameof(nodes)); 13 | 14 | foreach (TreeNode n in nodes) 15 | { 16 | yield return n; 17 | 18 | foreach (TreeNode child in n.Nodes.All()) 19 | { 20 | yield return child; 21 | } 22 | } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/Privatezilla/Privatezilla.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {1CF5392E-0522-49D4-8343-B732BE762086} 8 | WinExe 9 | Privatezilla 10 | Privatezilla 11 | v4.8 12 | 512 13 | true 14 | true 15 | 16 | 17 | 18 | AnyCPU 19 | true 20 | full 21 | false 22 | bin\Debug\ 23 | DEBUG;TRACE 24 | prompt 25 | 4 26 | false 27 | 28 | 29 | AnyCPU 30 | pdbonly 31 | true 32 | bin\Release\ 33 | TRACE 34 | prompt 35 | 4 36 | 37 | 38 | app.manifest 39 | 40 | 41 | AppIcon.ico 42 | 43 | 44 | bin\x64\ 45 | 46 | 47 | x64 48 | bin\x64\Debug\ 49 | 50 | 51 | x64 52 | bin\x64\Release\ 53 | 54 | 55 | x64 56 | bin\x64\x64\ 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | False 65 | ..\..\..\..\..\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Management.Automation\v4.0_3.0.0.0__31bf3856ad364e35\System.Management.Automation.dll 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | True 81 | True 82 | Locale.resx 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | Form 142 | 143 | 144 | MainWindow.cs 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | ResXFileCodeGenerator 164 | Locale.Designer.cs 165 | Designer 166 | 167 | 168 | 169 | MainWindow.cs 170 | Designer 171 | 172 | 173 | 174 | ResXFileCodeGenerator 175 | Resources.Designer.cs 176 | Designer 177 | 178 | 179 | True 180 | Resources.resx 181 | True 182 | 183 | 184 | 185 | 186 | 187 | SettingsSingleFileGenerator 188 | Settings.Designer.cs 189 | 190 | 191 | True 192 | Settings.settings 193 | True 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | -------------------------------------------------------------------------------- /src/Privatezilla/Privatezilla.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 16 4 | VisualStudioVersion = 16.0.30011.22 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Privatezilla", "Privatezilla\Privatezilla.csproj", "{1CF5392E-0522-49D4-8343-B732BE762086}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {1CF5392E-0522-49D4-8343-B732BE762086}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {1CF5392E-0522-49D4-8343-B732BE762086}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {1CF5392E-0522-49D4-8343-B732BE762086}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {1CF5392E-0522-49D4-8343-B732BE762086}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {8E8CB191-75D5-4C79-A0FE-23D7D018C316} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /src/Privatezilla/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using System.Windows.Forms; 6 | 7 | using Privatezilla.Locales; 8 | 9 | namespace Privatezilla 10 | { 11 | static class Program 12 | { 13 | 14 | internal static string GetCurrentVersionTostring() => new Version(Application.ProductVersion).ToString(3); 15 | 16 | /// 17 | /// The main entry point for the application. 18 | /// 19 | [STAThread] 20 | static void Main() 21 | { 22 | Application.EnableVisualStyles(); 23 | Application.SetCompatibleTextRenderingDefault(false); 24 | 25 | if (Environment.OSVersion.Version.Build < 9200) 26 | 27 | MessageBox.Show(Locale.msgAppCompatibility, "Privatezilla", MessageBoxButtons.OK, MessageBoxIcon.Information); 28 | else 29 | Application.Run(new MainWindow()); 30 | 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/Privatezilla/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // Allgemeine Informationen über eine Assembly werden über die folgenden 6 | // Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, 7 | // die einer Assembly zugeordnet sind. 8 | [assembly: AssemblyTitle("Privatezilla")] 9 | [assembly: AssemblyDescription("The alternate Windows 10 privacy settings app")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Builtbybel")] 12 | [assembly: AssemblyProduct("Privatezilla")] 13 | [assembly: AssemblyCopyright("Copyright © 2021")] 14 | [assembly: AssemblyTrademark("Privatezilla")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly 18 | // für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von 19 | // COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. 20 | [assembly: ComVisible(false)] 21 | 22 | // Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird 23 | [assembly: Guid("1cf5392e-0522-49d4-8343-b732be762086")] 24 | 25 | // Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: 26 | // 27 | // Hauptversion 28 | // Nebenversion 29 | // Buildnummer 30 | // Revision 31 | // 32 | // Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, 33 | // indem Sie "*" wie unten gezeigt eingeben: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("0.60.0")] 36 | [assembly: AssemblyFileVersion("0.60.0")] 37 | -------------------------------------------------------------------------------- /src/Privatezilla/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // Dieser Code wurde von einem Tool generiert. 4 | // Laufzeitversion:4.0.30319.42000 5 | // 6 | // Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn 7 | // der Code erneut generiert wird. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Privatezilla.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. 17 | /// 18 | // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert 19 | // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. 20 | // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen 21 | // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Privatezilla.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle 51 | /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /src/Privatezilla/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 |  2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /src/Privatezilla/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // Dieser Code wurde von einem Tool generiert. 4 | // Laufzeitversion:4.0.30319.42000 5 | // 6 | // Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn 7 | // der Code erneut generiert wird. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Privatezilla.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.7.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/Privatezilla/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/AccountInfo.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class AccountInfo : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\userAccountInformation"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsAccountInfo; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/AppNotifications.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class AppNotifications : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\PushNotifications"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsAppNotifications; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsAppsAppNotificationsInfo.Replace("\\n", "\n"); 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(AppKey, "ToastEnabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "ToastEnabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "ToastEnabled", "1", RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/BackgroundApps.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class BackgroundApps: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications"; 9 | private const int DesiredValue =1; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsBackgroundApps; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsAppsBackgroundAppsInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(AppKey, "GlobalUserDisabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "GlobalUserDisabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "GlobalUserDisabled", 0, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Calendar.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Calendar : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\appointments"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsCalendar; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Call.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Call: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\phoneCall"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsCall; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/CallHistory.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class CallHistory: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\phoneCallHistory"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsCallHistory; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Camera.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Camera: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\webcam"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsCamera; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/CellularData.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class CellularData : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\cellularData"; 9 | private const string DesiredValue = "Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsCellularData; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsAppsCellularDataInfo.Replace("\\n", "\n"); 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Contacts.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Contacts : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\contacts"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsContacts; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/DiagnosticInformation.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class DiagnosticInformation: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\appDiagnostics"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsDiagnosticInformation; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Documents.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Documents: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\documentsLibrary"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsDocuments; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Email.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Email : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\email"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsEmail; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/EyeGaze.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class EyeGaze : SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\gazeInput"; 9 | private const string DesiredValue = "Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsEyeGaze; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsAppsEyeGazeInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/FileSystem.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class FileSystem: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\broadFileSystemAccess"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsFileSystem; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsAppsFileSystemInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Messaging.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Messaging: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\chat"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsMessaging; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Microphone.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Microphone: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\microphone"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsMicrophone; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Motion.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Motion: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\activity"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsMotion; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Notifications.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Notifications: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\userNotificationListener"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsNotification; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/OtherDevices.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class OtherDevices: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\bluetooth"; 9 | private const string AppKey2 = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\bluetoothSync"; 10 | private const string DesiredValue ="Deny"; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsAppsOtherDevices; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return ""; 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) && 26 | RegistryHelper.StringEquals(AppKey2, "Value", DesiredValue) 27 | ); 28 | } 29 | 30 | public override bool DoSetting() 31 | { 32 | try 33 | { 34 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 35 | Registry.SetValue(AppKey2, "Value", DesiredValue, RegistryValueKind.String); 36 | return true; 37 | } 38 | catch 39 | { } 40 | 41 | return false; 42 | } 43 | 44 | 45 | public override bool UndoSetting() 46 | { 47 | try 48 | { 49 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 50 | return true; 51 | } 52 | catch 53 | { } 54 | 55 | return false; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Pictures.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Pictures: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\picturesLibrary"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsPictures; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Radios.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Radios: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\radios"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsRadios; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Tasks.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Tasks: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\userDataTasks"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsTasks; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/TrackingApps.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class TrackingApps: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsTrackingApps; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsAppsTrackingAppsInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(AppKey, "Start_TrackProgs", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Start_TrackProgs", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Start_TrackProgs", 1, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Apps/Videos.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Apps 5 | { 6 | internal class Videos: SettingBase 7 | { 8 | private const string AppKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\videosLibrary"; 9 | private const string DesiredValue ="Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsAppsVideos; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return ""; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(AppKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AppKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(AppKey, "Value", "Allow", RegistryValueKind.String); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Bloatware/RemoveUWPAll.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Management.Automation; 3 | using System.IO; 4 | using Privatezilla.Locales; 5 | 6 | namespace Privatezilla.Setting.Bloatware 7 | { 8 | internal class RemoveUWPAll : SettingBase 9 | { 10 | public override string ID() 11 | { 12 | return Locale.settingsBloatwareRemoveUWPAll; 13 | } 14 | 15 | public override string Info() 16 | { 17 | return Locale.settingsBloatwareRemoveUWPAllInfo; 18 | } 19 | 20 | public override bool CheckSetting() 21 | { 22 | // NOTE! OPTIMIZE 23 | // Check if app Windows.Photos exists and return true as not configured 24 | var appPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Packages", "Microsoft.Windows.Photos_8wekyb3d8bbwe"); 25 | 26 | if (Directory.Exists(appPath)) 27 | { 28 | return true; 29 | } 30 | 31 | 32 | return false; 33 | } 34 | 35 | public override bool DoSetting() 36 | { 37 | using (PowerShell script = PowerShell.Create()) 38 | { 39 | script.AddScript("Get-appxprovisionedpackage –online | where-object {$_.packagename –notlike “*store*”} | Remove-AppxProvisionedPackage –online"); 40 | script.AddScript("Get-AppxPackage | where-object {$_.name –notlike “*store*”} | Remove-AppxPackage"); 41 | 42 | try 43 | { 44 | script.Invoke(); 45 | } 46 | catch 47 | { } 48 | } 49 | 50 | return true; 51 | } 52 | 53 | public override bool UndoSetting() 54 | { 55 | using (PowerShell script = PowerShell.Create()) 56 | { 57 | script.AddScript("Get-AppxPackage -AllUsers| Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\\AppXManifest.xml”}"); 58 | 59 | 60 | try 61 | { 62 | script.Invoke(); 63 | return true; 64 | } 65 | catch 66 | {} 67 | 68 | return false; 69 | } 70 | } 71 | 72 | } 73 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Bloatware/RemoveUWPDefaults.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Management.Automation; 3 | using System.IO; 4 | using Privatezilla.Locales; 5 | using System.Linq; 6 | using System.Text.RegularExpressions; 7 | 8 | namespace Privatezilla.Setting.Bloatware 9 | { 10 | internal class RemoveUWPDefaults : SettingBase 11 | { 12 | private readonly PowerShell powerShell = PowerShell.Create(); 13 | 14 | public override string ID() 15 | { 16 | return Locale.settingsBloatwareRemoveUWPDefaults; 17 | } 18 | 19 | public override string Info() 20 | { 21 | return Locale.settingsBloatwareRemoveUWPDefaultsInfo.Replace("\\n", "\n"); 22 | } 23 | 24 | private void RemoveApps(string str) 25 | { 26 | using (PowerShell script = PowerShell.Create()) 27 | { 28 | script.AddScript("Get-AppxPackage " + str + " | Remove-AppxPackage"); 29 | 30 | script.Invoke(); 31 | } 32 | 33 | 34 | return; 35 | } 36 | 37 | public override bool CheckSetting() 38 | { 39 | var apps = BloatwareList.GetList(); 40 | 41 | powerShell.Commands.Clear(); 42 | powerShell.AddCommand("get-appxpackage"); 43 | powerShell.AddCommand("Select").AddParameter("property", "name"); 44 | 45 | 46 | foreach (PSObject result in powerShell.Invoke()) 47 | { 48 | string current = result.ToString(); 49 | 50 | if (!apps.Contains(Regex.Replace(current, "(@{Name=)|(})", ""))) continue; 51 | } 52 | 53 | return true; 54 | } 55 | 56 | public override bool DoSetting() 57 | { 58 | var apps = BloatwareList.GetList(); 59 | 60 | foreach (var str in apps) 61 | { 62 | RemoveApps(str); 63 | } 64 | 65 | return true; 66 | } 67 | 68 | public override bool UndoSetting() 69 | { 70 | using (PowerShell script = PowerShell.Create()) 71 | { 72 | script.AddScript("Get-AppxPackage -AllUsers| Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\\AppXManifest.xml”}"); 73 | 74 | try 75 | { 76 | script.Invoke(); 77 | return true; 78 | } 79 | catch 80 | { } 81 | 82 | return false; 83 | } 84 | } 85 | 86 | } 87 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Bloatware/UWPAppsEngine.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Privatezilla.Setting.Bloatware 4 | { 5 | public static class BloatwareList 6 | { 7 | // Our Windows 10 bloatware list 8 | public static IEnumerable GetList() 9 | { 10 | var apps = new List 11 | { 12 | "2FE3CB00.PICSART-PHOTOSTUDIO", 13 | "4DF9E0F8.Netflix", 14 | "5319275A.WhatsAppDesktop", 15 | "9E2F88E3.TWITTER", 16 | "AdobeSystemsIncorporated.AdobeLightroom", 17 | "AdobeSystemsIncorporated.AdobePhotoshopExpress", 18 | "Clipchamp.Clipchamp_yxz26nhyzhsrt", 19 | "CorelCorporation.PaintShopPro", 20 | "FACEBOOK.317180B0BB486", 21 | "Facebook.InstagramBeta", 22 | "Microsoft.549981C3F5F10", 23 | "Microsoft.BingNews", 24 | "Microsoft.BingWeather", 25 | "Microsoft.GamingApp", 26 | "Microsoft.Getstarted", 27 | "Microsoft.Microsoft3DViewer", 28 | "Microsoft.MicrosoftOfficeHub", 29 | "Microsoft.MicrosoftSolitaireCollection", 30 | "Microsoft.MicrosoftStickyNotes", 31 | "Microsoft.MixedReality.Portal", 32 | "Microsoft.Office.OneNote", 33 | "Microsoft.OneConnect", 34 | "Microsoft.People", 35 | "Microsoft.Print3D", 36 | "Microsoft.SkypeApp", 37 | "Microsoft.Wallet", 38 | "Microsoft.WindowsSoundRecorder", 39 | "NAVER.LINEwin8_8ptj331gd3tyt", 40 | "SpotifyAB.SpotifyMusic", 41 | "king.com.CandyCrushFriends", 42 | "king.com.CandyCrushSaga", 43 | "king.com.FarmHeroesSaga", 44 | }; 45 | 46 | return apps; 47 | } 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Cortana/DisableBing.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Cortana 5 | { 6 | internal class DisableBing : SettingBase 7 | { 8 | private const string BingKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Windows Search"; 9 | private const string Bing2004Key = @"HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer"; // Disable Websearch on Windows 10, version >=2004 10 | private const int DesiredValue = 0; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsCortanaDisableBing; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsCortanaDisableBingInfo; 20 | } 21 | 22 | public override bool CheckSetting() 23 | 24 | { 25 | string releaseid = Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion", "ReleaseId", "").ToString(); 26 | 27 | if (releaseid != "2004") 28 | return !(RegistryHelper.IntEquals(BingKey, "BingSearchEnabled", DesiredValue)); 29 | 30 | else 31 | return !(RegistryHelper.IntEquals(Bing2004Key, "DisableSearchBoxSuggestions", 1)); 32 | 33 | } 34 | 35 | 36 | public override bool DoSetting() 37 | { 38 | try 39 | { 40 | Registry.SetValue(BingKey, "BingSearchEnabled", DesiredValue, RegistryValueKind.DWord); 41 | Registry.SetValue(Bing2004Key, "DisableSearchBoxSuggestions", 1, RegistryValueKind.DWord); 42 | return true; 43 | } 44 | catch 45 | { } 46 | 47 | return false; 48 | } 49 | 50 | public override bool UndoSetting() 51 | { 52 | try 53 | { 54 | Registry.SetValue(BingKey, "BingSearchEnabled", 1, RegistryValueKind.DWord); 55 | Registry.SetValue(Bing2004Key, "DisableSearchBoxSuggestions", 0, RegistryValueKind.DWord); 56 | return true; 57 | } 58 | catch 59 | { } 60 | 61 | return false; 62 | } 63 | 64 | } 65 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Cortana/DisableCortana.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Cortana 5 | { 6 | internal class DisableCortana : SettingBase 7 | { 8 | private const string CortanaKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Windows Search"; 9 | private const string CortanaIconKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"; 10 | private const int DesiredValue = 0; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsCortanaDisableCortana; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsCortanaDisableCortanaInfo.Replace("\\n", "\n"); 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.IntEquals(CortanaKey, "AllowCortana", DesiredValue) && 26 | RegistryHelper.IntEquals(CortanaIconKey, "ShowCortanaButton", DesiredValue) 27 | ); 28 | } 29 | 30 | public override bool DoSetting() 31 | { 32 | try 33 | { 34 | Registry.SetValue(CortanaKey, "AllowCortana", DesiredValue, RegistryValueKind.DWord); 35 | Registry.SetValue(CortanaIconKey, "ShowCortanaButton", DesiredValue, RegistryValueKind.DWord); 36 | return true; 37 | } 38 | catch 39 | { } 40 | 41 | return false; 42 | } 43 | 44 | public override bool UndoSetting() 45 | { 46 | try 47 | { 48 | Registry.SetValue(CortanaKey, "AllowCortana", 1, RegistryValueKind.DWord); 49 | Registry.SetValue(CortanaIconKey, "ShowCortanaButton", 1, RegistryValueKind.DWord); 50 | return true; 51 | } 52 | catch 53 | { } 54 | 55 | return false; 56 | } 57 | 58 | } 59 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Cortana/UninstallCortana.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Management.Automation; 3 | using System.IO; 4 | using Privatezilla.Locales; 5 | 6 | namespace Privatezilla.Setting.Cortana 7 | { 8 | internal class UninstallCortana : SettingBase 9 | { 10 | public override string ID() 11 | { 12 | return Locale.settingsCortanaUninstallCortana; 13 | } 14 | 15 | public override string Info() 16 | { 17 | return Locale.settingsCortanaUninstallCortanaInfo; 18 | } 19 | 20 | public override bool CheckSetting() 21 | { 22 | // Cortana Package ID on Windows 10, version 2004 is *Microsoft.549981C3F5F10* 23 | var appPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Packages", "Microsoft.549981C3F5F10"); 24 | 25 | if (Directory.Exists(appPath)) 26 | { 27 | return true; 28 | } 29 | 30 | 31 | return false; 32 | } 33 | 34 | public override bool DoSetting() 35 | { 36 | using (PowerShell script = PowerShell.Create()) 37 | { 38 | script.AddScript("Get-appxpackage *Microsoft.549981C3F5F10* | Remove-AppxPackage"); 39 | 40 | try 41 | { 42 | script.Invoke(); 43 | } 44 | catch 45 | { } 46 | } 47 | 48 | return true; 49 | } 50 | 51 | public override bool UndoSetting() 52 | { 53 | using (PowerShell script = PowerShell.Create()) 54 | { 55 | script.AddScript("Get-AppXPackage -Name Microsoft.Windows.Cortana | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register \"$($_.InstallLocation)AppXManifest.xml}\""); 56 | 57 | try 58 | { 59 | script.Invoke(); 60 | return true; 61 | } 62 | catch 63 | { } 64 | 65 | return false; 66 | } 67 | 68 | 69 | } 70 | } 71 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Defender/DisableSmartScreenStore.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Defender 5 | { 6 | internal class DisableSmartScreenStore: SettingBase 7 | { 8 | private const string DefenderKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\AppHost"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsDefenderDisableSmartScreenStore; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsDefenderDisableSmartScreenStoreInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(DefenderKey, "EnableWebContentEvaluation", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(DefenderKey, "EnableWebContentEvaluation", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | 47 | var RegKey = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\AppHost", true); 48 | RegKey.DeleteValue("EnableWebContentEvaluation"); 49 | 50 | return true; 51 | } 52 | catch 53 | { } 54 | 55 | return false; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Edge/AutoFillCredits.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Edge 5 | { 6 | internal class DisableAutoFillCredits : SettingBase 7 | { 8 | private const string EdgeKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Edge"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsEdeAutoFillCredit; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsEdeAutoFillCreditInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(EdgeKey, "AutofillCreditCardEnabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(EdgeKey, "AutofillCreditCardEnabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(EdgeKey, "AutofillCreditCardEnabled", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Edge/BlockEdgeRollout.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Edge 5 | { 6 | internal class BlockEdgeRollout : SettingBase 7 | { 8 | private const string EdgeKey = @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\EdgeUpdate"; 9 | private const int DesiredValue = 1; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsEdgeBlockEdgeRollout; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsEdgeBlockEdgeRolloutInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(EdgeKey, "DoNotUpdateToEdgeWithChromium", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(EdgeKey, "DoNotUpdateToEdgeWithChromium", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(EdgeKey, "DoNotUpdateToEdgeWithChromium", 0, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Edge/DisableSync.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Edge 5 | { 6 | internal class DisableSync : SettingBase 7 | { 8 | private const string EdgeKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Edge"; 9 | private const int DesiredValue = 1; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsEdgeDisableSync; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsEdgeDisableSyncInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(EdgeKey, "SyncDisabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(EdgeKey, "SyncDisabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(EdgeKey, "SyncDisabled", 0, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Edge/EdgeBackground.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Edge 5 | { 6 | internal class EdgeBackground : SettingBase 7 | { 8 | private const string EdgeKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Edge"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsEdgeBackground; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsEdgeBackgroundInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(EdgeKey, "BackgroundModeEnabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(EdgeKey, "BackgroundModeEnabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(EdgeKey, "BackgroundModeEnabled", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Gaming/GameBar.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Gaming 5 | { 6 | internal class DisableGameBar : SettingBase 7 | { 8 | private const string GameBarKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\GameDVR"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsGamingGameBar; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsGamingGameBarInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(GameBarKey, "AllowGameDVR", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(GameBarKey, "AllowGameDVR", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(GameBarKey, "AllowGameDVR", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DiagnosticData.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DiagnosticData : SettingBase 7 | { 8 | private const string DiagnosticKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Privacy"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDiagnosticData; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDiagnosticDataInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(DiagnosticKey, "TailoredExperiencesWithDiagnosticDataEnabled", DesiredValue) 25 | ); 26 | 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(DiagnosticKey, "TailoredExperiencesWithDiagnosticDataEnabled", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(DiagnosticKey, "TailoredExperiencesWithDiagnosticDataEnabled", 1, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableAds.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableAds : SettingBase 7 | { 8 | private const string AdsKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableAds; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableAdsInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(AdsKey, "Enabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(AdsKey, "Enabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(AdsKey, "Enabled", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableBiometrics.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableBiometrics : SettingBase 7 | { 8 | private const string BiometricsKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Biometrics"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableBiometrics; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableBiometricsInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(BiometricsKey, "Enabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(BiometricsKey, "Enabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(BiometricsKey, "Enabled", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableCEIP.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableCEIP : SettingBase 7 | { 8 | private const string CEIPKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\SQMClient\Windows"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableCEIP; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableCEIPInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(CEIPKey, "CEIPEnable", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(CEIPKey, "CEIPEnable", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(CEIPKey, "CEIPEnable", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableCompTelemetry.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableCompTelemetry : SettingBase 7 | { 8 | private const string TelemetryKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\CompatTelRunner.exe"; 9 | private const string DesiredValue = @"%windir%\System32\taskkill.exe"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableCompTelemetry; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableCompTelemetryInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(TelemetryKey, "Debugger", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(TelemetryKey, "Debugger", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | 46 | var RegKey = Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\CompatTelRunner.exe", true); 47 | RegKey.DeleteValue("Debugger"); 48 | 49 | return true; 50 | } 51 | catch 52 | { } 53 | 54 | return false; 55 | 56 | } 57 | 58 | } 59 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableFeedback.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableFeedback: SettingBase 7 | { 8 | private const string PeriodInNanoSeconds = @"HKEY_CURRENT_USER\Software\Microsoft\Siuf\Rules"; 9 | private const string NumberOfSIUFInPeriod = @"HKEY_CURRENT_USER\Software\Microsoft\Siuf\Rules"; 10 | private const int DesiredValue = 0; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsPrivacyDisableFeedback; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsPrivacyDisableFeedbackInfo; 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.IntEquals(PeriodInNanoSeconds, "PeriodInNanoSeconds", DesiredValue) && 26 | RegistryHelper.IntEquals(NumberOfSIUFInPeriod, "NumberOfSIUFInPeriod", DesiredValue) 27 | ); 28 | } 29 | 30 | public override bool DoSetting() 31 | { 32 | try 33 | { 34 | Registry.SetValue(PeriodInNanoSeconds, "PeriodInNanoSeconds", DesiredValue, RegistryValueKind.DWord); 35 | Registry.SetValue(NumberOfSIUFInPeriod, "NumberOfSIUFInPeriod", DesiredValue, RegistryValueKind.DWord); 36 | return true; 37 | } 38 | catch 39 | { } 40 | 41 | return false; 42 | } 43 | public override bool UndoSetting() 44 | { 45 | try 46 | { 47 | var RegKey = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Siuf\Rules", true); 48 | RegKey.DeleteValue("NumberOfSIUFInPeriod"); 49 | RegKey.DeleteValue("PeriodInNanoSeconds"); 50 | return true; 51 | 52 | } 53 | catch 54 | { } 55 | 56 | return false; 57 | } 58 | 59 | 60 | } 61 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableHEIP.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableHEIP: SettingBase 7 | { 8 | private const string HEIPKey = @"HKEY_CURRENT_USER\Software\Microsoft\Assistance\Client\1.0\Settings"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableHEIP; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableHEIPInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(HEIPKey, "ImplicitFeedback", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(HEIPKey, "ImplicitFeedback", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(HEIPKey, "ImplicitFeedback", 1, RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableLocation.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableLocation : SettingBase 7 | { 8 | private const string LocationKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location"; 9 | private const string DesiredValue = @"Deny"; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableLocation; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableLocationInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.StringEquals(LocationKey, "Value", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(LocationKey, "Value", DesiredValue, RegistryValueKind.String); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | public override bool UndoSetting() 41 | { 42 | try 43 | { 44 | Registry.SetValue(LocationKey, "Value", "Allow", RegistryValueKind.String); 45 | return true; 46 | } 47 | catch 48 | { } 49 | 50 | return false; 51 | } 52 | 53 | } 54 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableMSExperiments.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableMSExperiments: SettingBase 7 | { 8 | private const string ExperimentationKey = @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\current\device\System"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableMSExperiments; 14 | 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsPrivacyDisableMSExperimentsInfo.Replace("\\n", "\n"); 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.IntEquals(ExperimentationKey, "AllowExperimentation", DesiredValue) 26 | ); 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(ExperimentationKey, "AllowExperimentation", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(ExperimentationKey, "AllowExperimentation", 1, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableTelemetry.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableTelemetry : SettingBase 7 | { 8 | private const string TelemetryKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\DataCollection"; 9 | private const string DiagTrack = @"HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\DiagTrack"; 10 | private const string dmwappushservice = @"HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\dmwappushservice"; 11 | private const int DesiredValue = 0; 12 | 13 | public override string ID() 14 | { 15 | return Locale.settingsPrivacyDisableTelemetry; 16 | } 17 | 18 | public override string Info() 19 | { 20 | return Locale.settingsPrivacyDisableTelemetryInfo.Replace("\\n", "\n"); 21 | } 22 | 23 | public override bool CheckSetting() 24 | { 25 | return !( 26 | RegistryHelper.IntEquals(TelemetryKey, "AllowTelemetry", DesiredValue) && 27 | RegistryHelper.IntEquals(DiagTrack, "Start", 4) && 28 | RegistryHelper.IntEquals(dmwappushservice, "Start", 4) 29 | ); 30 | } 31 | 32 | public override bool DoSetting() 33 | { 34 | try 35 | { 36 | Registry.SetValue(TelemetryKey, "AllowTelemetry", DesiredValue, RegistryValueKind.DWord); 37 | Registry.SetValue(DiagTrack, "Start", 4, RegistryValueKind.DWord); 38 | Registry.SetValue(dmwappushservice, "Start", 4, RegistryValueKind.DWord); 39 | return true; 40 | } 41 | catch 42 | { } 43 | 44 | return false; 45 | } 46 | 47 | public override bool UndoSetting() 48 | { 49 | try 50 | { 51 | Registry.SetValue(TelemetryKey, "AllowTelemetry", 3, RegistryValueKind.DWord); 52 | Registry.SetValue(DiagTrack, "Start", 2, RegistryValueKind.DWord); 53 | Registry.SetValue(dmwappushservice, "Start", 2, RegistryValueKind.DWord); 54 | return true; 55 | } 56 | catch 57 | { } 58 | 59 | return false; 60 | } 61 | 62 | } 63 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableTimeline.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableTimeline : SettingBase 7 | { 8 | private const string EnableActivityFeed = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\System"; 9 | private const string PublishUserActivities = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\System"; 10 | private const int DesiredValue = 0; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsPrivacyDisableTimeline; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsPrivacyDisableTimelineInfo.Replace("\\n", "\n"); 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.IntEquals(EnableActivityFeed, "EnableActivityFeed", DesiredValue) && 26 | RegistryHelper.IntEquals(PublishUserActivities, "PublishUserActivities", DesiredValue) 27 | ); 28 | } 29 | 30 | public override bool DoSetting() 31 | { 32 | try 33 | { 34 | Registry.SetValue(EnableActivityFeed, "EnableActivityFeed", DesiredValue, RegistryValueKind.DWord); 35 | Registry.SetValue(PublishUserActivities, "PublishUserActivities", DesiredValue, RegistryValueKind.DWord); 36 | return true; 37 | } 38 | catch 39 | { } 40 | 41 | return false; 42 | } 43 | 44 | public override bool UndoSetting() 45 | { 46 | try 47 | { 48 | var RegKey = Registry.LocalMachine.OpenSubKey(@"Software\Policies\Microsoft\Windows\System", true); 49 | RegKey.DeleteValue("EnableActivityFeed"); 50 | RegKey.DeleteValue("PublishUserActivities"); 51 | 52 | return true; 53 | } 54 | catch 55 | { } 56 | 57 | return false; 58 | } 59 | 60 | } 61 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableTips.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableTips: SettingBase 7 | { 8 | private const string DisableSoftLanding = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\CloudContent"; 9 | private const string DisableWindowsSpotlightFeatures = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\CloudContent"; 10 | private const string DisableWindowsConsumerFeatures = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\CloudContent"; 11 | private const string DoNotShowFeedbackNotifications = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\DataCollection"; 12 | private const int DesiredValue = 1; 13 | 14 | public override string ID() 15 | { 16 | return Locale.settingsPrivacyDisableTips; 17 | } 18 | 19 | public override string Info() 20 | { 21 | return Locale.settingsPrivacyDisableTipsInfo; 22 | } 23 | 24 | public override bool CheckSetting() 25 | { 26 | return !( 27 | RegistryHelper.IntEquals(DisableSoftLanding, "DisableSoftLanding", DesiredValue) && 28 | RegistryHelper.IntEquals(DisableWindowsSpotlightFeatures, "DisableWindowsSpotlightFeatures", DesiredValue) && 29 | RegistryHelper.IntEquals(DisableWindowsConsumerFeatures, "DisableWindowsConsumerFeatures", DesiredValue) && 30 | RegistryHelper.IntEquals(DoNotShowFeedbackNotifications, "DoNotShowFeedbackNotifications", DesiredValue) 31 | ); 32 | } 33 | 34 | public override bool DoSetting() 35 | { 36 | try 37 | { 38 | Registry.SetValue(DisableSoftLanding, "DisableSoftLanding", DesiredValue, RegistryValueKind.DWord); 39 | Registry.SetValue(DisableWindowsSpotlightFeatures, "DisableWindowsSpotlightFeatures", DesiredValue, RegistryValueKind.DWord); 40 | Registry.SetValue(DisableWindowsConsumerFeatures, "DisableWindowsConsumerFeatures", DesiredValue, RegistryValueKind.DWord); 41 | Registry.SetValue(DoNotShowFeedbackNotifications, "DoNotShowFeedbackNotifications", DesiredValue, RegistryValueKind.DWord); 42 | return true; 43 | } 44 | catch 45 | { } 46 | 47 | return false; 48 | } 49 | 50 | public override bool UndoSetting() 51 | { 52 | try 53 | { 54 | Registry.SetValue(DisableSoftLanding, "DisableSoftLanding", 0, RegistryValueKind.DWord); 55 | Registry.SetValue(DisableWindowsSpotlightFeatures, "DisableWindowsSpotlightFeatures", 0, RegistryValueKind.DWord); 56 | Registry.SetValue(DisableWindowsConsumerFeatures, "DisableWindowsConsumerFeatures", 0, RegistryValueKind.DWord); 57 | Registry.SetValue(DoNotShowFeedbackNotifications, "DoNotShowFeedbackNotifications", 0, RegistryValueKind.DWord); 58 | return true; 59 | } 60 | catch 61 | { } 62 | 63 | return false; 64 | } 65 | 66 | 67 | } 68 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableTipsLockScreen.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableTipsLockScreen : SettingBase 7 | { 8 | private const string SpotlightKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 9 | private const string LockScreenKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 10 | private const string TipsTricksSuggestions = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 11 | private const int DesiredValue = 0; 12 | 13 | public override string ID() 14 | { 15 | return Locale.settingsPrivacyDisableTipsLockScreen; 16 | 17 | } 18 | 19 | public override string Info() 20 | { 21 | return Locale.settingsPrivacyDisableTipsLockScreenInfo; 22 | } 23 | 24 | public override bool CheckSetting() 25 | { 26 | return !( 27 | RegistryHelper.IntEquals(SpotlightKey, "RotatingLockScreenEnabled", DesiredValue) && 28 | RegistryHelper.IntEquals(LockScreenKey, "RotatingLockScreenOverlayEnabled", DesiredValue) && 29 | RegistryHelper.IntEquals(TipsTricksSuggestions, "SubscribedContent-338389Enabled", DesiredValue) 30 | ); 31 | } 32 | 33 | public override bool DoSetting() 34 | { 35 | try 36 | { 37 | Registry.SetValue(SpotlightKey, "RotatingLockScreenEnabled", DesiredValue, RegistryValueKind.DWord); 38 | Registry.SetValue(LockScreenKey, "RotatingLockScreenOverlayEnabled", DesiredValue, RegistryValueKind.DWord); 39 | Registry.SetValue(TipsTricksSuggestions, "SubscribedContent-338389Enabled", DesiredValue, RegistryValueKind.DWord); 40 | return true; 41 | 42 | } 43 | catch 44 | { } 45 | 46 | return false; 47 | } 48 | 49 | public override bool UndoSetting() 50 | { 51 | try 52 | { 53 | Registry.SetValue(SpotlightKey, "RotatingLockScreenEnabled", 1, RegistryValueKind.DWord); 54 | Registry.SetValue(LockScreenKey, "RotatingLockScreenOverlayEnabled", 1, RegistryValueKind.DWord); 55 | Registry.SetValue(TipsTricksSuggestions, "SubscribedContent-338389Enabled", 1, RegistryValueKind.DWord); 56 | return true; 57 | } 58 | catch 59 | { } 60 | 61 | return false; 62 | } 63 | 64 | } 65 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/DisableWiFi.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class DisableWiFi : SettingBase 7 | { 8 | private const string WiFiKey = @"HKEY_LOCAL_MACHINE\Software\Microsoft\WcmSvc\wifinetworkmanager\config"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyDisableWiFi; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyDisableWiFiInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(WiFiKey, "AutoConnectAllowedOEM", DesiredValue) 25 | 26 | ); 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(WiFiKey, "AutoConnectAllowedOEM", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(WiFiKey, "AutoConnectAllowedOEM", 1, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/GetMoreOutOfWindows.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class GetMoreOutOfWindows: SettingBase 7 | { 8 | private const string GetKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\UserProfileEngagement"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyGetMoreOutOfWindows; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyGetMoreOutOfWindowsInfo.Replace("\\n", "\n"); 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(GetKey, "ScoobeSystemSettingEnabled", DesiredValue) 25 | 26 | ); 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(GetKey, "ScoobeSystemSettingEnabled", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(GetKey, "ScoobeSystemSettingEnabled", 1, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/HandwritingData.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class HandwritingData : SettingBase 7 | { 8 | private const string AllowInputPersonalization = @"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\InputPersonalization"; 9 | private const string RestrictImplicitInkCollection = @"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\InputPersonalization"; 10 | private const string RestrictImplicitTextCollection = @"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\InputPersonalization"; 11 | private const string PreventHandwritingErrorReports = @"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\HandwritingErrorReports"; 12 | private const string PreventHandwritingDataSharing = @"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\TabletPC"; 13 | private const int DesiredValue = 1; 14 | 15 | public override string ID() 16 | { 17 | return Locale.settingsPrivacyHandwritingData; 18 | } 19 | 20 | public override string Info() 21 | { 22 | return Locale.settingsPrivacyHandwritingDataInfo; 23 | } 24 | 25 | public override bool CheckSetting() 26 | { 27 | return !( 28 | RegistryHelper.IntEquals(AllowInputPersonalization, "AllowInputPersonalization", 0) && 29 | RegistryHelper.IntEquals(RestrictImplicitInkCollection, "RestrictImplicitInkCollection", DesiredValue) && 30 | RegistryHelper.IntEquals(RestrictImplicitTextCollection, "RestrictImplicitTextCollection", DesiredValue) && 31 | RegistryHelper.IntEquals(PreventHandwritingErrorReports, "PreventHandwritingErrorReports", DesiredValue) && 32 | RegistryHelper.IntEquals(PreventHandwritingDataSharing, "PreventHandwritingDataSharing", DesiredValue) 33 | ); 34 | } 35 | 36 | public override bool DoSetting() 37 | { 38 | try 39 | { 40 | Registry.SetValue(AllowInputPersonalization, "AllowInputPersonalization", 0, RegistryValueKind.DWord); 41 | Registry.SetValue(RestrictImplicitInkCollection, "RestrictImplicitInkCollection", DesiredValue, RegistryValueKind.DWord); 42 | Registry.SetValue(RestrictImplicitTextCollection, "RestrictImplicitTextCollection", DesiredValue, RegistryValueKind.DWord); 43 | Registry.SetValue(PreventHandwritingErrorReports, "PreventHandwritingErrorReports", DesiredValue, RegistryValueKind.DWord); 44 | Registry.SetValue(PreventHandwritingDataSharing, "PreventHandwritingDataSharing", DesiredValue, RegistryValueKind.DWord); 45 | return true; 46 | } 47 | catch 48 | { } 49 | 50 | return false; 51 | } 52 | 53 | public override bool UndoSetting() 54 | { 55 | try 56 | { 57 | Registry.SetValue(AllowInputPersonalization, "AllowInputPersonalization", 1, RegistryValueKind.DWord); 58 | Registry.SetValue(RestrictImplicitInkCollection, "RestrictImplicitInkCollection", 0, RegistryValueKind.DWord); 59 | Registry.SetValue(RestrictImplicitTextCollection, "RestrictImplicitTextCollection", 0, RegistryValueKind.DWord); 60 | Registry.SetValue(PreventHandwritingErrorReports, "PreventHandwritingErrorReports", 0, RegistryValueKind.DWord); 61 | Registry.SetValue(PreventHandwritingDataSharing, "PreventHandwritingDataSharing", 0, RegistryValueKind.DWord); ; 62 | return true; 63 | } 64 | catch 65 | { } 66 | 67 | return false; 68 | } 69 | 70 | 71 | } 72 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/InstalledApps.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class InstalledApps : SettingBase 7 | { 8 | private const string InstalledKey = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyInstalledApps; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyInstalledAppsInfo.Replace("\\n", "\n"); 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | 24 | return !( 25 | RegistryHelper.IntEquals(InstalledKey, "SilentInstalledAppsEnabled", DesiredValue) 26 | ); 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(InstalledKey, "SilentInstalledAppsEnabled", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | 43 | public override bool UndoSetting() 44 | { 45 | try 46 | { 47 | Registry.SetValue(InstalledKey, "SilentInstalledAppsEnabled", 1, RegistryValueKind.DWord); 48 | return true; 49 | } 50 | catch 51 | { } 52 | 53 | return false; 54 | } 55 | 56 | } 57 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/InventoryCollector.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class InventoryCollector : SettingBase 7 | { 8 | private const string InventoryKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\AppCompat"; 9 | private const string AppTelemetryKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\AppCompat"; 10 | private const int DesiredValue = 1; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsPrivacyInventoryCollector; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsPrivacyInventoryCollectorInfo.Replace("\\n", "\n"); 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.IntEquals(InventoryKey, "DisableInventory", DesiredValue) && 26 | RegistryHelper.IntEquals(AppTelemetryKey, "AITEnable", 0) 27 | ); 28 | } 29 | 30 | public override bool DoSetting() 31 | { 32 | try 33 | { 34 | Registry.SetValue(InventoryKey, "DisableInventory", DesiredValue, RegistryValueKind.DWord); 35 | Registry.SetValue(AppTelemetryKey, "AITEnable", 0, RegistryValueKind.DWord); 36 | return true; 37 | } 38 | catch 39 | { } 40 | 41 | return false; 42 | } 43 | 44 | public override bool UndoSetting() 45 | { 46 | try 47 | { 48 | Registry.SetValue(InventoryKey, "DisableInventory", 0, RegistryValueKind.DWord); 49 | Registry.SetValue(AppTelemetryKey, "AITEnable", 1, RegistryValueKind.DWord); 50 | return true; 51 | } 52 | catch 53 | { } 54 | 55 | return false; 56 | } 57 | 58 | } 59 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/SuggestedApps.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class SuggestedApps : SettingBase 7 | { 8 | private const string SuggestedKey = @"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsPrivacyBlockSuggestedApps; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsPrivacyBlockSuggestedAppsInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(SuggestedKey, "SubscribedContent-338388Enabled", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(SuggestedKey, "SubscribedContent-338388Enabled", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | Registry.SetValue(SuggestedKey, "SubscribedContent-338388Enabled", 1 , RegistryValueKind.DWord); 46 | return true; 47 | } 48 | catch 49 | { } 50 | 51 | return false; 52 | } 53 | 54 | } 55 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Privacy/SuggestedContent.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Privacy 5 | { 6 | internal class SuggestedContent : SettingBase 7 | { 8 | private const string SubscribedContent338393 = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 9 | private const string SubscribedContent353694 = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 10 | private const string SubscribedContent353696 = @"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"; 11 | private const int DesiredValue = 0; 12 | 13 | public override string ID() 14 | { 15 | return Locale.settingsPrivacySuggestedContent; 16 | } 17 | 18 | public override string Info() 19 | { 20 | return Locale.settingsPrivacySuggestedContentInfo; 21 | } 22 | 23 | public override bool CheckSetting() 24 | { 25 | return !( 26 | RegistryHelper.IntEquals(SubscribedContent338393, "SubscribedContent-338393Enabled", DesiredValue) && 27 | RegistryHelper.IntEquals(SubscribedContent353694, "SubscribedContent-353694Enabled", DesiredValue) && 28 | RegistryHelper.IntEquals(SubscribedContent353696, "SubscribedContent-353696Enabled", DesiredValue) 29 | ); 30 | } 31 | 32 | public override bool DoSetting() 33 | { 34 | try 35 | { 36 | Registry.SetValue(SubscribedContent338393, "SubscribedContent-338393Enabled", DesiredValue, RegistryValueKind.DWord); 37 | Registry.SetValue(SubscribedContent353694, "SubscribedContent-353694Enabled", DesiredValue, RegistryValueKind.DWord); 38 | Registry.SetValue(SubscribedContent353696, "SubscribedContent-353696Enabled", DesiredValue, RegistryValueKind.DWord); 39 | return true; 40 | } 41 | catch 42 | { } 43 | 44 | return false; 45 | } 46 | 47 | public override bool UndoSetting() 48 | { 49 | try 50 | { 51 | Registry.SetValue(SubscribedContent338393, "SubscribedContent-338393Enabled", 1, RegistryValueKind.DWord); 52 | Registry.SetValue(SubscribedContent353694, "SubscribedContent-353694Enabled", 1, RegistryValueKind.DWord); 53 | Registry.SetValue(SubscribedContent353696, "SubscribedContent-353696Enabled", 1, RegistryValueKind.DWord); 54 | 55 | return true; 56 | } 57 | catch 58 | { } 59 | 60 | return false; 61 | } 62 | 63 | 64 | } 65 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Security/DisablePassword.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Security 5 | { 6 | internal class DisablePassword : SettingBase 7 | { 8 | private const string PasswordKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\CredUI"; 9 | private const int DesiredValue = 1; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsSecurityDisablePassword; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsSecurityDisablePasswordInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(PasswordKey, "DisablePasswordReveal", DesiredValue) 25 | ); 26 | 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(PasswordKey, "DisablePasswordReveal", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(PasswordKey, "DisablePasswordReveal", 0, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Security/WindowsDRM.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Security 5 | { 6 | internal class WindowsDRM : SettingBase 7 | { 8 | private const string DRMKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\WMDRM"; 9 | private const int DesiredValue = 1; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsSecurityWindowsDRM; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsSecurityWindowsDRMInfo; 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(DRMKey, "DisableOnline", DesiredValue) 25 | ); 26 | 27 | } 28 | 29 | public override bool DoSetting() 30 | { 31 | try 32 | { 33 | Registry.SetValue(DRMKey, "DisableOnline", DesiredValue, RegistryValueKind.DWord); 34 | return true; 35 | } 36 | catch 37 | { } 38 | 39 | return false; 40 | } 41 | 42 | public override bool UndoSetting() 43 | { 44 | try 45 | { 46 | Registry.SetValue(DRMKey, "DisableOnline", 0, RegistryValueKind.DWord); 47 | return true; 48 | } 49 | catch 50 | { } 51 | 52 | return false; 53 | } 54 | 55 | } 56 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Updates/BlockMajorUpdates.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Updates 5 | { 6 | internal class BlockMajorUpdates : SettingBase 7 | { 8 | private const string TargetReleaseVersion = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate"; 9 | private const string TargetReleaseVersionInfo = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate"; 10 | private const int DesiredValue = 1; 11 | 12 | public override string ID() 13 | { 14 | return Locale.settingsUpdatesBlockMajorUpdates; 15 | } 16 | 17 | public override string Info() 18 | { 19 | return Locale.settingsUpdatesBlockMajorUpdatesInfo.Replace("\\n", "\n"); 20 | } 21 | 22 | public override bool CheckSetting() 23 | { 24 | return !( 25 | RegistryHelper.IntEquals(TargetReleaseVersion, "TargetReleaseVersion", DesiredValue) && 26 | RegistryHelper.StringEquals(TargetReleaseVersionInfo, "TargetReleaseVersionInfo", WindowsHelper.GetOS()) 27 | ); 28 | } 29 | 30 | public override bool DoSetting() 31 | { 32 | try 33 | { 34 | Registry.SetValue(TargetReleaseVersion, "TargetReleaseVersion", DesiredValue, RegistryValueKind.DWord); 35 | Registry.SetValue(TargetReleaseVersionInfo, "TargetReleaseVersionInfo", WindowsHelper.GetOS(), RegistryValueKind.String); 36 | return true; 37 | } 38 | catch 39 | { } 40 | 41 | return false; 42 | } 43 | 44 | public override bool UndoSetting() 45 | { 46 | try 47 | { 48 | var RegKey = Registry.LocalMachine.OpenSubKey(@"Software\Policies\Microsoft\Windows\WindowsUpdate", true); 49 | RegKey.DeleteValue("TargetReleaseVersion"); 50 | RegKey.DeleteValue("TargetReleaseVersionInfo"); 51 | return true; 52 | } 53 | catch 54 | { } 55 | 56 | return false; 57 | } 58 | 59 | } 60 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Updates/DisableSafeguards.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Updates 5 | { 6 | internal class DisableSafeguards : SettingBase 7 | { 8 | private const string SharingKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate"; 9 | private const int DesiredValue = 1; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsUpdatesDisableSafeguards; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsUpdatesDisableSafeguardsInfo.Replace("\\n", "\n"); 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(SharingKey, "DisableWUfBSafeguards", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(SharingKey, "DisableWUfBSafeguards", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | var RegKey = Registry.LocalMachine.OpenSubKey(@"Software\Policies\Microsoft\Windows\WindowsUpdate", true); 46 | RegKey.DeleteValue("DisableWUfBSafeguards"); 47 | 48 | return true; 49 | } 50 | catch 51 | { } 52 | 53 | return false; 54 | } 55 | 56 | } 57 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Updates/DisableUpdates.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Updates 5 | { 6 | internal class DisableUpdates : SettingBase 7 | { 8 | private const string NoAutoUpdate = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU"; 9 | private const string AUOptions = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU"; 10 | private const string ScheduledInstallDay = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU"; 11 | private const string ScheduledInstallTime = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU"; 12 | 13 | public override string ID() 14 | { 15 | return Locale.settingsUpdatesDisableUpdates; 16 | } 17 | 18 | public override string Info() 19 | { 20 | return Locale.settingsUpdatesDisableUpdatesInfo; 21 | } 22 | 23 | public override bool CheckSetting() 24 | { 25 | return !( 26 | RegistryHelper.IntEquals(NoAutoUpdate, "NoAutoUpdate", 1) && 27 | RegistryHelper.IntEquals(AUOptions, "AUOptions", 2) && 28 | RegistryHelper.IntEquals(ScheduledInstallDay, "ScheduledInstallDay", 0) && 29 | RegistryHelper.IntEquals(ScheduledInstallTime, "ScheduledInstallTime", 3) 30 | ); 31 | } 32 | 33 | public override bool DoSetting() 34 | { 35 | try 36 | { 37 | Registry.SetValue(NoAutoUpdate, "NoAutoUpdate", 1, RegistryValueKind.DWord); 38 | Registry.SetValue(AUOptions, "AUOptions", 2, RegistryValueKind.DWord); 39 | Registry.SetValue(ScheduledInstallDay, "ScheduledInstallDay", 0, RegistryValueKind.DWord); 40 | Registry.SetValue(ScheduledInstallTime, "ScheduledInstallTime", 3, RegistryValueKind.DWord); 41 | return true; 42 | } 43 | catch 44 | { } 45 | 46 | return false; 47 | } 48 | 49 | public override bool UndoSetting() 50 | { 51 | try 52 | { 53 | Registry.SetValue(NoAutoUpdate, "NoAutoUpdate", 0, RegistryValueKind.DWord); 54 | 55 | var RegKey = Registry.LocalMachine.OpenSubKey(@"Software\Policies\Microsoft\Windows\WindowsUpdate\AU", true); 56 | RegKey.DeleteValue("AUOptions"); 57 | RegKey.DeleteValue("ScheduledInstallDay"); 58 | RegKey.DeleteValue("ScheduledInstallTime"); 59 | 60 | return true; 61 | } 62 | catch 63 | { } 64 | 65 | return false; 66 | } 67 | } 68 | } -------------------------------------------------------------------------------- /src/Privatezilla/Settings/Updates/UpdatesSharing.cs: -------------------------------------------------------------------------------- 1 | using Microsoft.Win32; 2 | using Privatezilla.Locales; 3 | 4 | namespace Privatezilla.Setting.Updates 5 | { 6 | internal class DisableUpdatesSharing : SettingBase 7 | { 8 | private const string SharingKey = @"HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\DeliveryOptimization"; 9 | private const int DesiredValue = 0; 10 | 11 | public override string ID() 12 | { 13 | return Locale.settingsUpdatesUpdateSharing; 14 | } 15 | 16 | public override string Info() 17 | { 18 | return Locale.settingsUpdatesUpdateSharingInfo.Replace("\\n", "\n"); 19 | } 20 | 21 | public override bool CheckSetting() 22 | { 23 | return !( 24 | RegistryHelper.IntEquals(SharingKey, "DODownloadMode", DesiredValue) 25 | ); 26 | } 27 | 28 | public override bool DoSetting() 29 | { 30 | try 31 | { 32 | Registry.SetValue(SharingKey, "DODownloadMode", DesiredValue, RegistryValueKind.DWord); 33 | return true; 34 | } 35 | catch 36 | { } 37 | 38 | return false; 39 | } 40 | 41 | public override bool UndoSetting() 42 | { 43 | try 44 | { 45 | var RegKey = Registry.LocalMachine.OpenSubKey(@"Software\Policies\Microsoft\Windows\DeliveryOptimization", true); 46 | RegKey.DeleteValue("DODownloadMode"); 47 | 48 | return true; 49 | } 50 | catch 51 | { } 52 | 53 | return false; 54 | } 55 | 56 | } 57 | } -------------------------------------------------------------------------------- /src/Privatezilla/app.manifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 52 | 53 | 54 | true 55 | 56 | 57 | 58 | 72 | 73 | 74 | -------------------------------------------------------------------------------- /src/Privatezilla/bin/Debug/Privatezilla.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/bin/Debug/Privatezilla.exe -------------------------------------------------------------------------------- /src/Privatezilla/bin/Debug/Privatezilla.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/Privatezilla/bin/Debug/Privatezilla.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/bin/Debug/Privatezilla.pdb -------------------------------------------------------------------------------- /src/Privatezilla/bin/Debug/System.Management.Automation.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/bin/Debug/System.Management.Automation.dll -------------------------------------------------------------------------------- /src/Privatezilla/github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/github.png -------------------------------------------------------------------------------- /src/Privatezilla/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/icon.ico -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs: -------------------------------------------------------------------------------- 1 | // 2 | using System; 3 | using System.Reflection; 4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] 5 | -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/DesignTimeResolveAssemblyReferences.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/DesignTimeResolveAssemblyReferences.cache -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.ar.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.ar.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.de.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.de.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.es.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.es.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.fr.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.fr.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.it.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.it.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.ru.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.ru.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.tr.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.tr.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.zh.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Locales.Locale.zh.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.MainWindow.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.MainWindow.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.Properties.Resources.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.Properties.Resources.resources -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.csproj.AssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.csproj.AssemblyReference.cache -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.csproj.CopyComplete: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.csproj.CopyComplete -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.csproj.CoreCompileInputs.cache: -------------------------------------------------------------------------------- 1 | 1a1bafef70b1d00957f204ba49e660dd26d0bb72 2 | -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\Privatezilla.exe.config 2 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\Privatezilla.exe 3 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\Privatezilla.pdb 4 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\ar\Privatezilla.resources.dll 5 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\de\Privatezilla.resources.dll 6 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\fr\Privatezilla.resources.dll 7 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\it\Privatezilla.resources.dll 8 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\tr\Privatezilla.resources.dll 9 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\es\Privatezilla.resources.dll 10 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\ru\Privatezilla.resources.dll 11 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\zh\Privatezilla.resources.dll 12 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\bin\Debug\System.Management.Automation.dll 13 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.resources 14 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.MainWindow.resources 15 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Properties.Resources.resources 16 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.ar.resources 17 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.de.resources 18 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.fr.resources 19 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.it.resources 20 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.tr.resources 21 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.es.resources 22 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.ru.resources 23 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.Locales.Locale.zh.resources 24 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.csproj.GenerateResource.cache 25 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.csproj.CoreCompileInputs.cache 26 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\ar\Privatezilla.resources.dll 27 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\de\Privatezilla.resources.dll 28 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\fr\Privatezilla.resources.dll 29 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\it\Privatezilla.resources.dll 30 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\tr\Privatezilla.resources.dll 31 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\es\Privatezilla.resources.dll 32 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\ru\Privatezilla.resources.dll 33 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\zh\Privatezilla.resources.dll 34 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.csproj.CopyComplete 35 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.exe 36 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.pdb 37 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.csproj.AssemblyReference.cache 38 | C:\Users\Belim\Desktop\Privatezilla\Privatezilla\obj\Debug\Privatezilla.csproj.SuggestedBindingRedirects.cache 39 | -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.csproj.GenerateResource.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.csproj.GenerateResource.cache -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.csproj.SuggestedBindingRedirects.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.csproj.SuggestedBindingRedirects.cache -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.exe -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/Privatezilla.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/Privatezilla.pdb -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/TempPE/Locales.Locale.Designer.cs.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/TempPE/Locales.Locale.Designer.cs.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/ar/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/ar/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/de/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/de/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/es/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/es/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/fr/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/fr/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/it/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/it/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/ru/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/ru/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/tr/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/tr/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/obj/Debug/zh/Privatezilla.resources.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/obj/Debug/zh/Privatezilla.resources.dll -------------------------------------------------------------------------------- /src/Privatezilla/privatezilla.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/builtbybel/privatezilla/71a66a619fdb6b4db9a5ddc29759163008315b3b/src/Privatezilla/privatezilla.ico --------------------------------------------------------------------------------