1

次を呼び出して、WindowsIdentity オブジェクトを取得しています。

win_id = System.Security.Principal.WindowsIdentity.GetCurrent();

現在ログオンしているユーザー名を取得することを目的としており、これは正常に機能します。

WindowsIdentity は IDisposable を実装していますが、私は自分でオブジェクトを作成していないので、終了したときに .Dispose() を呼び出す必要がありますか?

ありがとう。

4

1 に答える 1

3

WindowsIdentity.GetCurrent()インスタンスを返すため、適切に破棄する必要があります。

MSDNからの引用:

現在の Windows ユーザーを表す WindowsIdentity オブジェクトを返します。

そして、このトピックに関する別の素晴らしい記事を次に示します

WindowsIdentity.GetCurrent() は、破棄する必要があるインスタンスを返します。そうしないと、ユーザー ハンドルが一時的にリークします。

于 2010-05-31T18:34:24.177 に答える