Visual studio 2008 MSI在转换为VS2008后表现不同

Visual studio 2008 MSI在转换为VS2008后表现不同,visual-studio-2008,windows-installer,Visual Studio 2008,Windows Installer,从2005年将解决方案转换为vs2008后,我的msi开始表现出不同的行为 并不是所有的DLL都会被重写,如果我使用createProcess从另一个进程启动msi,它会失败地说smt,比如“一个包返回了一个意外的值”,安装将回滚 我理解这是一种常见问题,解决方案如下: 标记正在打包的DLL 在版本(即x.x)上带有*号* 增加的版本号 msi强制执行写入操作 我尝试使用解决方案2,但令我惊讶的是,当我使用devenv进行构建时,我在巡航控制上使用devenv,在VisualStudio中使用m

从2005年将解决方案转换为vs2008后,我的msi开始表现出不同的行为

并不是所有的DLL都会被重写,如果我使用createProcess从另一个进程启动msi,它会失败地说smt,比如“一个包返回了一个意外的值”,安装将回滚

我理解这是一种常见问题,解决方案如下:

标记正在打包的DLL 在版本(即x.x)上带有*号* 增加的版本号 msi强制执行写入操作 我尝试使用解决方案2,但令我惊讶的是,当我使用devenv进行构建时,我在巡航控制上使用devenv,在VisualStudio中使用msbuild时,我得到了各种各样的构建错误


现在,我将尝试解决方案1—但我非常感谢您对替代解决方案的任何建议/想法。

一个出发点是理解它为何表现不同,也许您可以尝试从以下位置获取详细日志记录:

命令行:如果从命令行安装MSI包,则可以使用/L开关启用日志记录。例如,以下命令安装Package.msi并将详细日志记录输出到c:\Package.log:

msiexec /i Package.msi /l*v c:\Package.log
Windows注册表:以下注册表值可用于启用详细日志记录:

Key: HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer
Value Name: Logging
Type: REG_SZ
Data: voicewarmupx
其他值得尝试的事情:

将转换前的安装程序项目文件副本与转换后的安装程序项目文件副本进行比较,以查看Visual Studio是否意外损坏了其中的某些内容 您是否使用异常的StartupInfo或其他参数调用CreateProcess?
我试着比较项目文件,因为它已经被完全重组了——我非常确定在这个级别上有什么变化,但很难发现噪音中有任何显著的差异