2014-02-20 61 views
1

我想试验用强名称签署我的.Net程序集。所以我下载并安装了windows SDK,然后做了Dir /s sn.exe为了找到安装它的一个目录。应该使用哪个sn.exe?

我发现,(为大小和日期滚动):

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\sn.exe      03/18/2010 07:51 PM 95,552 bytes 

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\sn.exe  03/18/2010 07:51 PM 168,768 bytes 

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64\sn.exe 03/19/2010 06:16 AM 187,712 bytes 

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\sn.exe     03/19/2010 06:16 AM 102,208 bytes 

所以我现在很困惑,哪个工具我应该使用生成一个.snk文件(或者即使不同的版本,真正的问题)

FWIW我在W7 64位运行VS2010,看着签署.NET 4个的组件

+1

我想不出有什么不同。只是不要打扰,使用IDE。项目+属性,签名选项卡。 –

+0

@HansPassant OK ..我没有看到我可以在那里创建一个.snk文件。这就提出了'为什么我要下载windows sdk?'的问题。仍然我困惑的4个不同版本的sn.exe –

+0

我不知道当然,SDK已经包含在VS.否则这会迎合使用来自不同构建环境的构建工具,主要是C++构建细节。你可以修改Visual Studio命令提示符以了解更多信息。 –

回答

1

OK ..我想我明白我在这里做。根据汉斯的评论,应该已经有一个sn.exe的副本在我的电脑上。事后看来,我相信我在安装SDK之前扫描它时错过了它。

因此,我猜测SDK加载了比VS2010提供的更新的版本。因此我发现:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\ files    report version 3.5.30729.1 
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\ report version 4.0.30319.1 

看起来像.Net框架版本号。所以我相信NETFX版本是可以使用的版本。

至于x64 vs not-x64 ..仍然困惑我,因为它们都安装到(x86)目录。

同样根据汉斯,我并不真的需要使用sn.exe