我想删除错误安装的程序并重新安装。我可以使用subprocess.Popen调用msiexe来删除程序,并以相同的方式安装新程序,但只能使用两个独立的脚本。但我还需要删除C:\ Programs文件中的一些文件夹以及C:\ Doc&设置。如何遍历目录结构并删除文件夹?如何从下一行重启PC后继续运行脚本以安装新程序。
答案 0 :(得分:1)
简而言之,这就是你需要做的事情。
您可以使用remove()
模块中的rmdir()
和removedirs()
或os
方法删除文件和文件夹(假设您的用户/程序具有管理权限)。
要重新启动脚本,首先需要为其添加一些命令行参数处理,以便告知它是从头开始还是从另一点继续。
要使脚本在重新启动后运行,您需要在Windows注册表中设置一个值。我相信它们存储在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
和HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
键下。在那里,您可以添加一个字符串值(类型REG_SZ
),其中包含一个命令行来调用您的脚本并向其传递相应的命令行参数,这将告诉它继续并重新安装该程序。