[PR]

『新妻LOVELY×CATION』を応援しています!

リソースの残量を取得する

戻る

 リソースの残量を取得する関数を作る。

//*********************************************************
// 使用する関数型宣言
//*********************************************************
typedef int (WINAPI *GetFreeResource_t)(int); 

//*********************************************************
//  GetFreeResource
//    nSystem …… システムリソース の残量を取得する変数へのポインタ(単位%)
//    nGdi    …… GDIリソース   の残量を取得する変数へのポインタ(単位%)
//    nUser   …… USERリソース の残量を取得する変数へのポインタ(単位%)
//*********************************************************
BOOL GetFreeResource( int *nSystem, int *nGdi, int *nUser )
{
	HINSTANCE         hInstance;        // rsrc32.dll のインスタンス
	GetFreeResource_t pGetFreeResource; // リソースを取得できる関数

	hInstance = LoadLibrary( "rsrc32.dll" ); // rsrc32.dll をロード
	if ( !hInstance )
	{
		return FALSE;
	}

	// 関数をロード
	pGetFreeResource = (GetFreeResource_t)GetProcAddress( hInstance, "_MyGetFreeSystemResources32@4" );
	if ( pGetFreeResource )
	{
		if ( nSystem ) *nSystem = pGetFreeResource( 0 ); // システムリソース残量を取得
		if ( nGdi    ) *nGdi    = pGetFreeResource( 1 ); // GDIリソース残量を取得
		if ( nUser   ) *nUser   = pGetFreeResource( 2 ); // USERリソース残量を取得

		FreeLibrary( hInstance ); // rsrc32.dll を解放
		return TRUE;
	}
	FreeLibrary( hInstance ); // rsrc32.dll を解放
	return FALSE;
}//GetFreeResource

Google
ご意見・ご感想をお聞かせ下さい。匿名で送信できます。

 * 返信が必要な場合には postmaster@katsura-kotonoha.sakura.ne.jp へ直接メールしてください。

水無瀬 優 postmaster@katsura-kotonoha.sakura.ne.jp
『新妻LOVELY×CATION』を応援しています!