簡體   English   中英

更改InstallShield中使用的Installer類的.NET Framework版本

[英]Changing .NET Framework version of Installer class used in InstallShield

我有一個C#.NET安裝程序類DLL,InstallShield 2011使用該DLL在安裝過程結束時執行一些自定義代碼。 .NET安裝程序類當前針對.NET Framework 3.5。

將.NET Installer類更改為目標.NET Framework 4.0並將新的DLL復制到InstallShield項目時,自定義安裝程序代碼啟動時出現錯誤1001消息。

測試計算機安裝了最新的.NET Framework版本。

在InstallShield中是否需要更改某些內容以指定.NET Installer類的目標版本?

Windows安裝程序會在各個自定義操作之間重用自定義操作沙箱。 如果一個自定義操作啟動了CLR 2.0,而另一個自定義操作嘗試與CLR 4.0一起運行,則會收到BadImageFormatException。 這是InstallUtil(安裝程序類)自定義操作的眾多缺陷之一。

而是研究Windows Installer XML(WiX)部署工具基礎(DTF)的自定義操作。 它們被封裝為本地Win32 DLL自定義操作,並且與InstallShield兼容。 只有本機代碼在沙箱中運行,並且所有托管自定義操作都將用完進程,而本機代碼充當MSI API的代理。 (某些情況使InstallUtil自定義操作無法相信或不相信。)

部署工具基礎(DTF)托管的自定義操作

在InstallShield中,.NET Framework文件位置未指向.NET 4。

在InstallShield-工具-選項-.NET-.NET Framework文件位置中指定了此文件位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM