<Return[C]><Top>

CreateWindowStation

Declare Function Api_CreateWindowStation& Lib "user32" Alias "CreateWindowStationA" (ByVal lpwinsta$, ByVal dwReserved&, ByVal dwDesiredAccess&, ByRef lpsa As SECURITY_ATTRIBUTES)

Declare Function CreateWindowStation Lib "user32" Alias "CreateWindowStationA" (ByVal lpwinsta As String, ByVal dwReserved As Long, ByVal dwDesiredAccess As Long, ByRef lpsa As SECURITY_ATTRIBUTES) As Long

ウィンドウステーションオブジェクトを作成する。この関数は、ウィンドウステーションにアクセスするために使用できるハンドルを返す。

ウィンドウステーションとは安全なオブジェクトであり、一連のグローバルアトム、1 つのクリップボード、一連のデスクトップオブジェクトによって構成されている。

パラメータ
lpwinsta
    [入力]作成するウィンドウステーションの名前を表す、NULL で終わる文字列へのポインタを指定する。ウィンドウステーションの名前は

    大文字と小文字を区別しないが、円記号(\)を使うことはできない。Administrators グループのメンバだけがこの名前を指定できる。このパ

    ラメータが NULL の場合、システムは呼び出し側プロセスのログオンセッション識別子を使ってウィンドウステーション名を形成する。ウィンド

    ウステーションの名前を取得するには、GetUserObjectInformation 関数を使う。
dwReserved
    予約されている。0 でなければならない。
dwDesiredAccess
    [入力]ウィンドウステーションのアクセスタイプを指定する。次の値を1つまたは複数指定する。

    値                                                     

説明                                                                                                             

    WINSTA_ACCESSCLIPBOARD

クリップボードを使うために必要である。

    WINSTA_ACCESSGLOBALATOMS

グローバルアトムを操作するために必要である。

    WINSTA_CREATEDESKTOP

ウィンドウステーション上に新しいデスクトップオブジェクトを作成するために必要である。

    WINSTA_ENUMDESKTOPS

既存のデスクトップオブジェクトを列挙するために必要である。

    WINSTA_ENUMERATE

ウィンドウステーションを列挙するために必要である。

    WINSTA_EXITWINDOWS

ExitWindows 関数または ExitWindowsEx 関数の呼び出しを成功させるために必要である。

    WINSTA_READATTRIBUTES

ウィンドウステーションオブジェクトの属性を読み取るために必要である。

    WINSTA_READSCREEN

画面の内容にアクセスするために必要である。

    WINSTA_WRITEATTRIBUTES

ウィンドウステーションオブジェクトの属性を変更するために必要である。

lpsa
    [入力]返されたハンドルを子プロセスが継承できるかどうかを決定する SECURITY_ATTRIBUTES 構造体へのポインタを指定する。こ

    のパラメータが NULL の場合、このハンドルは継承できない。
    この構造体の lpSecurityDescriptor メンバは、新しいウィンドウステーションのセキュリティ記述子を指定する。このパラメータが NULL の

    場合、このウィンドウステーション(およびこのウィンドウ内に作成される任意のデスクトップ)は、すべてのユーザーに GENERIC_ALL アクセス

    権を許可するセキュリティ記述子を取得する。


戻り値
    関数が成功すると、新しく作成されたウィンドウステーションのハンドルが返る。指定されたウィンドウステーションがすでに存在する場合も関

    数は成功し、既存のウィンドウステーションのハンドルが返る。
    関数が失敗すると、NULL が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。