-1

Powershell 2.0 の Win XP および Windows Server 2008 R2 でこれをテストしました。

$a = 1,2,3,4 # a simple [object[]] but any other Type is good

私が行った場合:

$a.addres()

リターンエラーは(正しく):

Method invocation failed because [System.Object[]] doesn't contain a method named 'addres'.

しかし、もしそうなら:

$a.address()

エラーは次のとおりです。

Cannot find an overload for "Address" and the argument count: "0".

しかし、やっている:

$a.address(2)

でPowerShellコンソールを閉じます'Problem Event Name: APPCRASH'

それから始めて、powershellが既存のメソッドを呼び出そうとする[system.array]方法と呼ばれるメソッドがありませんか?address

4

2 に答える 2

3

[System.Array] には、.Net ランタイム経由で使用できる .Get、.Set、および .Address メソッドがありますが、Powershell コードでは通常は使用されません。この StackOverflow の記事をご覧ください。

于 2012-04-06T15:20:01.777 に答える
1

しばらく前にこれをバグとして提出しました。キースが投稿した例外メッセージ (ランタイムが不安定になる可能性があります) で V3 で修正されました。

https://connect.microsoft.com/PowerShell/feedback/details/561865/powershell-crashes-when-calling-address-method-on-object-array

于 2012-04-06T17:11:29.167 に答える