Win32 API 日本語リファレンス
ホームStorage.FileSystem › IDiskQuotaUser

IDiskQuotaUser

COM
IID7988b574-ec89-11cf-9c00-00aa00a14f56継承元IUnknown自前メソッド開始 vtbl3

メソッド 15

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

vtbl 3 HRESULT GetID(DWORD* pulID)
pulIDDWORD*inoutユーザーの一意な識別子を受け取る DWORD ポインタである。
vtbl 4 HRESULT GetName(LPWSTR pszAccountContainer, DWORD cchAccountContainer, LPWSTR pszLogonName, DWORD cchLogonName, LPWSTR pszDisplayName, DWORD cchDisplayName)
pszAccountContainerLPWSTRinアカウントが属するコンテナ (ドメインまたはコンピューター) 名を受け取るバッファである。
cchAccountContainerDWORDinpszAccountContainer バッファのサイズを文字数で指定する。
pszLogonNameLPWSTRinユーザーのログオン名を受け取るバッファである。
cchLogonNameDWORDinpszLogonName バッファのサイズを文字数で指定する。
pszDisplayNameLPWSTRinユーザーの表示名を受け取るバッファである。
cchDisplayNameDWORDinpszDisplayName バッファのサイズを文字数で指定する。
vtbl 5 HRESULT GetSidLength(DWORD* pdwLength)
pdwLengthDWORD*inoutユーザーのセキュリティ識別子 (SID) のバイト数を受け取る DWORD ポインタである。
vtbl 6 HRESULT GetSid(BYTE* pbSidBuffer, DWORD cbSidBuffer)
pbSidBufferBYTE*inoutユーザーの SID を受け取るバッファへのポインタである。
cbSidBufferDWORDinpbSidBuffer バッファのサイズをバイト数で指定する。
vtbl 7 HRESULT GetQuotaThreshold(LONGLONG* pllThreshold)
pllThresholdLONGLONG*inoutユーザーのクォータ警告しきい値 (バイト数) を受け取るポインタである。
vtbl 8 HRESULT GetQuotaThresholdText(LPWSTR pszText, DWORD cchText)
pszTextLPWSTRinクォータ警告しきい値を整形した文字列を受け取るバッファである。
cchTextDWORDinpszText バッファのサイズを文字数で指定する。
vtbl 9 HRESULT GetQuotaLimit(LONGLONG* pllLimit)
pllLimitLONGLONG*inoutユーザーのクォータ制限値 (バイト数) を受け取るポインタである。
vtbl 10 HRESULT GetQuotaLimitText(LPWSTR pszText, DWORD cchText)
pszTextLPWSTRinクォータ制限値を整形した文字列を受け取るバッファである。
cchTextDWORDinpszText バッファのサイズを文字数で指定する。
vtbl 11 HRESULT GetQuotaUsed(LONGLONG* pllUsed)
pllUsedLONGLONG*inoutユーザーが現在使用しているディスク容量 (バイト数) を受け取るポインタである。
vtbl 12 HRESULT GetQuotaUsedText(LPWSTR pszText, DWORD cchText)
pszTextLPWSTRin使用済みディスク容量を整形した文字列を受け取るバッファである。
cchTextDWORDinpszText バッファのサイズを文字数で指定する。
vtbl 13 HRESULT GetQuotaInformation(void* pbQuotaInfo, DWORD cbQuotaInfo)
pbQuotaInfovoid*inoutクォータ情報を受け取る DISKQUOTA_USER_INFORMATION 構造体へのポインタである。
cbQuotaInfoDWORDinpbQuotaInfo バッファのサイズをバイト数で指定する。
vtbl 14 HRESULT SetQuotaThreshold(LONGLONG llThreshold, BOOL fWriteThrough)
llThresholdLONGLONGin設定するクォータ警告しきい値をバイト数で指定する。
fWriteThroughBOOLin変更を即座にディスクへ書き込むかどうかを指定する。TRUE の場合は同期的に書き込む。
vtbl 15 HRESULT SetQuotaLimit(LONGLONG llLimit, BOOL fWriteThrough)
llLimitLONGLONGin設定するクォータ制限値をバイト数で指定する。
fWriteThroughBOOLin変更を即座にディスクへ書き込むかどうかを指定する。TRUE の場合は同期的に書き込む。
vtbl 16 HRESULT Invalidate()
vtbl 17 HRESULT GetAccountStatus(DWORD* pdwStatus)
pdwStatusDWORD*inoutユーザーアカウントの SID 解決状態を示すフラグを受け取る DWORD ポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IDiskQuotaUser "{7988B574-EC89-11CF-9C00-00AA00A14F56}"
#usecom global IDiskQuotaUser IID_IDiskQuotaUser "{}"
#comfunc global IDiskQuotaUser_GetID                  3 var
#comfunc global IDiskQuotaUser_GetName                4 wstr,int,wstr,int,wstr,int
#comfunc global IDiskQuotaUser_GetSidLength           5 var
#comfunc global IDiskQuotaUser_GetSid                 6 var,int
#comfunc global IDiskQuotaUser_GetQuotaThreshold      7 var
#comfunc global IDiskQuotaUser_GetQuotaThresholdText  8 wstr,int
#comfunc global IDiskQuotaUser_GetQuotaLimit          9 var
#comfunc global IDiskQuotaUser_GetQuotaLimitText      10 wstr,int
#comfunc global IDiskQuotaUser_GetQuotaUsed           11 var
#comfunc global IDiskQuotaUser_GetQuotaUsedText       12 wstr,int
#comfunc global IDiskQuotaUser_GetQuotaInformation    13 sptr,int
#comfunc global IDiskQuotaUser_SetQuotaThreshold      14 int64,int
#comfunc global IDiskQuotaUser_SetQuotaLimit          15 int64,int
#comfunc global IDiskQuotaUser_Invalidate             16
#comfunc global IDiskQuotaUser_GetAccountStatus       17 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。