Delete obsolete file.
This commit is contained in:
parent
f8c706bc9b
commit
a72a762a8c
|
@ -1,70 +0,0 @@
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <string>
|
|
||||||
|
|
||||||
#include <windows.h>
|
|
||||||
#include <xinput.h>
|
|
||||||
|
|
||||||
#include "Common.h"
|
|
||||||
|
|
||||||
class DirectInputModuleManager : NonCopyable
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
HRESULT(WINAPI* DirectInput8Create)(HINSTANCE hinst, DWORD dwVersion, REFIID riidltf, LPVOID *ppvOut, LPUNKNOWN punkOuter);
|
|
||||||
HRESULT(WINAPI* DllCanUnloadNow)(void);
|
|
||||||
HRESULT(WINAPI* DllGetClassObject)(REFCLSID rclsid, REFIID riid, LPVOID FAR* ppv);
|
|
||||||
HRESULT(WINAPI* DllRegisterServer)(void);
|
|
||||||
HRESULT(WINAPI* DllUnregisterServer)(void);
|
|
||||||
|
|
||||||
DirectInputModuleManager()
|
|
||||||
{
|
|
||||||
std::string loaded_module_path;
|
|
||||||
m_module = LoadLibrarySystem("dinput8.dll", &loaded_module_path);
|
|
||||||
|
|
||||||
if (!m_module)
|
|
||||||
{
|
|
||||||
HRESULT hr = GetLastError();
|
|
||||||
std::unique_ptr<char[]> error_msg(new char[MAX_PATH]);
|
|
||||||
sprintf_s(error_msg.get(), MAX_PATH, "Cannot load \"%s\" error: 0x%x", loaded_module_path.c_str(), hr);
|
|
||||||
PrintLog(error_msg.get());
|
|
||||||
MessageBoxA(NULL, error_msg.get(), "Error", MB_ICONERROR);
|
|
||||||
exit(hr);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
PrintLog("Loaded \"%s\"", loaded_module_path.c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
GetProcAddress("DirectInput8Create", &DirectInput8Create);
|
|
||||||
GetProcAddress("DllCanUnloadNow", &DllCanUnloadNow);
|
|
||||||
GetProcAddress("DllGetClassObject", &DllGetClassObject);
|
|
||||||
GetProcAddress("DllRegisterServer", &DllRegisterServer);
|
|
||||||
GetProcAddress("DllUnregisterServer", &DllUnregisterServer);
|
|
||||||
}
|
|
||||||
|
|
||||||
~DirectInputModuleManager()
|
|
||||||
{
|
|
||||||
if (m_module)
|
|
||||||
{
|
|
||||||
std::string xinput_path;
|
|
||||||
ModulePath(&xinput_path, m_module);
|
|
||||||
PrintLog("Unloading %s", xinput_path.c_str());
|
|
||||||
FreeLibrary(m_module);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static DirectInputModuleManager& Get()
|
|
||||||
{
|
|
||||||
static DirectInputModuleManager instance;
|
|
||||||
return instance;
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
|
||||||
template<typename T>
|
|
||||||
inline void GetProcAddress(const char* funcname, T* ppfunc)
|
|
||||||
{
|
|
||||||
*ppfunc = reinterpret_cast<T>(::GetProcAddress(m_module, funcname));
|
|
||||||
}
|
|
||||||
|
|
||||||
HMODULE m_module;
|
|
||||||
};
|
|
Loading…
Reference in a new issue