Visual Studio和.DLL版本号

时间:2012-01-18 02:07:01

标签: visual-studio dll

我想知道我在Win XP Pro笔记本电脑上安装了哪个SAPI版本。

我正在为我的项目添加sapi.dll: 项目>添加参考> COM: Microsoft Speech Object Library 5.0 C:\ Program Files \ Common Files \ Microsoft Shared \ Speech \ sapi.dll

如果我打开Windows资源管理器并导航到C:\ Program Files \ Common Files \ Microsoft Shared \ Speech \ sapi.dll,它会将版本号显示为5.1.4111.0

Visual Studio(Interop.SpeechLib.dll)创建的互操作文件显示版本号为5.0.0.0

如果我去Project>添加参考>浏览并手动浏览dll,没有区别。虽然物理dll显示版本5.1.4111.0,但Visual Studio中的所有内容都变为版本5.0.0.0

为何出现差异?

感谢。

1 个答案:

答案 0 :(得分:2)

因为类型库版本与文件版本无关。库版本描述了API的声明的接口。当进行重大更改需要重新编译程序时,库版本会递增。

文件版本是实现详细信息。 XP上可能有多次修改,比如不同的服务包或安全补丁。 “5.1”在这里表示 Windows 版本号。 4.0 = Windows NT,5.0 = Windows 2000,5.1 = XP,6.0 = Vista,6.1 = Windows 7.文件版本的更改不需要重新编译程序。您只关心库版本。