當我通過生成事件在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