GDIオブジェクトのハンドル数取得 <TOP>
指定したプロセスのGDIオブジェクトおよびUSERオブジェクトの数を取得します。
GetGuiResources 指定されたプロセスが使っているGUIオブジェクトのハンドルを返す
GetCurrentProcess 現在のプロセスに対応する疑似ハンドルを取得
'================================================================ '= GDIオブジェクトのハンドル数取得 '= Windows NT: バージョン 5.0 以降
'= (GetGuiResources.bas) '================================================================ #include "Windows.bi" #define GR_GDIOBJECTS 0 'GDIオブジェクトの数を返す #define GR_USEROBJECTS 1 'USERオブジェクトの数を返す ' 指定されたプロセスが使っているGUIオブジェクトのハンドルを返す Declare Function Api_GetGuiResources& Lib "user32" Alias "GetGuiResources" (ByVal hProcess&, ByVal uiFlags&) ' 現在のプロセスに対応する疑似ハンドルを取得 Declare Function Api_GetCurrentProcess& Lib "Kernel32" Alias "GetCurrentProcess" () Var Shared Text1 As Object Var Shared Button1 As Object Text1.Attach GetDlgItem("Text1") : Text1.SetFontSize 14 Button1.Attach GetDlgItem("Button1") : Button1.SetFontSize 14 '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var txt As String txt = txt & "GDIオブジェクト :" & Format$(Api_GetGuiResources(Api_GetCurrentProcess, GR_GDIOBJECTS), "####") & Chr$(13, 10) txt = txt & "ユーザーオブジェクト:" & Format$(Api_GetGuiResources(Api_GetCurrentProcess, GR_USEROBJECTS), "####") Text1.SetWindowText txt End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End