Alexander Yastrebov <menone7@gmail.com>

- SetDllDirectory should add a directory to the search path used to locate DLLs for the application.

See issue #4820 for more details.

svn path=/trunk/; revision=43357
This commit is contained in:
Aleksey Bragin 2009-10-10 09:16:34 +00:00
parent 2e0924d6af
commit c6895f22d4

View file

@ -63,6 +63,7 @@ GetDllLoadPath(LPCWSTR lpModule)
}
Length += GetCurrentDirectoryW(0, NULL);
Length += GetDllDirectoryW(0, NULL);
Length += GetSystemDirectoryW(NULL, 0);
Length += GetWindowsDirectoryW(NULL, 0);
Length += GetEnvironmentVariableW(L"PATH", NULL, 0);
@ -84,6 +85,8 @@ GetDllLoadPath(LPCWSTR lpModule)
Pos += GetCurrentDirectoryW(Length, EnvironmentBufferW + Pos);
EnvironmentBufferW[Pos++] = L';';
Pos += GetDllDirectoryW(Length - Pos, EnvironmentBufferW + Pos);
EnvironmentBufferW[Pos++] = L';';
Pos += GetSystemDirectoryW(EnvironmentBufferW + Pos, Length - Pos);
EnvironmentBufferW[Pos++] = L';';
Pos += GetWindowsDirectoryW(EnvironmentBufferW + Pos, Length - Pos);