public void Test32BitsLoads64BitsAsData() { var loader = new AssemblySystem(); var dll64 = Path.Combine(loader.BaseDirectory, loader.x64Directory, "RegFreeComResources.dll"); var module = loader.ReflectionOnlyLoadFrom(dll64); Assert.IsNotNull(module); module.Dispose(); loader.Dispose(); }
public void Test32BitsLoads64BitsNoStringResource() { var loader = new AssemblySystem(); var dll64 = Path.Combine(loader.BaseDirectory, loader.x64Directory, "RegFreeComResources.dll"); var module = loader.ReflectionOnlyLoadFrom(dll64); var result = module.LoadStringTableResource(47854); Assert.IsNull(result); module.Dispose(); loader.Dispose(); }
public void TestDllDependenciesLoading() { var loader = new AssemblySystem(); // C# loads C++ from Win32 or x64 subfolder var anyCpu = loader.GetAnyCpuPath(loader.BaseDirectory); loader.AddSearchPath(anyCpu); var module = loader.LoadFrom(anyCpu, "NativeLibraryConsumer.dll"); var fn = module.GetDelegate <fnNativeLibraryConsumer>(); object[] retval; Assert.IsTrue(42 == fn(out retval)); loader.Dispose(); }
public void Test32BitsLoads64BitsCompiledResource() { var loader = new AssemblySystem(); var dll64 = Path.Combine(loader.BaseDirectory, loader.x64Directory, "RegFreeComResources.dll"); var module = loader.ReflectionOnlyLoadFrom(dll64); var result = module.LoadCompiledResource(5435); Assert.IsNotNull(result); Assert.IsTrue(result.Length > 0); var value = new StreamReader(result).ReadToEnd(); StringAssert.Contains("42", value); result.Close(); module.Dispose(); loader.Dispose(); }
public void TestDllDependenciesLoading() { var loader = new AssemblySystem(); // C# loads C++ from Win32 or x64 subfolder var anyCpu = loader.GetAnyCpuPath(loader.BaseDirectory); loader.AddSearchPath(anyCpu); var module = loader.LoadFrom(anyCpu, "NativeLibraryConsumer.dll"); var fn = module.GetDelegate<fnNativeLibraryConsumer>(); object[] retval; Assert.IsTrue(42 == fn(out retval)); loader.Dispose(); }
public void Test32BitsLoads64BitsStringResource() { var loader = new AssemblySystem(); var dll64 = Path.Combine(loader.BaseDirectory, loader.x64Directory, "RegFreeComResources.dll"); var module = loader.ReflectionOnlyLoadFrom(dll64); var result = module.LoadStringTableResource(101); Assert.IsNotNullOrEmpty(result); module.Dispose(); loader.Dispose(); }