开发者

Renaming assemblies inside an MSI using Installer Software Development Kit

开发者 https://www.devze.com 2023-03-07 14:38 出处:网络
I\'ve got a legacy project where they had a bunch of visual studio setup projects to create installation packages of the same plugin for different versions of a 3rd party application.

I've got a legacy project where they had a bunch of visual studio setup projects to create installation packages of the same plugin for different versions of a 3rd party application.

I'm trying to figure out how to build the setup projects so that they work.

Extracting the contents of a previously compiled MSI and the one I get when building the project the assemblies in the Global Assembly Cache folder inside my MSI and the other one are different. The other MSI has a suffix appended to the names of the assemblies.

As a part of the compilation process of the MSIs they apparently had a script renaming assemblies in the compiled MSI packages using the The SQL query strings for Windows Installer.

I have the script and running it against m开发者_Python百科y MSI does not rename the assembly files as looked at when I extract the contents of the MSI.

The SQL statements which I suppose should rename the assemblies are of the following form:

update MsiAssemblyName set Value = 'AssemblyNameSuffix' where Value = 'AssemblyName'

Running the script does change the MSI in some way but I don't see the assembly files renamed.

The question is if it is possible to rename the assembly files in an MSI with SQL this way and if so how can this be achieved?

Thanks!


No, it's not possible. Even if you updated the File table to have the new file name, the assembly would be broken because .NET Assemblies have metadata in them that describe their assembly name, namespace and classes. Renaming a file will break it.

0

精彩评论

暂无评论...
验证码 换一张
取 消