0

我目前正在维护一个 Windows Mobile 6 应用程序。

我正在尝试更新添加的 Web 参考,但出现以下错误:“自定义工具 MSDiscoCodeGenerator 失败。无法检索当前项目。”

我删除了 .Net Compact Framework 3.5,然后重新安装了它,还安装了适用于 .Net Compact Framework 3.5 的 Power Tools。这没有帮助。

我还尝试删除网络参考,并添加一个新的参考。添加了新的 Web 引用,但如果我尝试在代码中访问该引用,我将无法访问它。

我该如何解决这个问题?

谢谢

4

3 回答 3

1

听起来很奇怪的错误消息,但显然其他人已经收到了。

从这里的网站:Web 参考和“MSDiscoCodeGenerator”错误

有一个已知问题,如果 settings.settings 文件被删除,您可能会进入此状态。解决方法是打开 Settings.settings 文件(只需双击它)。您应该会看到类似于以下内容的动态 url 条目。

_Name____________________|_Type_____________|_Scope_|_Value____
MyApp_localhost_Service  |(Web Service URL) | User  |  http://localhost:2305/WebSite8/Service.asmx

注意类型字段 - 它需要设置为“(WebService URL)” - 类型下拉列表中的选项之一。很可能它被设置为 String 类型,这会导致错误。

你能试试这个吗?我们正在考虑为 Visual Studio 的 SP1 修复此问题(这是核心 VS 代码库中的一个问题,因此 WAP 无法直接修复它。)

于 2013-10-15T23:23:25.977 回答
0

您可以改为使用 wsdl.exe 手动生成客户端。您只需指定不生成异步代码,以便结果将在紧凑框架上编译:

wsdl.exe /protocol:SOAP /out:Reference.cs /parameters:params.xml http://url_to_service?wsdl

params.xml 的内容:

<wsdlParameters xmlns="http://microsoft.com/webReference/">
  <webReferenceOptions>
    <codeGenerationOptions>properties</codeGenerationOptions>
  </webReferenceOptions>
</wsdlParameters>
于 2016-05-19T10:38:16.470 回答
0

我在 Windows 10 x64 上全新安装 Visual Studio 2008 plus SP 1 时遇到了同样的问题

我遵循了有关如何解决此问题的多项建议,因此我无法确定最后一步是否有帮助,但我想这是最后一步。

注意:在每一步之后,我都devenv /resetskippkgs从 Visual Studio 2008 命令提示符重新启动并执行

  1. 为 .NET Compact Framework 3.5 安装的 Power Toys
  2. 重新安装 Compact Framework 3.5(卸载、重启、安装)
  3. 安装了 SQL Server Compact 3.5(最终更新网络参考再次起作用)

The custom tool MSDiscoCodeGenerator failed. Could not retrieve the current project.出现错误消息之前,我收到了抱怨缺少 sql server compact 的错误消息,所以我将此作为提示。

在控制面板中添加/删除程序 SQL Server Compact 3.5 确实丢失了。可能是因为在最初的 Visual Studio 安装过程中我排除了Microsoft SQL Server 2005 Express Edition.

从 Visual Studio 2008 dvd 手动安装所有三个 msi 文件(SSCEDeviceRuntime-deu.msi、SSCERuntime-deu.msi、SSCEVSTools-deu.msi)\German\VisualStudio2008\Professional\WCU\SSCE并最后运​​行devenv /resetskippkgs一个后,问题就消失了。

于 2016-02-16T10:31:42.173 回答