IWTSProtocolLogonErrorRedirector
COM公式ドキュメント
IWTSProtocolLogonErrorRedirector は現在は使用できません。代わりに IWRdsProtocolLogonErrorRedirector を使用してください。
メソッド 4
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
IWTSProtocolLogonErrorRedirector::OnBeginPainting は現在は使用できません。代わりに IWRdsProtocolLogonErrorRedirector::OnBeginPainting を使用してください。
戻り値
このメソッドを実装する際は、関数が成功した場合は S_OK を返します。失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
IWTSProtocolLogonErrorRedirector::RedirectStatus は現在は使用できません。代わりに IWRdsProtocolLogonErrorRedirector::RedirectStatus を使用してください。
| pszMessage | LPWSTR | in | ログオンの状態メッセージを含む文字列へのポインター。 |
| pResponse | WTS_LOGON_ERROR_REDIRECTOR_RESPONSE* | out | 応答を含む WTS_LOGON_ERROR_REDIRECTOR_RESPONSE 列挙体へのポインター。次のいずれかの値を指定できます。 |
戻り値
このメソッドを実装する際は、関数が成功した場合は S_OK を返します。失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
IWTSProtocolLogonErrorRedirector::RedirectMessage は現在は使用できません。代わりに IWRdsProtocolLogonErrorRedirector::RedirectMessage を使用してください。
| pszCaption | LPWSTR | in | メッセージボックスのキャプションを含む文字列へのポインター。 |
| pszMessage | LPWSTR | in | ログオンメッセージを含む文字列へのポインター。 |
| uType | DWORD | in | メッセージボックスの種類を表す整数値。詳細については、MessageBox 関数を参照してください。 |
| pResponse | WTS_LOGON_ERROR_REDIRECTOR_RESPONSE* | out | ログオンメッセージのリダイレクトに対する優先応答をリモートデスクトップサービスのサービスに指定する WTS_LOGON_ERROR_REDIRECTOR_RESPONSE 列挙体へのポインター。 |
戻り値
このメソッドを実装する際は、関数が成功した場合は S_OK を返します。失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
IWTSProtocolLogonErrorRedirector::RedirectLogonError は現在は使用できません。代わりに IWRdsProtocolLogonErrorRedirector::RedirectLogonError を使用してください。
| ntsStatus | INT | in | ログオンの失敗に関する情報を含む整数値。次のいずれかの値になります。 STATUS_QUOTA_EXCEEDEDメモリのクォータが不足しているため、認証パッケージが返す出力バッファーを割り当てることができません。 STATUS_ACCOUNT_RESTRICTIONユーザーアカウントとパスワードは正当ですが、ユーザーアカウントに制限があるため、現時点ではログオンできません。詳細については、ntsSubstatus パラメーターを参照してください。 STATUS_BAD_VALIDATION_CLASS指定された認証情報は認証パッケージによって認識されません。 STATUS_LOGON_FAILUREログオンの試行に失敗しました。失敗の理由は指定されていませんが、一般的な理由としてはユーザー名のスペルミスやパスワードのスペルミスなどがあります。 STATUS_NO_LOGON_SERVERS認証要求を処理できるドメインコントローラーがありません。 STATUS_NO_SUCH_PACKAGE指定された認証パッケージは LSA によって認識されません。 |
| ntsSubstatus | INT | in | ログオンの試行が失敗した理由に関する情報を含む整数値。この値は、ユーザーのアカウント情報が有効でログオンが拒否された場合にのみ設定されます。次のいずれかの値を含むことができます。 STATUS_INVALID_LOGON_HOURSユーザーアカウントには時間帯の制限があり、現時点ではログオンに使用できません。 STATUS_INVALID_WORKSTATIONユーザーアカウントにはワークステーションの制限があり、現在のワークステーションからのログオンに使用できません。 STATUS_PASSWORD_EXPIREDユーザーアカウントのパスワードの有効期限が切れています。 STATUS_ACCOUNT_DISABLEDユーザーアカウントは現在無効になっているため、ログオンに使用できません。 |
| pszCaption | LPWSTR | in | メッセージボックスのキャプションを含む文字列へのポインター。 |
| pszMessage | LPWSTR | in | メッセージを含む文字列へのポインター。 |
| uType | DWORD | in | メッセージボックスの種類を表す整数値。詳細については、MessageBox 関数を参照してください。 |
| pResponse | WTS_LOGON_ERROR_REDIRECTOR_RESPONSE* | out | ログオンエラーに対する優先応答をリモートデスクトップサービスのサービスに指定する WTS_LOGON_ERROR_REDIRECTOR_RESPONSE 列挙体へのポインター。 |
戻り値
このメソッドを実装する際は、関数が成功した場合は S_OK を返します。失敗した場合は、エラーを示す HRESULT 値を返します。一般的なエラーコードの一覧については、Common HRESULT Values を参照してください。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IWTSProtocolLogonErrorRedirector "{FD9B61A7-2916-4627-8DEE-4328711AD6CB}" #usecom global IWTSProtocolLogonErrorRedirector IID_IWTSProtocolLogonErrorRedirector "{}" #comfunc global IWTSProtocolLogonErrorRedirector_OnBeginPainting 3 #comfunc global IWTSProtocolLogonErrorRedirector_RedirectStatus 4 wstr,var #comfunc global IWTSProtocolLogonErrorRedirector_RedirectMessage 5 wstr,wstr,int,var #comfunc global IWTSProtocolLogonErrorRedirector_RedirectLogonError 6 int,int,wstr,wstr,int,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_IWTSProtocolLogonErrorRedirector "{FD9B61A7-2916-4627-8DEE-4328711AD6CB}" #usecom global IWTSProtocolLogonErrorRedirector IID_IWTSProtocolLogonErrorRedirector "{}" #comfunc global IWTSProtocolLogonErrorRedirector_OnBeginPainting 3 #comfunc global IWTSProtocolLogonErrorRedirector_RedirectStatus 4 wstr,sptr #comfunc global IWTSProtocolLogonErrorRedirector_RedirectMessage 5 wstr,wstr,int,sptr #comfunc global IWTSProtocolLogonErrorRedirector_RedirectLogonError 6 int,int,wstr,wstr,int,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。