An assembly can be associated with only one unmanaged resource. This means that calling AssemblyBuilder.DefineVersionInfoResource(string, string, string, string, string) or AssemblyBuilder.DefineUnmanagedResource(Byte[]) after either one of the methods was called previously will throw the System.ArgumentException being throw. Multiple unmanaged resources need to be merged with a tool such as the Microsoft ResMerge utility (not supplied with the common language runtime).