[FAQ CENTER トップ]
[Powershell FAQ トップへ]



【Powershell】"Using 変数を取得できません" の原因と対処



更新日:2019/06/11


現象


Powershell のworkflowで InlineScriptで#Using 変数を使用すると以下のエラー

エラー:

Using 変数を取得できません。Using変数はInvoke-Command,Start-Job,またはスクリプトワークフローのInlineScriptでのみ使用できます。
Invoke-Commandで使用する場合、Using 変数はリモートコンピュータでスクリプトブロックが呼び出された場合のみ有効になります。

+ if ($Using:variavle -is [System.Collections.IEnumerator])
+
+CategoryInfo :InvaliedOperation: (:) [],RuntimeException
+FullyQalifiedErrorID :UsingWithoutInvokeCommand



原因


デバッガでこのエラーが表示される場合は問題ない。デバッガでは表示できないという意味に近い。

$workflow と $Using の使用例を示す。この場合でも Powershellのデバッガから $Using:o 変数を参照すると上記のエラーが発生する。


Workflow myloops
{

$x=0
Foreach -parallel -throttlelimit 3 ($i in 1..500)
{
$o=1
$Iret = InlineScript
{
write-output ("O=:" , $Using:o)
}

if($Iret)
{
$workflow:x+=1
}
else
{

}
write-output ("x:" +$x)

}

}

myloops








[Powershell FAQ トップへ]
[FAQ CENTER トップ]


本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。) Copyright(c) tooljp.com 2007-2018