Excel 2016中的Web服务名称

时间:2017-08-24 07:16:45

标签: excel vba excel-vba web-services wcf

我有 VBA宏,它使用@EnableAsync @Configuration public class AsyncConfig { @Bean public AsyncTaskExecutor asyncTaskExecutor() { return new SimpleAsyncTaskExecutor("async"); } } 生成的名字对象 WCF网络服务进行互动。< / p>

描述传递给GetObject的Web服务的字符串如下所示:

GetObject

使用 Excel 2010 Windows 7 上一切正常。

但在 Windows 10 Excel 2016 上, service:mexaddress=http://my.net/ws/MyService.svc/mex, address=http://my.net/ws/MyService.svc, contract=IMyService, contractNamespace=http://tempuri.org/, binding=BasicHttpBinding_IMyService, bindingNamespace=http://tempuri.org/ 失败

我尝试过在文档和教程上看到的不同语法,例如Automation Error Invalid Syntax 800401e4,有和没有引号service4:mexAddress和双引号' ......但到目前为止没有运气

我甚至尝试使用Visual Studio调试它,因为我已经读过网络服务名字对象在.Net中实现并且我可以捕获一些更明确的异常,但是没有一个被抓住我已经要求Visual尽其所能了。

编辑1

  • 我从头开始构建了一个新的基本WCF服务,结果是一样的,
  • 我用ProcMon跟踪了Excel.exe;不确定它是否相关但在Windows 10 / Excel 2016上我看到它试图访问像"这样的广告,而在Windows 7 / Excel 2010上并非如此。
    也许它缺少处理C:\Users\my-user\Documents\service:mexaddress=http://my.net/ws/MyService.svc/mex, address=http:&#34;协议的组件&#34;。

编辑2

  • 我尝试将 WSDL元数据直接嵌入到连接字符串中(如Using the WCF Moniker with COM Clients中所述),但仍然是同样的错误,

  • 我尝试使用 Fiddler代理监视HTTP交换,但没有请求可见。

0 个答案:

没有答案