为 Windows 服务创建 MSI 安装程序

2024-04-02

我在 Visual Studio 2008 中有一个 Windows 服务项目。我还添加了安装和部署项目。不幸的是,当我安装它时,该服务没有显示在服务 MMC 管理单元中。

我已经将 ProjectInstaller 添加到服务项目中,并且已按照说明进行操作here http://www.branded3.com/blogs/c-windows-services-creating-an-msi-installer/已经。


您正在寻找的(我可以看到那篇文章对此没有任何内容)是一个 ProjectInstaller 类。如果您在设计视图中打开服务,则可以右键单击并选择“添加安装程序”。这会向您的项目添加一个类,默认情况下(我认为)名为 ProjectInstaller.cs。在设计视图中,您将看到两个默认名称为 ServiceProcessInstaller1 和 ServiceInstaller1 的项目。更改每个属性的属性,了解您希望服务在哪个帐户下运行、服务名称是什么、描述等。

然后,在您的 MSI 项目中,单击“自定义操作编辑器”图标,并将“YourServiceProject 的主要输出”添加到所有操作(安装、提交、回滚和卸载)。

这是一个Microsoft 的旧版演练 http://support.microsoft.com/kb/317421.

祝你好运。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为 Windows 服务创建 MSI 安装程序 的相关文章

  • Windows 安装程序和安装应用程序合并到一个文件中?

    我使用 Visual Studio 在 C 中编写了一个应用程序 我创建了一个项目设置文件 该文件在我的调试中为我创建了文件 Windows Installer 和安装应用程序都是必需的 但我想将它们合并为一个 就像当您下载应用程序时 安装
  • 删除 VB.NET 源代码文件中的所有注释

    Visual Studio 编辑器中是否有宏可以删除 VB NET 源文件中的所有注释 使用菜单编辑 gt 查找和替换 gt 使用正则表达式快速替换 找什么 用 来代替 1 将取代 text comment to text
  • 为什么 Visual Studio 只允许项目中的每个文件有一个链接?

    我希望在一个解决方案的多个不同项目中拥有一个文件 但是 Visual Studio 只允许每个解决方案有一个到该文件的链接 有办法解决这个问题吗 VS 项目中的单个文件有多个软链接会出现什么问题 Update 我已经添加了下面评论中所述的链
  • 无法从 Windows 服务连接到 Oracle(错误:ORA-12154: TNS: 无法解析服务名称 (12154))

    最新更新 2011 年 11 月 2 日上午 9 点 我尝试从服务运行 tnsping 它有效 但是 当我尝试连接时 仍然收到错误 12154 我现在完全困惑了 我不明白 tnsping 如何正常工作 但连接无法解析服务名称 由于某种原因
  • 不接受 TableAdapter 中的参数

    我目前正在尝试设置我的 TableAdapters 但它不允许我使用参数 这使得它毫无用处 当我创建新查询时 SELECT users FROM users WHERE name LIKE name 它告诉我附近有一个 SQL 错误 我使用
  • WIX MSI 软件包卸载

    我正在使用 WIX 作为安装程序包 当我通过双击原始 msi 包卸载该包时 一切都很好 当我从控制面板卸载时 它会给我一个最小的用户界面卸载 我已在 MSI 中写入一个自定义操作 询问用户是否要卸载某些数据库等 最小 UI 卸载时不会发生这
  • 使用本地系统帐户运行时,GetAccessControl 方法失败,出现意外错误代码 3

    我已经创建了 Windows 服务并使用本地系统帐户运行它 该服务正在读取用户文件并查找其所有者 在获取文件的访问权限以查找所有者时 它抛出以下异常 方法失败 出现意外错误代码 3 StackTrace 在 System Security
  • 在生产 Web 服务器上安装 Visual Studio 的原因

    有人将 Visual Studio 安装在 Web 服务器上 其唯一目的是为传入请求提供服务 是否有正当理由 说真的 有人可能这样做有什么特殊原因吗 一种可能的用途是连接到 Web 服务器并调试某种错误或内存泄漏 这些错误或内存泄漏已被证明
  • 有没有办法从 Windows 7 上的 Windows 服务启动 GUI 应用程序?

    我做了很多搜索 寻找一种从 Windows 7 上的 Windows 服务启动 GUI 应用程序的方法 我发现的大部分内容是 Windows 7 服务现在在单独的用户会话中运行 并且无法显示任何图形界面给当前用户 我想知道是否有任何解决方法
  • 在 Visual Studio 中查找所有与 == 进行比较的情况

    我犯了一个错误 使用 来比较 IP 地址 而不是使用 C 中 IPAddress 类的 equals 方法 这将导致比较的是引用而不是值 由于我目前正在研究的解决方案对于一个人项目来说非常大 gt 100 000 行源代码 因此我非常确定我
  • 动态设置 Web 应用程序项目的 IISUrl

    我有一个 Web 应用程序项目 我希望能够在完全独立的 IIS 站点上进行分支和开发 而不必每次都继续编辑 vbproj IISUrl 设置 我尝试添加一些标准属性的导入 以便我可以在 WAP 文件之外维护它们 但是当我在元素中引用它们时
  • Wix:动态添加功能

    我们正在使用 Wix 为我们的软件构建 msi 我们有一些要在目标机器上实现的组件 插件 每个客户端的插件都不同 我们想要做的是创建一个标准构建并修改 msi 包中的功能列表 有没有办法通过自定义操作动态更改功能列表 例如 从自定义操作中读
  • 在 QtCreator 中将 OpenCV 2.3 与 Qt 结合使用

    随着 OpenCV 2 3 版本终于发布 我想在我的系统上编译并安装这个最新版本 由于我经常使用 Qt 和 QtCreator 我当然希望能够在我的 Qt 项目中使用它 我已经尝试了几种方法几个小时 但总是出现错误 第一次尝试 使用WITH
  • 如何阻止 Visual Studio 在设计器中打开我的 winforms 控件

    当我想编辑 查看我创建的 winforms 控件 表单的代码时 我需要右键单击解决方案并选择 查看代码 打开文件的默认操作是 视图设计器 对于任何包含从 winforms 控件继承的类的 C 文件来说 情况似乎都是如此 即使这是间接继承的
  • MSBuild 未使用所有核心进行构建

    我有一个使用 Visual Studios 2008 配置的项目 当我打开 IDE 并点击构建时 系统上的所有核心都用于构建该项目 但是 当我尝试从命令行构建时 仅使用 1 个核心 这是我正在运行的命令 C Windows Microsof
  • Microsoft Visual Studio 安装程序项目 - 如何向使用 Process.Start() 执行但没有修复选项的 MSI 提供重新启动提示

    问题如下 我在 MSI 卸载之前调用了自定义卸载程序 正确关闭我的应用程序后 它会调用msiexec使用 Windows Installer 卸载 MSI 这是通过执行 msiexec x PRODUCT CODE promptrestar
  • 将现有表单添加到 C++/CLI WinForms 项目

    我在不同的解决方案中有两个 C CLI 项目 A 和 B 我使用 A 进行实验 测试 并在完成测试后将测试的代码移至 B 但是 我发现在将 Windows 窗体类 标头 cpp 和 resx 添加到项目 B 时 我无法再使用 IDE 的可视
  • vs2008中的线程窗口在哪里

    我试图在 VS 2008 中找到描述的线程窗口here http www wintellect com cs blogs jrobbins archive 2007 08 01 neat new multithreaded debuggin
  • 安装 Windows 服务时的凭据

    我正在尝试使用 VisualStudio Net 部署项目安装 C Windows 服务项目 要运行部署项目 我右键单击并从上下文菜单中选择 安装 安装向导将运行并最终提示我出现 设置服务登录 对话框 要求输入用户名和密码 当我从命令行使用
  • Wix - 自定义安装目录

    我使用的是 Wix 3 x 用户应该能够选择目标目录 我的Setup wxs目前是这样的 http pastebin com uH1EjbDQ http pastebin com uH1EjbDQ 询问用户自定义目标目录的最简单方法是什么

随机推荐

  • 防止滚动 TVertScrollBox 时触发事件

    通常 当滚动 滚动框 的内容时 滚动框的子组件 例如 滚动框 不会触发任何事件函数 G 在本机应用程序中 但在 FireMonkey 中 如果 TVertScrollBox 包含像 TRectangle 这样的子元素 我想将其用作自定义菜单
  • 更改 rmarkdown 生成的 PDF 中的字体

    我正在使用 rmarkdown 生成报告 编织 PDF 时 title Untitled output pdf document I would like to specify the font to be used in creating
  • 如何在 vb.net 中使用 openfiledialog 打开文件?

    如何使用 openfiledialog 打开文件 下面是我的代码 Dim Fs As StreamReader With OpenFD FileName Title Open Text File InitialDirectory c Fil
  • 更改字符串字符时出现分段错误(核心转储)

    为什么更改字符串字符会导致分段错误 核心转储 char str string str 0 S segmentation fault core dumped 解决方案很简单 用以下方式声明你的字符串 char str string 您应该这样
  • AWS API Gateway 不存在“Access-Control-Allow-Origin”标头

    我遇到了 API 网关的问题 我已经浏览了 AWS 论坛上的所有其他答案 也浏览了他们的文档 但仍然没有任何乐趣 我正在尝试使用 AWS API 网关设置一个 API 该网关调用 Lambda 函数来读取 写入 DynamoDB 中的表 D
  • SSIS 中的别名参数

    我在 SSIS 中使用 OLE DB 命令 其 SQL 命令如下所示 UPDATE DBO CLIENT SET TimeZoneID DaylightSavingTime ModifiedBy MicrosPropertyID IsOff
  • Haskell 函子隐含定律

    类型分类百科全书 http www haskell org haskellwiki Typeclassopedia says 类似的论点还表明 任何满足第一定律 fmap id id 的 Functor 实例也将自动满足第二定律 实际上 这
  • 检测 Asp.net 上的浏览​​器关闭

    我想在注销时执行一些功能 如果用户直接关闭浏览器 则需要执行相同的功能 我们无法在页面卸载上执行此操作 因为我的网站中有 100 多个页面 因为这将在每个页面的重定向上起作用页 谢谢
  • 操作员 '??'不能应用于“System.DateTime”类型的操作数

    我收到以下错误 Operator cannot be applied to operands of type System DateTime foreach EndServReward r in reward if con State Co
  • R TwitteR 包授权错误

    我正在关注最新更新推特主页 https github com geoffjentry twitteR 我无法通过授权流程 library devtools install github twitteR username geoffjentr
  • php 中 eregi() 的替代方案 [重复]

    这个问题在这里已经有答案了 因此 我在邮件脚本中使用了 eregi 但最近 我收到该函数已弃用的错误 那么 替换以下代码的最简单方法是什么 if eregi A Z0 9 A Z0 9 A Z 2 4 trim POST email 任何帮
  • Pandas:如何创建年周变量?

    我有一个带有日期时间的数据框 dates pd date range 9 25 2010 periods 10 freq D df pd DataFrame col dates df col pd to datetime df col df
  • 连接无序线段

    我的算法生成一个 通常 数千条线段 全是二维 的列表 我需要将它们连接成大型折线 这些生成的折线可能是闭合的或开放的 但它们永远不会自相交 线段没有方向 即可能需要翻转线段才能将其连接到相邻线段 找到这些折线的极快方法是什么 我必须实时执行
  • 什么是可以轻松集成到现有应用程序的优秀 Ruby on Rails 论坛?

    什么是可以轻松集成到现有应用程序的优秀开源 RoR 3 论坛 可选功能 OpenID 支持 Haml SCSS 模板 支持表情符号 YouTube 图像等 我可能会对其进行很多更改 而且我对 Ruby 的了解仍然很弱 因此干净的 带注释的代
  • 如何反转 sed 输出?

    我正在阅读大约 500 个字符的行 我怎样才能让 sed 不用某些东西替换该字符串 而是用某些东西替换该行的其余部分 简而言之 我想删除指定字符串周围的所有文本 使用 awk 删除列不起作用 因为匹配的字符串前后有不确定数量的字符 有任何想
  • 如何将 JFreechart 添加到面板?

    我尝试寻找答案来使其正常工作 但没有成功 我快要失去理智了 所以这是我的问题 我最近下载了 JFreeChart 来创建图表并在我的 GUI 中实现它们 这是我想要插入图形的 GUI 和面板 以白色标记 报告1 http www freei
  • Fiddler 测试 API Post 传递 [Frombody] 类

    我有一个非常简单的 C APIController 名为 TestController 其 API 方法如下 HttpPost public string HelloWorld FromBody Testing t return t Nam
  • 组合框架更新 UI 无法正常工作

    我想尝试Combine框架 使用非常简单 按aUIButton 并更新UILabel 我的想法是 添加发布者 Published var cacheText String 订阅 cacheText assign to text on cac
  • 无法在类似字节的对象上使用字符串模式 - python 的重新错误[重复]

    这个问题在这里已经有答案了 我正在做 python 挑战并试图熟悉 python 所以在不看答案的情况下 我尝试使用 python 的 url 阅读器来读取 html 然后找到所需的字母 但是在下面的代码中我收到一个错误 最初是 pytho
  • 为 Windows 服务创建 MSI 安装程序

    我在 Visual Studio 2008 中有一个 Windows 服务项目 我还添加了安装和部署项目 不幸的是 当我安装它时 该服务没有显示在服务 MMC 管理单元中 我已经将 ProjectInstaller 添加到服务项目中 并且已