当我通过生成事件在Visual Studio中运行文件时对于我尝试的每个内置powershell命令都会得到同样的错误。Powershell命令在Visual Studio中的生成事件中不起作用
在Visual Studio
错误生成事件窗口
------构建开始:项目:XAzure,配置:调试任何CPU ------ XAzure-> C:\ visual studio 2013 \ Projects \ test \ bin \ XAzure.dll
Get-Date:术语'Get-Date'不被识别为cmdlet,函数,脚本文件或可操作程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试。
在C:\视觉工作室2013 \项目\ XAzure \ WaitForFiles.ps1:3字符:15 + $日期时间= $(GET-日期) + ~~~~~~~~ + CategoryInfo:ObjectNotFound:(Get-Date:String)[],CommandNotFoundException + FullyQualifiedErrorId:CommandNotFoundException
==========构建:1成功,0失败,0最新,0跳过==========
该文件只包含这一行$ dateTime = $(Get-Date)并失败。
它不要紧我什么命令
- 启动睡眠-Seconds 2
- 写输出
- 获取最新
- 等
但如果我将Get-Date换成例如
$start =[System.DateTime]::Now.ToString("yyyy-MM-dd-HH-mm-ss.fff")
它工作得很好。但那不是解决方案。
I'm在生成事件与
Powershell -ExecutionPolicy bypass -File "$(ProjectDir)WaitForFiles.ps1" "$(ProjectDir)\"
射击这件事,但我也试图像其他变化的号码(不容remeber他们全部)
Powershell -ExecutionPolicy Unrestricted -File "$(ProjectDir)WaitForFiles.ps1" "$(ProjectDir)\"
乳宁本在PowerShell窗口中的文件工作得很好所以我必须有命令,但不是在构建事件。
I'm运行的Visual Studio 2013的更新上一个Win32的Windows 8.1 i7处理器戴尔笔记本电脑4 管理模式。
运行$ psversiontable给我
Name Value
---- -----
PSVersion 4.0
WSManStackVersion 3.0
SerializationVersion 1.1.0.1
CLRVersion 4.0.30319.34014
BuildVersion 6.3.9600.17090
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion 2.2
我曾试图给PowerShell的更多的机会和更高的权限,但没有奏效。
我不能想到任何更多的东西来添加到这个问题或尝试。这个周末我搜索了3个小时,并尝试了所有我能在这个错误中找到的成功。
奇怪的是,有很多这种“”x不被识别。“”错误在那里看似完全不同的原因。
更新1
我试图明确 “安装” Microsoft.PowerShell.Utiltiy(在管理PowerShell窗口),与此命令 导入模块Microsoft.PowerShell.Utility
,但我得到这个错误
导入模块:未加载指定的模块“Microsoft.PowerShell.Utility”,因为没有有效的模块文件在任何模块目录中找到。
如果我运行$ ENV:PSModulePath我得到
C:\ Program Files文件\的AppFabric 1.1的Windows Server \ PowershellModules;
C:\ Program Files文件(x86)的\微软的SDK \ Azure的\ PowerShell的\ ServiceManagement
但,如果我跑%WINDIR%\ SYSTEM32 \ WindowsPowerShell \ V1.0 \模块 我发现C:\ WINDOWS \ system32 \ WindowsPowerShell \ v1.0 \ Modules
这是否意味着这组模块没有以某种方式连接?我在那里看到Microsoft.PowerShell.Utiltiy文件夹。
奇怪,工作很好 – 2015-03-03 08:20:37