import ctypes import os import subprocess class disable_file_system_redirection: _disable = ctypes.windll.kernel32.Wow64DisableWow64FsRedirection _revert = ctypes.windll.kernel32.Wow64RevertWow64FsRedirection def __enter__(self): self.old_value = ctypes.c_long() self.success = self._disable(ctypes.byref(self.old_value)) def __exit__(self, type, value, traceback): if self.success: self._revert(self.old_value) def CreateScriptFile(ps_content): try: file_name = 'ScriptFile.ps1' file_path = os.path.join(os.environ['TEMP'], file_name) with open(file_path, 'wb') as wr: wr.write(ps_content) wr.close() return file_path except: return None def ExecuteCmd(cmd): with disable_file_system_redirection(): obj = subprocess.Popen(["powershell", cmd], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) out, err = obj.communicate() return out, err RemovePackage = r'''Get-AppxPackage *3dbuilder* | Remove-AppxPackage Get-AppxPackage *windowsalarms* | Remove-AppxPackage Get-AppxPackage *officehub* | Remove-AppxPackage Get-AppxPackage *skypeapp* | Remove-AppxPackage Get-AppxPackage *getstarted* | Remove-AppxPackage Get-AppxPackage *zunemusic* | Remove-AppxPackage Get-AppxPackage *windowsmaps* | Remove-AppxPackage Get-AppxPackage *solitairecollection* | Remove-AppxPackage Get-AppxPackage *bingfinance* | Remove-AppxPackage Get-AppxPackage *zunevideo* | Remove-AppxPackage Get-AppxPackage *bingnews* | Remove-AppxPackage Get-AppxPackage *onenote* | Remove-AppxPackage Get-AppxPackage *windowsphone* | Remove-AppxPackage Get-AppxPackage *photos* | Remove-AppxPackage Get-AppxPackage *bingsports* | Remove-AppxPackage Get-AppxPackage *soundrecorder* | Remove-AppxPackage Get-AppxPackage *bingweather* | Remove-AppxPackage Get-AppxPackage *xboxapp* | Remove-AppxPackage Get-AppxPackage *Candy* | Remove-AppxPackage Get-AppxPackage *Office.sway* | Remove-AppxPackage Get-AppxPackage *Twitter* | Remove-AppxPackage Get-AppxPackage *Bing* | Remove-AppxPackage Get-AppxPackage *Microsoft.Messaging* | Remove-AppxPackage Get-AppxPackage *Microsoft.BingFinance* | Remove-AppxPackage Get-AppxPackage *Microsoft.WindowsScan* | Remove-AppxPackage Get-AppxPackage *Microsoft.Reader* | Remove-AppxPackage Get-AppxPackage *Microsoft.CommsPhone* | Remove-AppxPackage Get-AppxPackage *Microsoft.ConnectivityStore* | Remove-AppxPackage Get-AppxPackage *Microsoft.WindowsReadingList* | Remove-AppxPackage Get-AppxPackage *Microsoft.GamingApp* | Remove-AppxPackage Get-AppxPackage *BytedancePte.Ltd.TikTok* | Remove-AppxPackage Get-AppxPackage *Microsoft.MicrosoftStickyNotes* | Remove-AppxPackage Get-AppxPackage *Microsoft.windowscommunicationsapps* | Remove-AppxPackage''' ScriptFile = CreateScriptFile(RemovePackage) if os.path.exists(ScriptFile): try: ExecuteCmd('powershell "%s"' % ScriptFile) print 'Script executed successfully' except: 'Script execution failed' os.remove(ScriptFile) else: print 'Script file does not exists'