mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-09-24 15:54:12 +00:00
23 lines
594 B
C++
23 lines
594 B
C++
|
#include "main.h"
|
||
|
#include "directdraw.h"
|
||
|
|
||
|
HRESULT (WINAPI *_DirectDrawCreate)(GUID FAR *lpGUID, LPDIRECTDRAW FAR *lplpDD, IUnknown FAR *pUnkOuter) = 0;
|
||
|
|
||
|
HRESULT DDrawCreate(GUID FAR *lpGUID, LPDIRECTDRAW FAR *lplpDD, IUnknown FAR *pUnkOuter)
|
||
|
{
|
||
|
static int a = 0;
|
||
|
if (!_DirectDrawCreate && !a)
|
||
|
{
|
||
|
a++;
|
||
|
HINSTANCE h = LoadLibrary(L"ddraw.dll");
|
||
|
if (h)
|
||
|
{
|
||
|
*(void**)&_DirectDrawCreate = (void*)GetProcAddress(h, "DirectDrawCreate");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (_DirectDrawCreate)
|
||
|
return _DirectDrawCreate(lpGUID, lplpDD, pUnkOuter);
|
||
|
else
|
||
|
return S_OK; // TODO: uhhh no this should be an error :)
|
||
|
}
|