我应该在开发工具中附带哪些类型和版本的.NET库?

时间:2012-01-06 17:11:34

标签: .net setup-deployment .net-assembly anycpu

我正在开发一个商业.NET开发人员库,我希望将其公之于众,我想知道我应该为最终用户(开发人员)提供哪些版本的.DLL。

.DLL可能会在我无法预测的各种环境中执行。

我目前的计划是提供:

  • .NET3.5和.NET4编译版本
  • 每个版本都签署了任何未签名的
  • 一个编译的32位和一个编译的64位

共有8种不同的版本。

问题是这是一个好策略吗?

我是否应该为那些喜欢在32位和64位环境中运行DLL的人制作一个“AnyCPU”编译版本?

我不关心所有这些版本的额外工作,因为我可以在自动构建/打包中做到这一点。

1 个答案:

答案 0 :(得分:1)

没有理由将库构建为32位或64位,因为根据.exe文件和操作系统,应用程序启动决定了进程的“位数”。你选择哪个并不重要。但是,如果您的库有一些可执行文件,则可能有理由进行32位构建。仅当您的应用程序依赖于第三方32位库(使用COM互操作)时才会出现这种情况。

至于签名/无签名困境,我不明白你为什么要两者兼顾。如果您想对开发人员施加约束,请使用signed,否则请保持未签名。