【问题标题】:Can't delete files in VS 2015 Setup project无法删除 VS 2015 安装项目中的文件
【发布时间】:2016-09-26 17:50:36
【问题描述】:

我有一个普通的 VS 2015 安装项目(安装了扩展,所以它看起来像 VS 2010 和更早版本的安装项目)。

在“目标机器上的文件系统”部分,我添加了一个文件夹“MyAppFolder”,然后添加了解决方案项目之一的主要输出。然后VS也添加了一堆dll。

但是,当我尝试删除它时显示的文件夹:

无法删除文件夹。文件夹不为空或可能包含已排除 文件,未显示。

嗯,是的,它不是空的。如果我右键单击单个 dll 文件,“删除”选项将被禁用。

我不想在目标机器上安装这个文件夹。如何在我的安装项目中删除此文件夹?

【问题讨论】:

  • 您可能需要多解释一下,因为如果您不希望将文件夹+文件安装在目标机器上,那么不要将文件夹和项目输出添加到设置项目。您明确地安装文件夹和文件而不是说您不想,这是矛盾的。
  • 是的,我明白你的意思。我宁愿说我想要该文件夹,但不再想要它,但现在我无法从安装项目中删除它。

标签: visual-studio-2015 setup-project


【解决方案1】:

从安装中删除不再需要的文件(例如,因为它们在自定义操作中使用)的受支持方法是将组件 ID 设置为 null。

https://msdn.microsoft.com/en-us/library/windows/desktop/aa368007(v=vs.85).aspx

请参阅有关组件 ID 的备注。

Visual Studio 设置中不支持此功能,因此通常通过使用 Orca 等工具编辑 MSI 文件手动完成。

一般来说,我认为您总是需要在删除文件夹之前删除单个文件。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,这对我有用:

    1. 先删除文件夹内的文件。
    2. 会有文件无法删除,将其从“检测到的依赖项”项目中排除,然后重试。
    3. 删除父文件夹。

    【讨论】:

    • 这部分对我有用:我无法删除父文件夹(使用 VS2017):弹出一个错误,可能存在已排除的依赖项,因此未显示...所以我再次包含它们并且不得不剪切它们并将它们粘贴到“应用程序文件夹”中。这终于让我的“用户桌面”父文件夹清空了......
    【解决方案3】:

    我在处理大量数据文件及其相关文件夹时遇到了这个问题。有64个文件夹和1000多个文件。这是我找到的解决方案:-

    删除数据文件

    1. 在左侧窗格的解决方案资源管理器视图中完全展开安装项目,直到列出安装中复制的所有文件
    2. 选择您要删除的所有文件(在我的情况下为全部)
    3. 从主菜单中选择编辑->删除以从安装中删除所有文件
    4. 转到“文件系统”视图并一一删除其包含的文件夹。

    使用这种方法,我设法在不到 1 分钟的时间内删除了 >1000 个文件及其文件夹

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-12
      • 1970-01-01
      • 2016-05-11
      • 1970-01-01
      相关资源
      最近更新 更多