引子(?):

我从消费者预览版开始使用的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应用的更多相关文章

  1. 【转】PowerShell入门(十二):编写PowerShell管理单元和二进制模块

    转至:http://www.cnblogs.com/ceachy/archive/2013/03/13/PowerShell_SnapIn.html PowerShell一开始就提出利用管理单元来实现 ...

  2. Azure PowerShell (4) 使用PowerShell管理多个订阅

    <Windows Azure Platform 系列文章目录> 笔者手上有两个Azure账户. - Azure Global (windowsazure.com)账户.有两个订阅. - 世 ...

  3. 使用 Windows PowerShell 管理Windows Azure映像

    你可以使用 Azure PowerShell 模块中的 cmdlet 管理可供你的 Azure 订阅使用的映像.这包括 Azure 提供的映像以及你上载的映像.对于某些映像任务,你还可以使用 Azur ...

  4. 使用 Azure PowerShell 管理 Azure 虚拟网络和 Windows 虚拟机

    Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程介绍了如何在虚拟网络中创建多个虚拟机 (VM),以及如何在虚拟机之间配置网络连接. 你将学习如何执行以下操作: 创建虚拟网络 创 ...

  5. 使用 PowerShell 管理 Azure 磁盘

    Azure 虚拟机使用磁盘来存储 VM 操作系统.应用程序和数据. 创建 VM 时,请务必选择适用于所需工作负荷的磁盘大小和配置. 本教程介绍如何部署和管理 VM 磁盘. 学习内容: OS 磁盘和临时 ...

  6. PowerShell管理Azure

    PowerShell第一次连接Azure1.下载Azure SDK,安装azure powershell http://azure.microsoft.com/zh-cn/downloads/?rnd ...

  7. 如何使用PowerShell管理Windows服务

    [TechTarget中国原创] 作为一名系统管理员,最常见的任务之一就是学会管理Windows服务,这是保证Windows服务器和客户端正常运行的重要内容. 许多操作系统和应用程序都依赖于这些服务. ...

  8. 使用powershell管理域用户

    在域内环境中,常常需要使用命令行管理域用户,此时可以使用Active Directory中的命令行工具Dsquery.exe,或CSVE,以及Ldifde等,其实,使用Windows Powershe ...

  9. PowerShell管理Exchange

    #添加Exchange管理单元get-pssnapin -registeredadd-pssnapin microsoft.exchange* #启用邮箱账号(需要域管理员权限,因为需要将某些属性写入 ...

随机推荐

  1. Sublime Text 3中使用正则表达式删除空行

    Sublime Text 3 中使用正则表达式删除空行 Ctrl+H Find What: \n\n+ Replace With:\n

  2. TCP的拥塞控制(转载)

    1.引言 计算机网络中的带宽.交换结点中的缓存和处理机等,都是网络的资源.在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就会变坏.这种情况就叫做拥塞. 拥塞控制就是防止 ...

  3. centos安装如何选择安装包

    1.根据经验,选择安装包时应该按最小化原则,即不需要的或者不确定是否需要的就不安装,这样可以最大程度上确保系统安全. 2.如果安装过程落了部分包组或者其他伙伴安装时没选,再安装后可以按如下方式补上安装 ...

  4. Caused by: android.view.InflateException: Binary XML file line #12: Error inflating class android.support.design.widget.TabLayout,TableLayout引起页面崩溃

    在使用TableLayout的时候,运行引用程序直接Crash. FATAL EXCEPTION: main Process: com.edaixi.activity, PID: 9703 java. ...

  5. mysql 主键自增

    比如创建表格,表格ID需要自增 将ID设置成主键,并配置auto_increment 例: create table test( id  int(4)  not null  primary key   ...

  6. 测试框架mochajs详解

    测试框架mochajs详解 章节目录 关于单元测试的想法 mocha单元测试框架简介 安装mocha 一个简单的例子 mocha支持的断言模块 同步代码测试 异步代码测试 promise代码测试 不建 ...

  7. Oracle EBS-SQL (INV-11):检查子库存会计信息.sql

    select          OOD.ORGANIZATION_CODE                                               库存组织代码,          ...

  8. hdu 4686 Arc of Dream_矩阵快速幂

    题意:略 构造出矩阵就行了 |   AX   0    AXBY   AXBY       0  |                                                   ...

  9. sysbench的安装与使用

    sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试.数据库目前支持MySQL/Oracle/PostgreSQL 安装过程(rhel5.8+mys ...

  10. zabbix学习入门总结

    对于zibbix,我现在的轮廓,是多个agent,一个server,再加上一些可选的proxy. 从通信的角度来看,就是数据流从agents流向server.但是agent跟server数据传送的细节 ...