如何远程卸载另一个域用户计算机上的程序?

ize皮

我有一个需要卸载iCloud的用户。问题是我现在听到她像病的骆驼一样穿过墙壁咳嗽了两周(“ HAROUUUUUU”),我不想得到她的付出。

如何远程卸载程序?

Windows 7的两端,AD,我具有足够的域权限,可以通过以下方式查看她计算机上的已安装程序:

wmic /output:c:\userName.txt /user:MYUSERNAMEHERE /node:"THEIRCOMPUTERNAME" product get name

(不要忽略他们的计算机名周围的引号),我也可以浏览她的C $驱动器。

编辑:我发布了问题和答案,以传播知识。尽管此示例是我一次学会了如何远程卸载的示例,但使用以下解决方案的一个更好的情况是您需要进行安静的卸载时,我碰巧为该用户避免了这种情况。中断用户的工作流程,或通过网络进行大规模卸载。

ize皮

这是两个非常有知识的资料的汇编答案:

步骤1,Windows何处存储要卸载的MSI文件?找到(通常)安装了程序的MSI(跳至“ 2”),以实现更简单的方法):

用户安装某些应用程序时,Windows会执行以下操作:

1)为此应用程序创建一个注册表项。

HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall [ProductId GUID]

如果您有权访问应用程序安装程序的原始msi文件,则可以通过以下方法找到[ProductID GUID]:在orca.exe中打开该msi文件,然后单击orca左侧的“属性”,然后查找“ ProductCode”右边的线。如果您无权访问原始* .msi文件,则只需在注册表项HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall中搜索应用程序的名称即可。

如果要从“控制面板”中已安装的应用程序列表中删除您的应用程序(例如拒绝卸载),则可以从此“卸载”键中删除该条目。它肯定会从控制面板中的列表中消失,但是Windows仍会记住它。例如,如果您尝试安装同一应用程序的下一版本,则安装程序可能仍会坚持卸载先前版本。参见第2项。

2)Windows将原始* .msi文件复制到文件夹C:\ Windows \ Installer中,并将其重命名为随机名称(尽管保留了.msi扩展名)。Windows还会在HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Installer \ UserData [InternalUserId] \ Products [一些类似于GUID的随机字符序列中识别Windows安装] \ InstallProperties中的注册表中创建一个密钥。此注册表项中的ValueName“ LocalPackage”将指向重命名的msi文件。要在C:\ windows \ Installer中找到文件,可以在Windows资源管理器中导航到该文件夹​​,将其切换到“详细信息”视图,使“主题”列可见,所有nnnnnnnn.msi都将找到其对应的产品名称。–请注意,添加“主题”后,请更改排序方式以刷新列表

3)对于上面的链接@Joe B来说这是必需的:在卸载程序接受文件之前,我必须复制5188bfc6.msi文件(hex#.msi)并将其重命名为原始文件名MyApp.msi。此卸载后工作正常。

步骤2,安装PsExec(来自MS)-这些说明摘自https://techtalk.gfi.com/how-to-uninstall-software-from-remote-pcs-using-the-command-line/

从Microsoft可以从http://technet.microsoft.com/zh-cn/sysinternals/bb897553.aspx下载PSEXEC 通过将文件复制到PATH中的目录,将其安装到计算机上。System32会做的很好,或者您可以创建一个新目录来存储您喜欢的命令行工具,并将其添加到您的路径中。

步骤3,卸载程序:

1.在复制PSEXEC的计算机上打开管理命令提示符。

2.运行以下命令。

psexec \\remotecomputername  msiexec /x /q pathtotheMSIfile

远程计算机的UNC路径可以使用NetBIOS名称或FQDN。MSI文件的路径必须相对于您要从中卸载软件的计算机。同样,UNC路径在这里也可以正常工作。/ x表示卸载,/ q表示无需用户输入(安静地)进行卸载。

专家提示:如果使用psexec \ *,它将在域中的每台计算机上运行!

您可以再次使用该WMIC命令,以确保它不再存在。

wmic /output:c:\userName.txt /user:MYUSERNAMEHERE /node:"THEIRCOMPUTERNAME" product get name

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何获得在计算机上启动的设备的IP地址,并在具有机队的另一个设备中使用它?

HTA:“此计算机上的安全设置禁止访问另一个域上的数据源”

如何调试远程计算机上的程序?

从同一台计算机上的另一个进程接收Task <T>

如何与另一台计算机上的设备进行远程appium会话

在同一台计算机上配置了多个GIT帐户,一个使用Gerrit,另一个使用GitHub

如何在运行时从远程计算机上的另一个脚本更改变量的值?

R set.seed由另一个用户在另一台计算机上复制

如何先ssh -Y然后su-<另一个用户>,仍然将X应用程序转发到本地计算机

当Microsoft Office文档“被锁定以供“另一个用户”编辑”时,确定计算机的名称

将Firefox用户设置移动到同一台计算机上的另一个文件夹

在同一台计算机上为另一个用户注册用户的证书

管理同一台计算机上另一个分区上的另一个Linux安装

为什么我不能为计算机上的另一个用户重设密码?

将SSH密钥从根复制到同一台计算机上的另一个用户

如何将一个接口上的入站流量路由到同一台计算机上的另一个接口?

将文件从一个用户复制到另一台计算机上的另一个用户

关闭另一个用户使用VBA在同一台计算机上打开的excel工作簿

一个人如何从另一台计算机运行安装在一台计算机上的程序?

登录到另一个大陆的远程计算机时,腻子会随机冻结

如何在同一台计算机上从另一个桌面会话访问一个桌面会话?

在同一台计算机上将文件从一个用户复制到ubunta中的另一个用户

是否有可能获得唯一的ID,以区别于计算机和另一个计算机?

将我所有的域计算机移到另一个域

如何卸载无法访问的另一个用户安装的程序?

将AppX程序包从工作计算机传输到另一个计算机

在同一台计算机上访问另一个用户的数据(GUI)

Powershell 远程计算机上的最后一个登录用户

如何使用 PowerShell 脚本在远程计算机上运行另一个 PowerShell 脚本