Windowsでコマンドラインからウィンドウ部分だけを画面キャプチャーする(ASCII.jp)
面白そうだったので、ソースをコピーして実験してみたのですが、キャプチャーしようとすると23行目でエラーが…どうやら渡された引数が有効な値でないようです。
よくよく調べてみると、エラーになっている関数(Get-CaptureRect())の呼び出し元で、引数が1つ足りないんですね(35行目:return のカッコ内)。そこに足りない $Rect.Left を追加する事で、正常動作が確認できました。
こう書くとすごく簡単な内容なのですが、ここに至るまでに色々と紆余曲折がありまして…
最初に修正した時、PowerShellのお作法を知らなかった私は、関数呼び出しの部分を
Get-CaptureRect($Rect.Left, $Rect.Top, $Rect.Right, $Rect.Bottom)
のように記述しました。実はこれだと値が配列として渡ってしまうので、さらに変なエラーが出て訳分らん状態に…結局、引数として渡すのはオブジェクト変数1つだけにする事で、正常に動作するようになったという…
やっぱり、ちゃんと調べないとダメですねw
※コメント投稿者のブログIDはブログ作成者のみに通知されます