blob: 51ec1f0c77752d09e5ebfb051f8097058ea48763 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
// **************************************************************************
// * This file is part of the FreeFileSync project. It is distributed under *
// * GNU General Public License: http://www.gnu.org/licenses/gpl.html *
// * Copyright (C) 2008-2011 ZenJu (zhnmju123 AT gmx.de) *
// **************************************************************************
#define WIN32_LEAN_AND_MEAN
#include <windows.h> // yes, this sequence is mad, but ddk and api headers contain plenty of redefinitions
#include "load_dll.h" //
void* /*FARPROC*/ dll::loadSymbol(const wchar_t* libraryName, const char* functionName)
{
return ::GetProcAddress(::GetModuleHandle(libraryName), functionName);
//cleanup neither required nor allowed (::FreeLibrary())
}
//note: void* and FARPROC function pointer have same binary size on Windows
void dll::setWin32Error(unsigned long lastError)
{
::SetLastError(lastError);
}
static_assert(ERROR_INVALID_ORDINAL == 182, "dang!");
|