Windows XP x64 (および win2k3 を想定) powershell 2.0 では、pscustomobjects の arraylist を start-job に引数リスト パラメータとして渡すと、オブジェクトが渡されますが、scriptproperties はオブジェクトから消えます (get-member で確認)。pscustomobject のプロパティは問題なく返されることに注意してください
理由を知っている人はいますか?および/または回避策がありますか?
$dbs は、さまざまな note プロパティと script プロパティを持つ pscustomobjects の配列リストです。
すべてのスクリプト プロパティは、start-job に渡されると消えますが、note プロパティは正常に機能します。
以下、開始ジョブ外で実行
$dbs | get-member
戻り値
ConnectionString NoteProperty System.String ConnectionString=server=...
DbType NoteProperty System.String DbType=Staging
CreateBackup ScriptMethod System.Object CreateBackup ();
GetBackup ScriptMethod System.Object GetBackup();
...
その間
start-job -name $server -argumentlist $dbs,$server -scriptblock {
param($dbs, $server)
$dbs | get-member
}
戻り値
bool Equals(System.Object obj)
int GetHashCode()
type GetType()
string ToString()
System.String ConnectionString=server=...
System.String DbType=Staging