相关疑难解决方法(0)

为免注册COM生成清单文件

我有一些应用程序(一些本机,一些.NET)使用清单文件,以便它们可以完全隔离部署,而无需任何全局COM注册.例如,在myapp.exe.manifest文件中声明对dbgrid32.ocx com服务器的依赖关系如下,该文件与myapp.exe位于同一文件夹中:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
  <assemblyIdentity type="win32" name="myapp.exe" version="1.2.3.4" />
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="dbgrid32.ocx" version="5.1.81.4" />
    </dependentAssembly>
  </dependency>
</assembly>
Run Code Online (Sandbox Code Playgroud)

dbgrid32.ocx与它自己的dbgrid32.ocx.manifest文件一起部署到同一文件夹:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
  <assemblyIdentity type="win32" name="dbgrid32.ocx" version="5.1.81.4" />
  <file name="dbgrid32.ocx">
     <typelib
        tlbid="{00028C01-0000-0000-0000-000000000046}"
        version="1.0"
        helpdir=""/>
    <comClass progid="MSDBGrid.DBGrid"
       clsid="{00028C00-0000-0000-0000-000000000046}"
       description="DBGrid  Control" />
  </file>
</assembly>
Run Code Online (Sandbox Code Playgroud)

这一切都很好,但手动维护这些清单文件有点痛苦.有没有办法自动生成这些文件?理想情况下,我只想声明应用程序对COM服务器列表(本机和.NET)的依赖性,然后自动生成其余部分.可能吗?

com dll manifest typelib regfreecom

84
推荐指数
4
解决办法
5万
查看次数

如何找到已安装的MSI设置的产品GUID?

我需要找到产品GUID对于安装MSI文件,以进行维护,如补丁,卸载,也为审计目的.

powershell install windows-installer wix uninstall

58
推荐指数
1
解决办法
18万
查看次数

使用什么安装产品?InstallShield,WiX,Wise,Advanced Installer等

我目前正在调查我们目前正在使用的安装包(Wise Installer 9),并转向处理Windows Vista,Windows 7和64位系统之类的东西.安装人员的本地化将是有益的,因为我们也有许多加拿大法国客户.

我们目前使用以下技术安装软件包和实用程序:

  • 进步4GL
  • Visual Studio 2005
  • Visual Studio 2008
  • .NET Compact Framework 3.5

我已经看过WiXInstallShield,Altiris还替换了旧的Wise系统.

我还没有玩过很多关于InstallShield的东西,但是从我见过/安装过的所有东西来看,它似乎都是业界的最爱之一.我浏览了一些与InstallShield相关的Stack Overflow标签,我很想知道该组织对此有何看法.

我是否只是默认情况下去找他们?WiX在非.NET的东西有多好?

installer windows-installer installshield wix advanced-installer

56
推荐指数
4
解决办法
4万
查看次数

如何更好地利用MSI文件

您可能知道,msiexec是一个命令行应用程序,可用于安装MSI文件.您可能知道,您可以在静默或不可见模式下运行它.

如果安装程序要求用户回答有关要安装的部件的具体问题,是否有一些方法可以在msiexec命令行中添加一系列选项来执行此操作?

我认为必须有某种方法来设置MSI文件的默认设置才能实现这一点.MSI文件是如何制作的?它们是通过微软的工具开发的吗?他们可以打开和编辑吗?

installation installer windows-installer wix msitransform

11
推荐指数
2
解决办法
2万
查看次数

如何确定导致重复Windows Installer自修复的原因?

  • 如何仅记录由Installshield 2008生成的MSI文件的更改,以通过" 自我修复 " 重新安装?
  • 自修的原因是什么?
  • 如何使用Installshield 2008禁用MSI的自我修复?

installer windows-installer installshield wix resiliency

11
推荐指数
1
解决办法
9844
查看次数

如果删除文件,为什么MSI安装程序会重新配置?

我在Visual Studio 2008中创建了一个MSI安装程序包.问题是安装后,如果删除任何已安装的文件.这不是我的安装程序包的预期行为.我的文件安装属性是:

PackageAs vsdpaDefault Permanent False ReadOnly False Register vsdrfDoNotRegister System False Transitive False Vital False

如果这是微不足道的,请原谅我.我无法相信我无法让谷歌放弃答案.:)

windows-installer

7
推荐指数
1
解决办法
2647
查看次数

如何避免使用我的 WiX / MSI 包触发 MSI 自我修复?

如何避免从我的 WiX 生成的 MSI 包触发自我修复?


这是一个Q/A 风格的问题,其答案只是列出了一些不要在您的 MSI 文件中做的事情,以避免重复自我修复的最常见原因。

windows-installer installshield wix advanced-installer

4
推荐指数
1
解决办法
2263
查看次数

msi 安装程序中的“修复”选项有何用途?它的真正作用(内部)是什么?

我有一个使用 WIX 部署的软件包。当我安装后再次运行安装程序时,它提供了修复选项,它到底有什么作用?

windows-installer wix

1
推荐指数
1
解决办法
3402
查看次数