Introduce Marshall.LoadLibrary API (#20871)
authorSwaroop Sridhar <Swaroop.Sridhar@microsoft.com>
Wed, 21 Nov 2018 19:42:01 +0000 (11:42 -0800)
committerGitHub <noreply@github.com>
Wed, 21 Nov 2018 19:42:01 +0000 (11:42 -0800)
commit175ba1c0794958bb7d006544b87e00675de742fc
treee5ef7a67f6c11a7407465661155036b958d6beb3
parent5ef00810b53dcb7cbc4f2cb152ca6af971284e82
Introduce Marshall.LoadLibrary API (#20871)

Implement Native LoadLibrary API

This change commits the following changes:
1) Refactoring DllImport code to reuse LodLibrary by search for
   pInvoke and LoadLibrary cases
2) Implement the new Native Library API in System.Runtime.Interop.Marshall
3) Add tests for the new APIs
18 files changed:
src/System.Private.CoreLib/src/System/Runtime/InteropServices/Marshal.cs
src/dlls/mscorrc/mscorrc.rc
src/dlls/mscorrc/resource.h
src/pal/inc/pal.h
src/pal/src/include/pal/module.h
src/pal/src/loader/module.cpp
src/vm/assemblynative.cpp
src/vm/dllimport.cpp
src/vm/dllimport.h
src/vm/ecalllist.h
src/vm/marshalnative.cpp
src/vm/marshalnative.h
tests/src/Common/CoreCLRTestLibrary/Utilities.cs
tests/src/Interop/CMakeLists.txt
tests/src/Interop/MarshalAPI/NativeLibrary/CMakeLists.txt [new file with mode: 0644]
tests/src/Interop/MarshalAPI/NativeLibrary/NativeLibrary.cpp [new file with mode: 0644]
tests/src/Interop/MarshalAPI/NativeLibrary/NativeLibraryTests.cs [new file with mode: 0644]
tests/src/Interop/MarshalAPI/NativeLibrary/NativeLibraryTests.csproj [new file with mode: 0644]