这就是我的 .csproj AfterBuild 的样子:
<Target Name="AfterBuild" Condition=" '$(Configuration)' == 'Release'">
<Exec Command=""..\Tools\ILMerge\ILMerge.exe" /internalize /ndebug /out:@(MainAssembly) /targetplatform:v4,C:\Windows\Microsoft.NET\Framework\v4.0.30319 "@(IntermediateAssembly)" @(ReferenceCopyLocalPaths->'"%(FullPath)"', ' ')" Condition=" '$(TargetFrameworkVersion)' == 'v4.0'" />
</Target>
我正在运行 64 位 Windows。我尝试将 .NET Framework 从更改为...\Microsoft.NET\Framework\...
,...\Microsoft.NET\Framework64\...
但没有帮助。
我还在 ILMerge 目录中创建了 ILMerge.exe.config:
<?xml version ="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<requiredRuntime safemode="true" imageVersion="v4.0.30319" version="v4.0.30319"/>
</startup>
</configuration>
为什么 ILMerge 不生成 4.0.30319 程序集?