Wix - WixBundleOriginalSourceFolder 与 WixBundleSourceProcessFolder
Wix - WixBundleOriginalSourceFolder vs WixBundleSourceProcessFolder
WiX 内置变量的文档是 here。
WixBundleOriginalSourceFolder - gets the folder from where the bundle originally ran.
WixBundleSourceProcessFolder - gets the source folder of the bundle where originally executed. Will only be set when bundle is executing in the clean room
两个问题:
- "ran"和"executed"有什么区别?
- "Will only be set when bundle is executing in the clean room" 的含义(以及后果)是什么?
我遇到了产品已安装的问题。在这种情况下,WixBundleOriginalSourceFolder
不是我想要的。我想要用户刚刚双击 setup.exe 的文件夹,这可能与原始文件夹不同。 WixBundleSourceProcessFolder
似乎给了我正确的文件夹,但它的描述让我有点紧张,我想澄清一下它的真正含义。
在此上下文中,'ran' 表示当双击 [或从命令行 运行 时捆绑可执行文件所在的位置] ... 'executed' 表示系统调用后实际 运行 捆绑可执行文件副本的位置。
一尘不染?
稍微收紧 Sharpenologist 给出的答案:
WixBundleOriginalSourceFolder
是软件最初 运行 的来源。因此,如果您从下载文件夹中下载了某些内容 运行,那么它就会 return。 WiX 会为所有后续 运行 记住此位置,即使您现在已经删除了该文件夹(或者删除了它,如果它是 DVD 或 USB 密钥)。因此在卸载时,此文件夹将是您最初 运行 安装的位置,无论它是否存在。
WixBundleSourceProcessFolder
是软件目前 运行 来自的地方。所以这可能与第一个 运行 上的 WixBundleOriginalSourceFolder
相同,但将来自修复或卸载时的包缓存。如果您在安装过程中需要重启,它也会来自包缓存。
是不是更清楚了?
WiX 内置变量的文档是 here。
WixBundleOriginalSourceFolder - gets the folder from where the bundle originally ran.
WixBundleSourceProcessFolder - gets the source folder of the bundle where originally executed. Will only be set when bundle is executing in the clean room
两个问题:
- "ran"和"executed"有什么区别?
- "Will only be set when bundle is executing in the clean room" 的含义(以及后果)是什么?
我遇到了产品已安装的问题。在这种情况下,WixBundleOriginalSourceFolder
不是我想要的。我想要用户刚刚双击 setup.exe 的文件夹,这可能与原始文件夹不同。 WixBundleSourceProcessFolder
似乎给了我正确的文件夹,但它的描述让我有点紧张,我想澄清一下它的真正含义。
在此上下文中,'ran' 表示当双击 [或从命令行 运行 时捆绑可执行文件所在的位置] ... 'executed' 表示系统调用后实际 运行 捆绑可执行文件副本的位置。
一尘不染?
稍微收紧 Sharpenologist 给出的答案:
WixBundleOriginalSourceFolder
是软件最初 运行 的来源。因此,如果您从下载文件夹中下载了某些内容 运行,那么它就会 return。 WiX 会为所有后续 运行 记住此位置,即使您现在已经删除了该文件夹(或者删除了它,如果它是 DVD 或 USB 密钥)。因此在卸载时,此文件夹将是您最初 运行 安装的位置,无论它是否存在。
WixBundleSourceProcessFolder
是软件目前 运行 来自的地方。所以这可能与第一个 运行 上的 WixBundleOriginalSourceFolder
相同,但将来自修复或卸载时的包缓存。如果您在安装过程中需要重启,它也会来自包缓存。
是不是更清楚了?