C# 如何部署iWShurantimeLibrary?

C# 如何部署iWShurantimeLibrary?,c#,windows,c#-3.0,C#,Windows,C# 3.0,我正在使用.NET3.5和C#3.0,应用程序正在使用IWshRuntimeLibrary创建快捷方式 据我所知,IWshRuntimeLibrary.dll是为wshom.ocx自动生成的包装器 我需要支持以下Windows脚本主机版本: Windows Vista、Windows Server 2008、Windows XP SP3-v5.7 Windows 7、Windows Server 2008 R2-v5.8 Windows 8、Windows Server 2012-v5.8

我正在使用.NET3.5和C#3.0,应用程序正在使用IWshRuntimeLibrary创建快捷方式

据我所知,IWshRuntimeLibrary.dll是为wshom.ocx自动生成的包装器

我需要支持以下Windows脚本主机版本:

  • Windows Vista、Windows Server 2008、Windows XP SP3-v5.7
  • Windows 7、Windows Server 2008 R2-v5.8
  • Windows 8、Windows Server 2012-v5.8
默认情况下,Windows脚本主机随Windows一起提供

这意味着我必须在我的项目中部署IWShurantimeLibrary dll


如何正确地部署iwshurantimelibrary,使其能够在所有必需的环境中使用两个版本的Windows脚本主机

为wshom.ocx文件向项目添加.NET引用时,Visual Studio应生成一个可包含在安装程序中的互操作DLL。构建项目时,此DLL应位于bin文件夹中

如果有一个主互操作程序集可用,那么VisualStudio应该检测到它


这是一篇较旧的文章,但仍然与主题相关:

如果我正在编写,请纠正我的错误,但这只适用于安装在我的开发PC上的WSH版本。COM接口永远不会更改,只要您坚持使用最旧版本(5.7)中的功能你应该很好。那么我在v5.7中使用的快捷方式功能应该和在v5.8中完全一样吗?我想知道它是否会抱怨iWShurantimeLibrary是为另一个版本生成的。这篇文章建议你应该检查版本:如果你是为5.8生成的,那么你必须确保你不是在只安装了5.7的系统上运行,但是如果你是为最低版本生成的,你应该不会有问题