我无法使用Visual Studio 2010 从VMware vSphere SDK 5.0编译C#示例.错误是缺少名称空间AppUtil和VimApi.
VS2010解决方案文件中的引用指向这些文件.
..\AppUtil\bin\Debug\AppUtil.dll
..\..\Vim25Service2010.dll
..\..\Vim25Service2010.XmlSerializers.dll
..\..\VimService2010.dll
..\..\VimService2010.XmlSerializers.dll
..\VMware.Security.CredentialStore\bin\Debug\VMware.Security.CredentialStore.dll
Run Code Online (Sandbox Code Playgroud)
SDK中的这些文件在哪里,或者如果不在SDK中,我该如何获取它们?
其中两个参考文献来自解决方案中的其他项目; 包括AppUtil命名空间.我可以更新每个项目以引用项目而不是调试输出.
是否有生成其他dll的构建步骤?是VimApi不同下载的一部分?发行说明没有提到额外的下载来使项目编译.
Jas*_*son 10
我讨厌回答我自己的问题,但我想出了一个解决方案.基于自述文件中指出的知识库文章,我能够为VS2010创建说明.在Visual Studio命令提示符下的具有解决方案文件的目录中运行以下命令.
rem Script to generate required references for VMware vSphere SDK 5.0
cd ..
if not exist VimService2010.dll (
wsdl /n:VimApi /o:VimService.cs ..\..\wsdl\vim\vim.wsdl ..\..\wsdl\vim\vimService.wsdl
csc /t:library /out:VimService2010.dll VimService.cs
sgen /p VimService2010.dll
)
if not exist Vim25Service2010.dll (
wsdl /n:Vim25Api /o:Vim25Service.cs ..\..\wsdl\vim25\vim.wsdl ..\..\wsdl\vim25\vimService.wsdl
csc /t:library /out:Vim25Service2010.dll Vim25Service.cs
sgen /p Vim25Service2010.dll
)
Run Code Online (Sandbox Code Playgroud)
此脚本从SDK中的wsdl文件创建所需的dll文件.
小智 5
开发人员设置指南的第 3 章介绍了如何构建 VimService dll。杰森上面的脚本可以工作,但遗漏了一个极其重要(且令人恼火)的步骤。
生成 XMLSerializer dll 后,您需要编辑 VimService.cs 文件以强制引用 XMLSerializer 程序集并删除内联 XMLIncludeAttribute 调用。编辑后(设置指南中对此进行了说明),您需要重新编译 VimService。
它无需进行编辑即可工作,但在实例化 VimService 时可能会导致巨大的延迟。我发现要等3分钟,这是不可接受的。如果您遇到延迟,请根据说明重新编译 VimService 并更新对新程序集的引用(并确保您的构建不会保留在旧版本上)。
| 归档时间: |
|
| 查看次数: |
10455 次 |
| 最近记录: |