问题标签 [windows-installer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2245 浏览

windows-vista - 在 Vista 上的 Windows Installer 中使 UAC 成为可选

我已经编写了一个 msi 文件,它在 UI 阶段提供了“per-user”或“for all”安装选项,现在发现安装程序在 Vista 上失败:

  • 如果我只是重用适用于 XP 的安装程序,Vista 将触发 UAC 提示,即使是“每用户”安装,也使安装毫无意义
  • 如果我在 PID_WORDCOUNT 的第 3 位关闭 UAC,Vista 将不再调用 UAC,所以即使用户有权安装到机器注册表中(比如说),也不会发生权限提升,所以安装失败。

那么:如何防止安装程序在不需要时调用 UAC?或者,即使设置了第 3 位,我如何以编程方式请求 UAC?

0 投票
4 回答
1371 浏览

installation - MSI 引导:外部 URL

经过大量搜索,我找到了一些关于如何创建引导 msi 的描述,但这些解决方案都假定 msi 是本地的或标准的 Windows 组件。有没有办法制作一个使用普通 MSI 或 Wix 代码下载安装程序(这也是一个 msi)的 msi,而不是让引导程序执行一些非本地程序来这样做?

0 投票
6 回答
8160 浏览

windows - 如何获取安装目录?

MSI 为将来的卸载任务存储安装目录。

使用该INSTALLPROPERTY_INSTALLLOCATION属性(即"InstallLocation")仅适用于安装程序在安装期间设置了该ARPINSTALLLOCATION属性。但是这个属性是可选的,几乎没有人使用它。

如何检索安装目录?

0 投票
3 回答
470 浏览

installation - MSI 安装问题

我有一个基于 MSI 的安装,我根据我的安装打包软件(即 Wise Package Studio 7.0 SP2)将其打包在一个 EXE 文件中。

我对安装进行了许多更改,每次我测试它们时,它们都运行良好......直到现在。

我在安装完成时更改了对话框上的一些文本,现在看来,无论我如何/在何处运行安装,它都不会采用我的“新”版本。它继续“认为”它已经安装,甚至在删除/修复/修改结束时显示我的对话文本的旧版本。

几乎就像它在某处缓存了 MSI/EXE,而不是运行我重新编译的那个(并修复了消息/进行了更改),它继续从某个地方运行“旧”的那个。

知道要检查什么/这里可能发生什么吗?是否有我需要检查的 windows 文件夹?我在 XP SP2 上。

0 投票
2 回答
536 浏览

c# - Reading files in a .NET project

I have a C# .NET web project that I'm currently working on. What I'm trying to do is read some files that I dropped into a dir which is at the same level as fileReader.cs which is attempting to read them. On a normal desktop app the following would work:

However because it's a web project the execution context is different, and I don't know how to access these files?

Eventually fileReader will be called in an installation routine. I intend to override one of the Installer.cs' abstract methods so will this affect the execution context?

0 投票
3 回答
463 浏览

wix - 关于制作下载器应用程序的任何指示?最好是 Wix/MSI?

我们有一个希望我们的用户下载的应用程序。目前,他们单击链接并下载 EXE。我们想做的是有一个启动板/下载器应用程序,该应用程序体积小且下载速度快,然后可以下载并安装主应用程序。

在理想情况下,下载器将是一个 MSI(因此我们可以修改一些 MSI 数据库)。

我是一个 seriosu MSi 新手,所以我对从哪里开始寻找没有真正的想法。任何帮助或指示将不胜感激!

谢谢

安迪

0 投票
6 回答
7416 浏览

deployment - 如何从 .reg 文件生成 WiX XML?

给定 .reg 文件,是否有生成 WiX XML 的工具?


在 2.0 中,您应该能够运行 tallow 来生成注册表 XML:

对于它的价值,我拥有的动物脂版本正在生成空 XML。

在 3.0 中,tallow 已被替换为 heat,但我不知道如何让它从 .reg 文件中产生输出。

有没有办法在 3.0 中做到这一点?

0 投票
1 回答
2140 浏览

wix - WIX:如何根据运行安装程序的操作系统更改注册表项?

我想通过以下方式设置注册表项

如果操作系统是 Vista 则 HKLM\MyKey1\MyValue=1 否则 HKLM\MyKey2\MyValue=1

我知道如何在 WIX 中设置注册表项,但似乎无法在元素上设置条件。

0 投票
2 回答
11919 浏览

visual-studio - 在 VS 2008 安装项目中设置制造商

我有一个安装服务的 Windows 安装项目。除了一件事之外,一切都很好:安装期间提供给用户的默认目录的格式为“C:\Program Files\Microsoft\ProgramName”。我正在尝试修改它,以便我们使用公司名称而不是“Microsoft”。

我找到了安装项目的应用程序文件夹属性,它的 DefaultLocation 属性为“[ProgramFilesFolder][Manufacturer][ProductName]”。所以,看起来我需要做的就是设置“制造商”属性,我就准备好了。但是,我找不到设置此属性的方法!我曾希望它会从主要输出项目的 AssemblyInfo 中的公司名称中获取它,但它没有。

我可以从 DefaultLocation 中删除“[Manufacturer]”并将其替换为我们的文字公司名称,但这似乎是一个 hack。

如何设置制造商名称?

请注意,我没有使用成熟的 WiX 项目。我只是在我的解决方案中添加了一个 Windows 设置项目。

提前感谢您的帮助。

0 投票
3 回答
28230 浏览

.net - 单击一次 - 所有用户

如何配置单击一次以为所有用户安装应用程序。在另一个论坛上,我必须“使用 MSI” - 谢谢 - 但如何。此外,第一个安装用户可能不是管理员 - 这可能是一个问题。我希望所有用户都触发更新检查。没有本地存储,它是 WCF 服务的 WPF 客户端。

我们是 XP,内部。