summaryrefslogtreecommitdiff
path: root/shared/dllLoader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'shared/dllLoader.cpp')
-rw-r--r--shared/dllLoader.cpp61
1 files changed, 0 insertions, 61 deletions
diff --git a/shared/dllLoader.cpp b/shared/dllLoader.cpp
deleted file mode 100644
index f5242d83..00000000
--- a/shared/dllLoader.cpp
+++ /dev/null
@@ -1,61 +0,0 @@
-// **************************************************************************
-// * 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-2010 ZenJu (zhnmju123 AT gmx.de) *
-// **************************************************************************
-//
-#include "dllLoader.h"
-#include <wx/msw/wrapwin.h> //includes "windows.h"
-#include <map>
-#include <cassert>
-
-namespace
-{
-class DllHandler //dynamically load "kernel32.dll"
-{
-public:
- static DllHandler& getInstance()
- {
- static DllHandler instance;
- return instance;
- }
-
- HINSTANCE getHandle(const std::wstring& libraryName)
- {
- HandleMap::const_iterator foundEntry = handles.find(libraryName);
- if (foundEntry == handles.end())
- {
- HINSTANCE newHandle = ::LoadLibrary(libraryName.c_str());
- handles.insert(std::make_pair(libraryName, newHandle));
-
- assert(handles.find(libraryName) != handles.end());
- return newHandle;
- }
- else
- return foundEntry->second;
- }
-
-private:
- DllHandler() {}
-
- ~DllHandler()
- {
- for (HandleMap::const_iterator i = handles.begin(); i != handles.end(); ++i)
- if (i->second != NULL) ::FreeLibrary(i->second);
- }
-
- typedef std::map<std::wstring, HINSTANCE> HandleMap;
- HandleMap handles;
-};
-}
-
-
-void* Utility::loadSymbol(const std::wstring& libraryName, const std::string& functionName)
-{
- const HINSTANCE libHandle = DllHandler::getInstance().getHandle(libraryName);
-
- if (libHandle != NULL)
- return reinterpret_cast<void*>(::GetProcAddress(libHandle, functionName.c_str()));
- else
- return NULL;
-}
bgstack15