From 4657d391c9f213c788e32347c083f2699aed672e Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sat, 25 Nov 2017 23:13:02 +0300 Subject: more accurate solution for AssocMgr that doesn't change current working directory --- plugins/AssocMgr/src/utils.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'plugins/AssocMgr/src/utils.cpp') diff --git a/plugins/AssocMgr/src/utils.cpp b/plugins/AssocMgr/src/utils.cpp index 8495d9da7a..02718bd02f 100644 --- a/plugins/AssocMgr/src/utils.cpp +++ b/plugins/AssocMgr/src/utils.cpp @@ -21,6 +21,24 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "stdafx.h" +void DynamicLoadInit() +{ + wchar_t wszPath[MAX_PATH]; + GetModuleFileNameW(nullptr, wszPath, _countof(wszPath)); + + for (int i = lstrlenW(wszPath); i >= 0; i--) + if (wszPath[i] == '\\') { + wszPath[i + 1] = 0; + break; + } + + lstrcatW(wszPath, L"\\libs"); + SetDllDirectoryW(wszPath); + + lstrcatW(wszPath, L"\\ucrtbase.dll"); + LoadLibraryW(wszPath); +} + /************************* String Conv ****************************/ // mir_free() the return value -- cgit v1.2.3