在尝试使用Powershell提供的简单WCF服务(Hello world)时,出现了一些小问题
这是我有史以来第一次尝试从Powershell使用一个简单的WCF服务,结果遇到了麻烦 我指的是设置环境变量的链接,如下所示在尝试使用Powershell提供的简单WCF服务(Hello world)时,出现了一些小问题,powershell,Powershell,这是我有史以来第一次尝试从Powershell使用一个简单的WCF服务,结果遇到了麻烦 我指的是设置环境变量的链接,如下所示 $env:VSINSTALLDIR="$env:Program Files\Microsoft Visual Studio 10.0" $env:VCINSTALLDIR="$env:Program Files\Microsoft Visual Studio 10.0\VC" $env:DevEnvDir="$env:VSINSTALLDIR\Common7\IDE" $
$env:VSINSTALLDIR="$env:Program Files\Microsoft Visual Studio 10.0"
$env:VCINSTALLDIR="$env:Program Files\Microsoft Visual Studio 10.0\VC"
$env:DevEnvDir="$env:VSINSTALLDIR\Common7\IDE"
$env:FrameworkSDKDir="$env:VSINSTALLDIR\SDK\v3.5"
$FrameworkPath=$([System.Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory())
$env:FrameworkDir=$(split-path $FrameworkPath -Parent)
$env:FrameworkVersion=$(split-path $FrameworkPath -Leaf)
$env:PATH="$env:VSINSTALLDIR\Common7\IDE;$env:VCINSTALLDIR\BIN;$env:VSINSTALLDIR\Common7\Tools;$env:VSINSTALLDIR\Common7\Tools\bin;$env:VCINSTALLDIR\PlatformSDK\bin;$env:FrameworkSDKDir\bin;$env:FrameworkDir\$env:FrameworkVersion;$env:VCINSTALLDIR\VCPackages;$env:PATH"
$env:INCLUDE="$env:VCINSTALLDIR\ATLMFC\INCLUDE;$env:VCINSTALLDIR\INCLUDE;$env:VCINSTALLDIR\PlatformSDK\include;$env:FrameworkSDKDir\include;$env:INCLUDE"
$env:LIB="$env:VCINSTALLDIR\ATLMFC\LIB;$env:VCINSTALLDIR\LIB;$env:VCINSTALLDIR\PlatformSDK\lib;$env:FrameworkSDKDir\lib;$env:LIB"
$env:LIBPATH="$FrameworkPath;$env:VCINSTALLDIR\ATLMFC\LIB"
上面提到的链接是针对VS2005的,但我使用的是VS2010。此后,一些参数值将根据我的设置进行更改
然后,当我试图从PowerShell命令提示符下通过发出
wsdl.exe http://localhost:55853/Service1.svc?wsdl
我遇到了一个错误
术语“wsdl.exe”不能识别为cmdlet、函数、脚本文件或可操作程序的名称。检查sp
输入名称,或者如果包含路径,请验证路径是否正确,然后重试。
第1行字符:9
+wsdl.exe您的Program Files环境变量的名称错误,此代码应该可以工作:
$env:VSINSTALLDIR="$env:ProgramFiles\Microsoft Visual Studio 10.0"
$env:VCINSTALLDIR="$env:ProgramFiles\Microsoft Visual Studio 10.0\VC"
$env:DevEnvDir="$env:VSINSTALLDIR\Common7\IDE"
$env:FrameworkSDKDir="$env:VSINSTALLDIR\SDK\v3.5"
$FrameworkPath=$([System.Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory())
$env:FrameworkDir=$(split-path $FrameworkPath -Parent)
$env:FrameworkVersion=$(split-path $FrameworkPath -Leaf)
$env:PATH="$env:VSINSTALLDIR\Common7\IDE;$env:VCINSTALLDIR\BIN;$env:VSINSTALLDIR\Common7\Tools;$env:VSINSTALLDIR\Common7\Tools\bin;$env:VCINSTALLDIR\PlatformSDK\bin;$env:FrameworkSDKDir\bin;$env:FrameworkDir\$env:FrameworkVersion;$env:VCINSTALLDIR\VCPackages;$env:PATH"
$env:INCLUDE="$env:VCINSTALLDIR\ATLMFC\INCLUDE;$env:VCINSTALLDIR\INCLUDE;$env:VCINSTALLDIR\PlatformSDK\include;$env:FrameworkSDKDir\include;$env:INCLUDE"
$env:LIB="$env:VCINSTALLDIR\ATLMFC\LIB;$env:VCINSTALLDIR\LIB;$env:VCINSTALLDIR\PlatformSDK\lib;$env:FrameworkSDKDir\lib;$env:LIB"
$env:LIBPATH="$FrameworkPath;$env:VCINSTALLDIR\ATLMFC\LIB"
为什么是powershell v1而不是v2?