2021/06/08

Windows Admin Center の残念な 2つのバグ

 ・「概要(Overview)」ページの「ログインしているユーザー(Logged in users)」が「-1」の件

・管理対象のシステムロケールが「日本語(日本)」だと、1人以上のユーザー、何人ログオン中でも「ログインしているユーザー」が「0」の件

「概要」ページの「ログインしているユーザー」が「-1」の件

quser.exe の標準エラー出力(* に対するユーザーは存在しません。)を参照する前にプロセスを終了しちゃってるから?

function Get-NumberOfLoggedOnUsers {

$process.WaitForExit()
$process.Dispose()


if (!$process.StandardError)
{
    # quser does not return a valid ps object and includes the header.
    # subtract 1 to get actual count.
    $count = $result.count - 1
}
$process.WaitForExit()
$process.Dispose()

@{Count = $count}

Hyper-V の PowerShell Direct でやってみた。


 管理対象のシステムロケールが「日本語(日本)」だと、1人以上のユーザー、何人ログオン中でも「ログインしているユーザー」が「0」の件

システムロケールを「英語(米国)」にすると正しいユーザー数に。日本語環境で1人以上が常に「0」なのは、quser.exe の標準出力の 1 行目「                                  アイドル」しか読み取ってないから、1-1=0 ?

日本語の標準出力(1ログオンユーザーの場合5行)

                                                      アイドル
(Nullまたは空の行)
 ユーザー名            セッション名       ID  状態    時間       ログオン時刻
(Nullまたは空の行)
>user01              console             1  Active   14+04:38  2021/05/19 7:53

英語環境の標準出力(1ログオンユーザーの場合2行)

 USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME
>user01             console             1  Active   14+08:32  2021/05/19 7:53

こちらの問題は管理対象のシステムロケールを 「英語(米国)」にするか、「ベータ:ワールドワイド言語サポートでUnicode UTF-8を使用」は正しいユーザー数になるけど、「-1」問題もあるし、ロケール変更が他のところに影響するかもしれないのでお勧めしない。

この件で一日を無駄にした感じ。

関連:
Windows Admin Center 2103.2 へのアップデートで RDP 接続がぁぁぁ(真犯人は今朝の Edge の更新か?)


0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。