的 调试结果 强> :经过大量的调试(通过原始海报 - OP),结果证明这是一个已知的MSI问题: https://wix-users.narkive.com/EMfQPDrM/a-bug-get-reg-sz-when-using-type-integer 。不错的搜索工作。 的 DWORD中有什么? 强> (一个 的 REG_SZ 强> 显然):基本上MSI“转换”a 的 DWORD 强> 通过a找到的价值 的 RegistrySearch 强> 对格式化字符串的操作 - 的 REG_SZ 强> - 升级期间 装置(也可能更多涉及)。这会导致服务 期待一个 的 DWORD 强> 在重大期间启动时价值下跌 升级。 的 一个非常奇特的错误 强> 。 的 解决方法 强> :人们可以尝试通过使服务代码能够读取这两个问题来“解决”这个问题 的 DWORD 强> 和 的 REG_SZ 强> 。 这比解决a中的问题产生了更强大的解决方案 自定义操作,因为只要代码在,它就是“永久”修复 那里(代码的存在提醒其他开发者关于 问题)。或者也许只使用 的 REG_SZ 强> ?
的 调试结果 强> :经过大量的调试(通过原始海报 - OP),结果证明这是一个已知的MSI问题: https://wix-users.narkive.com/EMfQPDrM/a-bug-get-reg-sz-when-using-type-integer 。不错的搜索工作。
的 DWORD中有什么? 强> (一个 的 REG_SZ 强> 显然):基本上MSI“转换”a 的 DWORD 强> 通过a找到的价值 的 RegistrySearch 强> 对格式化字符串的操作 - 的 REG_SZ 强> - 升级期间 装置(也可能更多涉及)。这会导致服务 期待一个 的 DWORD 强> 在重大期间启动时价值下跌 升级。 的 一个非常奇特的错误 强> 。
REG_SZ
DWORD
RegistrySearch
的 解决方法 强> :人们可以尝试通过使服务代码能够读取这两个问题来“解决”这个问题 的 DWORD 强> 和 的 REG_SZ 强> 。 这比解决a中的问题产生了更强大的解决方案 自定义操作,因为只要代码在,它就是“永久”修复 那里(代码的存在提醒其他开发者关于 问题)。或者也许只使用 的 REG_SZ 强> ?
的 快速检查 强> : 检查 的 服务密码和登录 强> - 显然。任何东西 的 事件查看器 强> ? Windows键 +点按 [R + eventvwr.msc + 输入 。 如何使用事件查看器来解决Windows服务的问题 。也许你可以尝试做一个 的 文件夹差异 强> 在文件夹之前和之后,看看你是否看到了意想不到的东西 该 的 配置文件 强> ?当然会有很多二进制文件 差异,但检查文本文件(也编码)。检查 的 MSI日志文件 强> 再次搜索 的 "value 3" 强> 如下所述: 的 检查MSI日志的提示 档 强> 。 的 Manually copy the new files in place and attempt to start the service via the services.msc applet 强> 。
eventvwr.msc
"value 3"
Manually copy the new files in place and attempt to start the service via the services.msc applet
的 服务专家 强> : 的 Windows服务常见问题(FAQ) 强> 。内容似乎是最新的 - 至少是面值。 这些人声称自己是服务专家。我不知道他们是谁 是。 看看吧 的 “错误”部分 强> 在上面的链接。这里有一些 提取物: 1053:服务未及时响应启动或控制请求 为什么我的Windows服务在重启后没有自动启动? 1069:服务确实如此由于登录失败而无法启动
的 服务专家 强> : 的 Windows服务常见问题(FAQ) 强> 。内容似乎是最新的 - 至少是面值。 这些人声称自己是服务专家。我不知道他们是谁 是。
看看吧 的 “错误”部分 强> 在上面的链接。这里有一些 提取物:
的 通用检查列表 强> :如果以上都没有做任何事情,也许试试这些 的 "torpedoes full spread" check-lists 强> (只是开始调试的想法):
"torpedoes full spread" check-lists
的 通用调试 强> :投入一些通用的调试方法。
的 一些进一步的链接 强> :
它当然可能是一个依赖问题。例如,在StartServices之后的提交阶段之前,GAC / WinSXS文件不会安装到GAC中。
我将保留Start =“Install”,当它处于启动失败状态时,检查机器的状态并手动调试服务启动。我敢打赌你会找不到什么东西。