使用PowerShell管理Windows8应用
引子(?):
我从消费者预览版开始使用的win8,大概是因为我年龄不大的缘故,我很快熟悉了这个操作系统并习惯了使用windows8的Modern App。我之前使用过一个叫Windows8 Modern UI小应用删除卸载管理器的应用软件对我的windows8 app进行管理(破解,离线部署之类的),之前感觉还不错,但是直到我后来升级到windows8.1后,我再次使用此软件后,被处理过的软件就打不开了。百度后发现,这是应用程序损坏的情况。
于是这就验证了那个软件对新系统是不兼容的吧,我也就不敢再用那个软件了。但是那个软件已经照成我的app损坏了一大半,运行闪退甚至没图标之类,我试着使用自带的卸载,最后图标消失,但是重新安装是不可以安装的,实际检测我是没有卸载干净。那么,如何修复呢?
PowerShell使用:
根据网上的说法,我可以使用win8.1附带进去的PowerShell进行管理以对app进行手动卸载,操作是这样的:
- 打开PowerShell
- 使用get-appxpackage指令获取已安装appx列表
- 复制所需卸载的appx的完整包名称(PackageFullName)
- 使用指令remove-appxpackage [完整包名称] 卸载
如果你觉得这个描述不是很清楚,你可以参考这篇文章来进行操作。不过那个文章存在少许错误,这里顺带说一下:
- 你可以通过右键左下角的win图标或者按Winkey+X打开菜单并选择启动PowerShell,当然如果你的菜单里没有此选项,请右键任务栏,点击属性并在“导航选项卡”勾选边角导航的第三个选择框(一看就知道了)。
- 使用get-appxpackage可以获取已经安装的应用列表,当然,直接使用appxpackage指令也可以,效果一样
- PowerShell中,复制的操作方法是先用鼠标左键选中需要复制的内容,然后再内容附近点鼠标右键即可,Ctrl+C没效果...粘贴的话在输入指令那一行右键就可以了
执行完毕后所卸载的程序就被完整卸载了,这时去应用商店重新下载就好了。于是为了实现离线部署,我又了解了一下PowerShell中appxpackage的其他用法:
1、Add-AppxPackage
用途:安装一个appx程序包。
语法:Add-AppxPackage [–DependencyPath <依赖的包路径>]
举例:Add-AppxPackage D:\AppxSource\MyAppx.appx 2、Add-AppxProvisionedPackage
用途:设置应用程序到计算机。
举例:Add-AppxProvisionedPackage -Online -FolderPath D:\Appx
说明:将应用程序设置到计算机,所有的用户都将默认安装此APPX包。 3、Get-AppxPackage
用途:获取应用程序清单
举例:
Get-AppxPackage -AllUsers #获取所有用户安装的APPX包
Get-AppxPackage -Name Package1 -User domain\username #获取指定域下面的指定用户的指定包 4、Get-AppxPackageManifest
用途:获取应用程序包的详细信息
举例:
Get-AppxPackageManifest -Package Package1 5、Remove-AppxPackage
用途:卸载一个appx程序包。
语法:Remove-AppxPackage <包名>
举例:Remove-AppxPackage MyAppx 6、Remove-AppxProvisionedPackage
用途:移除计算机对包的设置
举例:Remove-AppxProvisionedPackage -Online -PackageName MyAppxPkg
说明:移除之后,新建用户不再安装此包,但已经安装此包的用户,不会被删除。
后续(?):
于是我就又可以部署离线appx了。之后我突然有想法要写一个方便卸载appx的小应用,之后却发现有这样的问题,执行需要使用管理员身份才能进行操作,而程序获取了管理员权限后,程序启动的进程就不是当前用户而是管理员用户去启动进程了。(可以在任务管理器中查看到进程的用户名是管理员)。这时,卸载操作会卸载所属进程(管理员)账户上的appx应用,那么这样无法达到管理效果。
至于这个问题,目前没有找到解决方案,找到后我会来补全的。。。
顺便,csdn的文章审核真是让我感觉到不方便呢。。
使用PowerShell管理Windows8应用的更多相关文章
- 【转】PowerShell入门(十二):编写PowerShell管理单元和二进制模块
转至:http://www.cnblogs.com/ceachy/archive/2013/03/13/PowerShell_SnapIn.html PowerShell一开始就提出利用管理单元来实现 ...
- Azure PowerShell (4) 使用PowerShell管理多个订阅
<Windows Azure Platform 系列文章目录> 笔者手上有两个Azure账户. - Azure Global (windowsazure.com)账户.有两个订阅. - 世 ...
- 使用 Windows PowerShell 管理Windows Azure映像
你可以使用 Azure PowerShell 模块中的 cmdlet 管理可供你的 Azure 订阅使用的映像.这包括 Azure 提供的映像以及你上载的映像.对于某些映像任务,你还可以使用 Azur ...
- 使用 Azure PowerShell 管理 Azure 虚拟网络和 Windows 虚拟机
Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程介绍了如何在虚拟网络中创建多个虚拟机 (VM),以及如何在虚拟机之间配置网络连接. 你将学习如何执行以下操作: 创建虚拟网络 创 ...
- 使用 PowerShell 管理 Azure 磁盘
Azure 虚拟机使用磁盘来存储 VM 操作系统.应用程序和数据. 创建 VM 时,请务必选择适用于所需工作负荷的磁盘大小和配置. 本教程介绍如何部署和管理 VM 磁盘. 学习内容: OS 磁盘和临时 ...
- PowerShell管理Azure
PowerShell第一次连接Azure1.下载Azure SDK,安装azure powershell http://azure.microsoft.com/zh-cn/downloads/?rnd ...
- 如何使用PowerShell管理Windows服务
[TechTarget中国原创] 作为一名系统管理员,最常见的任务之一就是学会管理Windows服务,这是保证Windows服务器和客户端正常运行的重要内容. 许多操作系统和应用程序都依赖于这些服务. ...
- 使用powershell管理域用户
在域内环境中,常常需要使用命令行管理域用户,此时可以使用Active Directory中的命令行工具Dsquery.exe,或CSVE,以及Ldifde等,其实,使用Windows Powershe ...
- PowerShell管理Exchange
#添加Exchange管理单元get-pssnapin -registeredadd-pssnapin microsoft.exchange* #启用邮箱账号(需要域管理员权限,因为需要将某些属性写入 ...
随机推荐
- CDZSC_2015寒假新人(1)——基础 d
Description These days, I am thinking about a question, how can I get a problem as easy as A+B? It i ...
- 实现一个Memcpy函数:将源指针所指的区域从起始地址开始的n个字节复制到目的指针所指区域
首先肯定要先看看这两部分是不是有内存重叠?为什么? 1.因为如果有内存重叠(目的地址起始位置处于源指针所指区域之中),你再从起始位置复制的话,这样目的地址改变的时候将源地址内存里面存的东西给改变了,所 ...
- Nginx 变量漫谈(五)
前面在 (二) 中我们已经了解到变量值容器的生命期是与请求绑定的,但是我当时有意避开了“请求”的正式定义.大家应当一直默认这里的“请求”都是指客户端发起的 HTTP 请求.其实在 Nginx 世界里有 ...
- struts2_20140720
有这样的感觉:前面学的东西弄会了,过了一段时间又感觉陌生了,还要重新开始.这次想个好办法,把写的程序用博客记录下来,把自己的学历历程用博客的形式呈现出来,一来可以方便复习,而来可以以后开发程序可以快速 ...
- INNO SETUP 获得命令行参数
原文 http://www.cnblogs.com/ahuo/archive/2009/07/30/1534998.html ); Result := CmdLine; ...
- Chapter 13. Miscellaneous PerlTk Methods PerlTk 方法杂项:
Chapter 13. Miscellaneous PerlTk Methods PerlTk 方法杂项: 到目前为止,这本书的大部分章节 集中在特定的几个部件, 这个章节覆盖了方法和子程序 可以被任 ...
- 【Leetcode】二叉树层遍历算法
需求: 以层遍历一棵二叉树,二叉树的结点结构如下 struct tree_node{ struct tree_node *lc; struct tree_node *rc; int data; }; ...
- VMware网络模式介绍(下篇)
VMware网络模式介绍 VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式). Bridged 模式: 在桥接模式下,VMwa ...
- EasyUI两种动态添加tab Iframe页面的方法
/** 动态添加tab-----方式一 **/ function addIframeTab(titleTxt,href,icon) { $('#mytabs').tabs('addIframeTab' ...
- 顶尖数据挖掘教学案例库(TipDM-C10)产品白皮书
顶尖数据挖掘教学案例库 (TipDM-C10) 产 品 说 明 书 广州泰迪智能科技有限公司 版权所有 地址: 广州市经济技术开发区科学城232号 网址: ht ...