2010-12-06 8 views
3

私は少し厚めのものだかどうかわからないんだけど、私は三行で簡単なスクリプトを持っている:私はこれらの行のいずれかにブレークポイントを設定し、再生ボタン(F5をヒットした場合「F5 - デバッグを開始する」がPowerGUIのブレークポイントを無視するのはなぜですか?

$iis = 90000 
$name = "somesite" 
Write-Host("Values are: $iis and $name") 

- デバッグを開始する)、スクリプトは実行されますが、ブレークポイントは無視されます。

私はちょうど罰金をステップ実行することができます(にステップ)F11でスクリプトを起動する場合は、しかし、次のブレークポイントまで実行するF5キーを押すことは再び私が働いているスクリプトがある

ブレークポイントを無視するようにPowerguiブロックを引き起こし実質的なものであり、私は実際にコードのすべての行でF11する必要はありません。

これはなぜでしょうか?

  • Windows 7 64-bit Ultimate EditionでPowerGUI 2.2.0.1358を実行しています。
  • 私はPowerGUIスクリプトエディタのx64とx32の両方のバージョンをうまく試してみました。
  • PowerGUI Script Editorを管理者として実行しています(PowerGUI Script EditorショートカットとRun As Administratorを右クリックして起動します)
  • My PowerShell実行ポリシーが[制限なし]に設定されています。
+1

PowerGUIについてはわかりませんが、ISEではブレークポイントでデバッグする前にファイルを保存する必要があります。つまり、ブレークポイントはスクリプトパスに設定され、エディタバッファにある名前のない/保存されていないコードには設定されません。 –

+0

@Keith - 私はPowerShell ISEに落ちましたが、管理者として実行するとブレークポイントを設定できません:http://stackoverflow.com/questions/4368612。 – Kev

答えて

2

フォルダやファイル名にPowerShellと角かっこの問題があるようです。

デバッグ対象のスクリプトが[または]の名前のフォルダにある場合、PowerGUIとPowerShell ISEの両方でブレークポイントがヒットしません。

+0

Mineもフォルダ名に問題はありましたが、かっこは含まれていませんでした。もし私がフォルダ名( "T")から最初の文字を削除したら、それは魔法のように働いた。私は試してみるが、正確に何がそれを設定するのか分からない。まあ。編集:再起動は助けにはならなかったが、2回目の再起動はオリジナルのフォルダ名で行った。 – Vimes

2

私が実行していたスクリプトがリモートファイル共有にあったときに、この問題が発生しました。 など。 \\serverA\FileShare\script.ps1.

私はスクリプトをc:\ script \ script.ps1として保存しましたが、それは問題ありませんでした。

+0

そのため、 'untitled.ps1'のような保存されていないファイルは、あなたがどこかに最小限に保存するまで、ブレークポイントを打つのが好きではないようです。 – KyleMit

1

Powershellにも明らかにフォルダ名のスペースに問題があります。 「マイドキュメント」は好きではなかったが、「ドキュメント」はそれだった。 ISE内のPowerShellでパスを切り替えた後、デバッガは再び動作しました。