Win32 API 日本語リファレンス
ホームSystem.RemoteDesktop › ITsSbResourcePluginStore

ITsSbResourcePluginStore

COM
IID5c38f65f-bcf1-4036-a6bf-9e3cccae0b63継承元IUnknown自前メソッド開始 vtbl3

メソッド 28

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT QueryTarget(LPWSTR TargetName, LPWSTR FarmName, ITsSbTarget** ppTarget)
TargetNameLPWSTRin取得するターゲットの名前を指定する。
FarmNameLPWSTRinターゲットが属するファーム名を指定する。
ppTargetITsSbTarget**out取得したターゲットオブジェクト(ITsSbTarget)を受け取るポインタへのポインタである。
vtbl 4 HRESULT QuerySessionBySessionId(DWORD dwSessionId, LPWSTR TargetName, ITsSbSession** ppSession)
dwSessionIdDWORDin取得するセッションの ID を指定する。
TargetNameLPWSTRinセッションが存在するターゲット名を指定する。
ppSessionITsSbSession**out取得したセッションオブジェクト(ITsSbSession)を受け取るポインタへのポインタである。
vtbl 5 HRESULT AddTargetToStore(ITsSbTarget* pTarget)
pTargetITsSbTarget*inストアに追加するターゲット(ITsSbTarget)へのポインタである。
vtbl 6 HRESULT AddSessionToStore(ITsSbSession* pSession)
pSessionITsSbSession*inストアに追加するセッション(ITsSbSession)へのポインタである。
vtbl 7 HRESULT AddEnvironmentToStore(ITsSbEnvironment* pEnvironment)
pEnvironmentITsSbEnvironment*inストアに追加する環境(ITsSbEnvironment)へのポインタである。
vtbl 8 HRESULT RemoveEnvironmentFromStore(LPWSTR EnvironmentName, BOOL bIgnoreOwner)
EnvironmentNameLPWSTRinストアから削除する環境の名前を指定する。
bIgnoreOwnerBOOLin所有者チェックを無視して削除するかどうかを示すブール値を指定する。
vtbl 9 HRESULT EnumerateFarms(DWORD* pdwCount, SAFEARRAY** pVal)
pdwCountDWORD*out列挙されたファームの数を受け取る DWORD へのポインタである。
pValSAFEARRAY**out列挙されたファーム名を格納した SAFEARRAY を受け取るポインタへのポインタである。
vtbl 10 HRESULT QueryEnvironment(LPWSTR EnvironmentName, ITsSbEnvironment** ppEnvironment)
EnvironmentNameLPWSTRin取得する環境の名前を指定する。
ppEnvironmentITsSbEnvironment**out取得した環境オブジェクト(ITsSbEnvironment)を受け取るポインタへのポインタである。
vtbl 11 HRESULT EnumerateEnvironments(DWORD* pdwCount, ITsSbEnvironment*** pVal)
pdwCountDWORD*inout列挙された環境の数を受け取る DWORD へのポインタである。
pValITsSbEnvironment***out列挙された環境オブジェクト(ITsSbEnvironment)の配列を受け取るポインタへのポインタである。
vtbl 12 HRESULT SaveTarget(ITsSbTarget* pTarget, BOOL bForceWrite)
pTargetITsSbTarget*inストアに保存するターゲット(ITsSbTarget)へのポインタである。
bForceWriteBOOLin既存データを上書きして強制的に書き込むかどうかを示すブール値を指定する。
vtbl 13 HRESULT SaveEnvironment(ITsSbEnvironment* pEnvironment, BOOL bForceWrite)
pEnvironmentITsSbEnvironment*inストアに保存する環境(ITsSbEnvironment)へのポインタである。
bForceWriteBOOLin既存データを上書きして強制的に書き込むかどうかを示すブール値を指定する。
vtbl 14 HRESULT SaveSession(ITsSbSession* pSession)
pSessionITsSbSession*inストアに保存するセッション(ITsSbSession)へのポインタである。
vtbl 15 HRESULT SetTargetProperty(LPWSTR TargetName, LPWSTR PropertyName, VARIANT* pProperty)
TargetNameLPWSTRinプロパティを設定する対象ターゲット名を指定する。
PropertyNameLPWSTRin設定するプロパティの名前を指定する。
pPropertyVARIANT*in設定するプロパティ値(VARIANT)へのポインタである。
vtbl 16 HRESULT SetEnvironmentProperty(LPWSTR EnvironmentName, LPWSTR PropertyName, VARIANT* pProperty)
EnvironmentNameLPWSTRinプロパティを設定する対象環境名を指定する。
PropertyNameLPWSTRin設定するプロパティの名前を指定する。
pPropertyVARIANT*in設定するプロパティ値(VARIANT)へのポインタである。
vtbl 17 HRESULT SetTargetState(LPWSTR targetName, TARGET_STATE newState, TARGET_STATE* pOldState)
targetNameLPWSTRin状態を設定する対象ターゲット名を指定する。
newStateTARGET_STATEinターゲットに設定する新しい状態(TARGET_STATE)を指定する。
pOldStateTARGET_STATE*out設定前のターゲットの状態(TARGET_STATE)を受け取るポインタである。
vtbl 18 HRESULT SetSessionState(ITsSbSession* sbSession)
sbSessionITsSbSession*in状態を更新するセッション(ITsSbSession)へのポインタである。
vtbl 19 HRESULT EnumerateTargets(LPWSTR FarmName, LPWSTR EnvName, TS_SB_SORT_BY sortByFieldId, LPWSTR sortyByPropName, DWORD* pdwCount, ITsSbTarget*** pVal)
FarmNameLPWSTRin列挙対象とするファーム名を指定する。
EnvNameLPWSTRin列挙対象とする環境名を指定する。
sortByFieldIdTS_SB_SORT_BYin結果の並べ替えに使用するフィールド(TS_SB_SORT_BY)を指定する。
sortyByPropNameLPWSTRin並べ替えに使用するプロパティ名を指定する。
pdwCountDWORD*inout列挙されたターゲットの数を受け取る DWORD へのポインタである。
pValITsSbTarget***out列挙されたターゲットオブジェクト(ITsSbTarget)の配列を受け取るポインタへのポインタである。
vtbl 20 HRESULT EnumerateSessions(LPWSTR targetName, LPWSTR userName, LPWSTR userDomain, LPWSTR poolName, LPWSTR initialProgram, TSSESSION_STATE* pSessionState, DWORD* pdwCount, ITsSbSession*** ppVal)
targetNameLPWSTRin列挙対象とするターゲット名を指定する。
userNameLPWSTRin列挙対象とするユーザー名を指定する。
userDomainLPWSTRin列挙対象とするユーザーのドメイン名を指定する。
poolNameLPWSTRin列挙対象とするプール名を指定する。
initialProgramLPWSTRin列挙対象とする初期プログラムを指定する。
pSessionStateTSSESSION_STATE*in列挙対象とするセッション状態(TSSESSION_STATE)へのポインタである。
pdwCountDWORD*inout列挙されたセッションの数を受け取る DWORD へのポインタである。
ppValITsSbSession***out列挙されたセッションオブジェクト(ITsSbSession)の配列を受け取るポインタへのポインタである。
vtbl 21 HRESULT GetFarmProperty(LPWSTR farmName, LPWSTR propertyName, VARIANT* pVarValue)
farmNameLPWSTRinプロパティを取得する対象ファーム名を指定する。
propertyNameLPWSTRin取得するプロパティの名前を指定する。
pVarValueVARIANT*in取得したプロパティ値を受け取る VARIANT へのポインタである。
vtbl 22 HRESULT DeleteTarget(LPWSTR targetName, LPWSTR hostName)
targetNameLPWSTRin削除するターゲットの名前を指定する。
hostNameLPWSTRinターゲットが属するホスト名を指定する。
vtbl 23 HRESULT SetTargetPropertyWithVersionCheck(ITsSbTarget* pTarget, LPWSTR PropertyName, VARIANT* pProperty)
pTargetITsSbTarget*inプロパティを設定する対象ターゲット(ITsSbTarget)へのポインタである。
PropertyNameLPWSTRin設定するプロパティの名前を指定する。
pPropertyVARIANT*in設定するプロパティ値(VARIANT)へのポインタである。
vtbl 24 HRESULT SetEnvironmentPropertyWithVersionCheck(ITsSbEnvironment* pEnvironment, LPWSTR PropertyName, VARIANT* pProperty)
pEnvironmentITsSbEnvironment*inプロパティを設定する対象環境(ITsSbEnvironment)へのポインタである。
PropertyNameLPWSTRin設定するプロパティの名前を指定する。
pPropertyVARIANT*in設定するプロパティ値(VARIANT)へのポインタである。
vtbl 25 HRESULT AcquireTargetLock(LPWSTR targetName, DWORD dwTimeout, IUnknown** ppContext)
targetNameLPWSTRinロックを取得する対象ターゲット名を指定する。
dwTimeoutDWORDinロック取得を待機するタイムアウト時間(ミリ秒)を指定する。
ppContextIUnknown**out取得したロックを表すコンテキストオブジェクト(IUnknown)を受け取るポインタへのポインタである。
vtbl 26 HRESULT ReleaseTargetLock(IUnknown* pContext)
pContextIUnknown*in解放するロックを表すコンテキストオブジェクト(IUnknown)へのポインタである。
vtbl 27 HRESULT TestAndSetServerState(LPWSTR PoolName, LPWSTR ServerFQDN, TARGET_STATE NewState, TARGET_STATE TestState, TARGET_STATE* pInitState)
PoolNameLPWSTRin対象サーバーが属するプール名を指定する。
ServerFQDNLPWSTRin状態を設定する対象サーバーの完全修飾ドメイン名(FQDN)を指定する。
NewStateTARGET_STATEin条件が一致した場合に設定する新しい状態(TARGET_STATE)を指定する。
TestStateTARGET_STATEin設定の条件として比較する現在の状態(TARGET_STATE)を指定する。
pInitStateTARGET_STATE*out操作前のサーバーの状態(TARGET_STATE)を受け取るポインタである。
vtbl 28 HRESULT SetServerWaitingToStart(LPWSTR PoolName, LPWSTR serverName)
PoolNameLPWSTRin対象サーバーが属するプール名を指定する。
serverNameLPWSTRin起動待機状態に設定するサーバー名を指定する。
vtbl 29 HRESULT GetServerState(LPWSTR PoolName, LPWSTR ServerFQDN, TARGET_STATE* pState)
PoolNameLPWSTRin対象サーバーが属するプール名を指定する。
ServerFQDNLPWSTRin状態を取得する対象サーバーの完全修飾ドメイン名(FQDN)を指定する。
pStateTARGET_STATE*out取得したサーバーの状態(TARGET_STATE)を受け取るポインタである。
vtbl 30 HRESULT SetServerDrainMode(LPWSTR ServerFQDN, DWORD DrainMode)
ServerFQDNLPWSTRinドレインモードを設定する対象サーバーの完全修飾ドメイン名(FQDN)を指定する。
DrainModeDWORDin設定するドレインモードを表す値を指定する。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ITsSbResourcePluginStore "{5C38F65F-BCF1-4036-A6BF-9E3CCCAE0B63}"
#usecom global ITsSbResourcePluginStore IID_ITsSbResourcePluginStore "{}"
#comfunc global ITsSbResourcePluginStore_QueryTarget                             3 wstr,wstr,sptr
#comfunc global ITsSbResourcePluginStore_QuerySessionBySessionId                 4 int,wstr,sptr
#comfunc global ITsSbResourcePluginStore_AddTargetToStore                        5 sptr
#comfunc global ITsSbResourcePluginStore_AddSessionToStore                       6 sptr
#comfunc global ITsSbResourcePluginStore_AddEnvironmentToStore                   7 sptr
#comfunc global ITsSbResourcePluginStore_RemoveEnvironmentFromStore              8 wstr,int
#comfunc global ITsSbResourcePluginStore_EnumerateFarms                          9 var,var
#comfunc global ITsSbResourcePluginStore_QueryEnvironment                        10 wstr,sptr
#comfunc global ITsSbResourcePluginStore_EnumerateEnvironments                   11 var,sptr
#comfunc global ITsSbResourcePluginStore_SaveTarget                              12 sptr,int
#comfunc global ITsSbResourcePluginStore_SaveEnvironment                         13 sptr,int
#comfunc global ITsSbResourcePluginStore_SaveSession                             14 sptr
#comfunc global ITsSbResourcePluginStore_SetTargetProperty                       15 wstr,wstr,var
#comfunc global ITsSbResourcePluginStore_SetEnvironmentProperty                  16 wstr,wstr,var
#comfunc global ITsSbResourcePluginStore_SetTargetState                          17 wstr,int,var
#comfunc global ITsSbResourcePluginStore_SetSessionState                         18 sptr
#comfunc global ITsSbResourcePluginStore_EnumerateTargets                        19 wstr,wstr,int,wstr,var,sptr
#comfunc global ITsSbResourcePluginStore_EnumerateSessions                       20 wstr,wstr,wstr,wstr,wstr,var,var,sptr
#comfunc global ITsSbResourcePluginStore_GetFarmProperty                         21 wstr,wstr,var
#comfunc global ITsSbResourcePluginStore_DeleteTarget                            22 wstr,wstr
#comfunc global ITsSbResourcePluginStore_SetTargetPropertyWithVersionCheck       23 sptr,wstr,var
#comfunc global ITsSbResourcePluginStore_SetEnvironmentPropertyWithVersionCheck  24 sptr,wstr,var
#comfunc global ITsSbResourcePluginStore_AcquireTargetLock                       25 wstr,int,sptr
#comfunc global ITsSbResourcePluginStore_ReleaseTargetLock                       26 sptr
#comfunc global ITsSbResourcePluginStore_TestAndSetServerState                   27 wstr,wstr,int,int,var
#comfunc global ITsSbResourcePluginStore_SetServerWaitingToStart                 28 wstr,wstr
#comfunc global ITsSbResourcePluginStore_GetServerState                          29 wstr,wstr,var
#comfunc global ITsSbResourcePluginStore_SetServerDrainMode                      30 wstr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。