#include <windows.h>
#include <stdio.h>
#include <iostream.h>
void main()
{
 HINSTANCE hLib;
 hLib = LoadLibrary("krnl386.exe");

 /*HMODULE hKernel = GetModuleHandle ("KERNEL");

 HINSTANCE (WINAPI *LoadLibraryEx32W) (LPCSTR, DWORD, DWORD);
 BOOL      (WINAPI *FreeLibrary32W)   (HINSTANCE);
 DWORD     (WINAPI *GetProcAddress32W)(HINSTANCE, LPCSTR);
 DWORD     (WINAPI *CallProc32W)      (DWORD, DWORD, DWORD);

 (FARPROC) LoadLibraryEx32W  = GetProcAddress (hKernel, "LoadLibraryEx32W");
 (FARPROC) FreeLibrary32W    = GetProcAddress (hKernel, "FreeLibrary32W");
 (FARPROC) GetProcAddress32W = GetProcAddress (hKernel, "GetProcAddress32W");
 (FARPROC) CallProc32W       = GetProcAddress (hKernel, "CallProc32W");

 HINSTANCE ghLib = LoadLibraryEx32W ("Func32.dll", 0, 0);


DWORD MyGetFrequency    = GetProcAddress32W(ghLib, "MyGetFrequency");
 long freq = CallProc32W(MyGetFrequency, 0, 0);
// printf("%08X",freq);
 FreeLibrary32W(ghLib);
 FreeLibrary(hKernel);*/

 typedef DWORD (CALLBACK* lpLoad32type)(LPCSTR, DWORD, DWORD);
 typedef DWORD (CALLBACK* lpAddr32type)(DWORD, LPCSTR);
 typedef DWORD (CALLBACK* lpCallProc32type)(LPVOID, DWORD, DWORD);

 lpLoad32type lpLoad32 = (lpLoad32type)GetProcAddress(hLib, "LoadLibraryEx32W");
 lpAddr32type lpAddr32 = (lpAddr32type)GetProcAddress(hLib, "GetProcAddress32W");
 lpCallProc32type lpCallProc32 = (lpCallProc32type)GetProcAddress(hLib, "CallProc32W");

 DWORD ghLib;
 ghLib = (*lpLoad32)( "Func32.dll", NULL, 0 );

 typedef BOOL (CALLBACK* lpQueryFreqType)(void);
 lpQueryFreqType lpQueryFreq = (lpQueryFreqType)(*lpAddr32)(ghLib, "MyGetCount");

 long res = (*lpCallProc32)(lpQueryFreq, 0, 0);
 res = (*lpCallProc32)(lpQueryFreq, 0, 0);
 cout <<res;

 /*res = (*lpCallProc32)(lpQueryFreq, 0, 0);
// if (!res) printf("High-resolution performance counter is not installed on your PC!");

// printf("%08X", dwTemp);
// for(int z=0; z<100; z++) {

 cout << res;
*/
 FreeLibrary(hLib);
}
Соседние файлы в папке Samp16
  • #
    01.05.20142 Кб10Func32.CPP
  • #
    01.05.20143.4 Кб10Func32.dsp
  • #
    01.05.2014535 б10Func32.dsw
  • #
    01.05.20149.43 Кб10Help.hex
  • #
    01.05.20141.54 Кб10HELP.SCR
  • #
    01.05.20142.18 Кб10SAMP.DSK