我已经安装了VS 2022,我需要使用WcfTestClient来测试我的服务。但是我找不到它。它曾经在VS 2019中位于以下位置。C:\程序文件(x86)\Microsoft Visual Studio \2019\专业版\通用7\集成开发环境
vwoqyblh1#
需要检查两件事:1.您是否安装了WCF工具?在VS安装程序中仔细检查,方法是转到“修改您的安装”并在“单个组件”选项卡中搜索它:
1.确保您正在查看64位安装路径。由于VS2022是64位的,它现在安装在c:\Program Files\下(没有(x86))。
c:\Program Files\
(x86)
flvlnr442#
仅供参考:即使安装了WCF选件,VS 2022 17.1.0及更高版本当前附带的WcfTestClient已损坏。此问题很容易重复。只需使用标准模板创建WCF服务应用程序,然后在Service1.svc.cs作为当前文档打开的情况下运行该应用程序。它将随您的服务一起启动,但只要您在左窗格中选择一个方法,然后单击右网格中的任何单元格,它就会崩溃,并出现以下异常:托管调试助手“PInvokeStackImbalance”:“对PInvoke函数”Microsoft.VisualStudio.VirtualTreeGrid!Microsoft.VisualStudio.VirtualTreeGrid.NativeMethods::NotifyWinEvent“的调用导致堆栈不平衡。这可能是因为托管PInvoke签名与非托管目标签名不匹配。请检查PInvoke签名的调用约定和参数是否与目标非托管签名匹配。”已将此问题报告给Microsoft,但目前看来,他们认为此问题的优先级较低。我们使用的解决方法是保持安装VS 2019,并创建指向VS 2019版本的WcfTestClient的快捷方式,然后手动执行VS 2019版本以测试我们的服务。
2条答案
按热度按时间vwoqyblh1#
需要检查两件事:
1.您是否安装了WCF工具?在VS安装程序中仔细检查,方法是转到“修改您的安装”并在“单个组件”选项卡中搜索它:
1.确保您正在查看64位安装路径。由于VS2022是64位的,它现在安装在
c:\Program Files\
下(没有(x86)
)。flvlnr442#
仅供参考:即使安装了WCF选件,VS 2022 17.1.0及更高版本当前附带的WcfTestClient已损坏。此问题很容易重复。只需使用标准模板创建WCF服务应用程序,然后在Service1.svc.cs作为当前文档打开的情况下运行该应用程序。它将随您的服务一起启动,但只要您在左窗格中选择一个方法,然后单击右网格中的任何单元格,它就会崩溃,并出现以下异常:
托管调试助手“PInvokeStackImbalance”:“对PInvoke函数”Microsoft.VisualStudio.VirtualTreeGrid!Microsoft.VisualStudio.VirtualTreeGrid.NativeMethods::NotifyWinEvent“的调用导致堆栈不平衡。这可能是因为托管PInvoke签名与非托管目标签名不匹配。请检查PInvoke签名的调用约定和参数是否与目标非托管签名匹配。”
已将此问题报告给Microsoft,但目前看来,他们认为此问题的优先级较低。我们使用的解决方法是保持安装VS 2019,并创建指向VS 2019版本的WcfTestClient的快捷方式,然后手动执行VS 2019版本以测试我们的服务。