<Return[MN]><Top>

NetWkstaGetInfo

Declare Function Api_NetWkstaGetInfo& Lib "netapi32" Alias "NetWkstaGetInfo" (ByVal servername$, ByVal Level&, bufptr As Any)

Declare Function NetWkstaGetInfo Lib "netapi32" (ByVal servername As String, ByVal level As Long, bufptr As Any) As Long

ワークステーションの構成要素に関する情報を取得する。

    セキュリティの要件
        Windows NT:Administrators または Account Operators ローカルグループのメンバ、あるいは Print Operators、Server Operators

            いずれかの特権を備えたメンバだけがこの関数を実行できる。
        Windows 2000:Active Directory が動作している Windows 2000 ドメインコントローラでこの関数を実行すると、セキュリティで保護する

            ことが可能なオブジェクトの ACL(アクセス制御リスト)に基づいて、アクセスが許可または拒否される。既定の ACL は、

            Authenticated Users または Pre-Windows 2000 Compatible Access グループのメンバだけが情報を表示することを許可する。

            既定では、Everyone グループが、Pre-Windows 2000 Compatible Access グループのメンバになっている。この結果、システムが匿

            名(アノニマス)アクセスを許可している場合、情報への匿名アクセスができる。


        Windows 2000 のメンバサーバーまたはワークステーションで開発者がこの関数を実行すると、Authenticated Users グループのすべての

        メンバが情報を表示できるようになる。レジストリの HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa ハイブ

        で restrictanonymous エントリに 1 を割り当てると、匿名アクセスを許可するポリシーが設定される。

パラメータ
servername
    この関数を実行するリモートサーバーの名前を表す、Unicode 文字列へのポインタを指定する。

    この文字列の先頭は "\\" でなければならない。このパラメータが NULL の場合、ローカルコンピュータを使う。
level
    データの情報レベルを指定します。このパラメータは、次の値のいずれかである。

    値           

意味                                                                                                                                                               

    100

 

 

プラットフォーム特有の情報、ドメイン名とローカルコンピュータ名、オペレーティングシステムに関する情報など、ワークステーション環境に関する情報を取得する。関数から制御が返ると、bufptr パラメータが指すバッファに、1 個の WKSTA_INFO_100 構造体が格納される。

    101

 

レベル 100 の情報に加えて、LANMAN ディレクトリのパスを取得する。関数から制御が返ると、bufptr パラメータが指すバッファに、1 個の WKSTA_INFO_101 構造体が格納される。

    102

 

レベル 101 の情報に加えて、ローカルコンピュータにログオンしているユーザーの数を取得する。関数から制御が返ると、bufptr パラメータが指すバッファに、1 個の WKSTA_INFO_102 構造体が格納される。

bufptr
    1 個のバッファへのポインタを指定します。関数から制御が返ると、このバッファに、指定した情報が格納される。

    このデータの形式は、level パラメータの値によって異なる。このバッファはシステムによって割り当てられたものであり、NetApiBufferFree

    関数を使って解放しなければならない。
 

戻り値
    関数が成功すると、NERR_Success が返る。
    関数が失敗すると、次のエラーコードのいずれかが返る。

    値                                      

意味                                                                    

    ERROR_ACCESS_DENIED

ユーザーには、要求した情報へのアクセス権がない。

    ERROR_INVALID_LEVEL

level パラメータが無効である。


解説
    次のサンプルコードは、NetWkstaGetInfo 関数を呼び出して、1 台のワークステーションの構成要素に関する情報を取得する方法を示す。

    このサンプルは、情報レベル 102(WKSTA_INFO_102)を指定して NetWkstaGetInfo 関数を呼び出す。

    呼び出しが成功すると、そのワークステーションに関する情報を出力する。

    最後に、このサンプルは、情報バッファへ割り当てたメモリを解放する。