Getting free resource under Windows 95

If I could have a penny for all the times this question has been posted in discussion board .. well, finally .. looking at Corel Draw 7 script samples (!) I could figure out how to get the free system resource under Windows 95.
And here is the code for you; take care of this - it works ONLY under Windows 95 (not NT) and you must (I think) have the resource meter installed, since we are using its function, not system ones.
In other words, this way will fail if you don't have the "RSRC32.dll" installed.

#include "stdio.h"
#include "windows.h"

#define GFSR_SYSTEMRESOURCES	0
#define GFSR_GDIRESOURCES		1
#define GFSR_USERRESOURCES		2

typedef LONG (CALLBACK* GETRES)(int);

void main()
{
	HINSTANCE hInst = LoadLibrary("RSRC32.dll");
	if (hInst != NULL)
	{
		GETRES pGetRes = (GETRES) GetProcAddress(hInst, "_MyGetFreeSystemResources32@4");//); 

		if (pGetRes)
		{
			long lSysRes = (*pGetRes)(GFSR_SYSTEMRESOURCES);
			long lGdiRes = (*pGetRes)(GFSR_GDIRESOURCES);
			long lUsrRes = (*pGetRes)(GFSR_USERRESOURCES);
			printf("System resource: %d\n", lSysRes);
			printf("GDI resource: %d\n", lGdiRes);
			printf("User resource: %d\n", lUsrRes);
			return;
		}
		printf("Error getting pointer to _MyGetFreeSystemResources32()\n");
		return;
	}
	printf("Error loading rsrc32.dll. You must run this under Win95 only and with the resource meter installed.\n\n");
}

Last updated: 26 June 1998