From 88bd74588388fc87f4a513a55903c350aa1b157b Mon Sep 17 00:00:00 2001 From: soukoku Date: Tue, 2 Sep 2014 19:10:35 -0400 Subject: [PATCH] Minor internal changes. --- NTwain/Internals/WindowsHook.cs | 3 +- NTwain/Platform.cs | 61 ++++++++++++++------- NTwain/Triplets/Dsm.Linux.cs | 62 +++++++++++----------- NTwain/Triplets/Dsm.cs | 60 ++++++++++----------- NTwain/TwainSession.cs | 11 ++-- NTwain/TwainSource.Caps.cs | 54 +++++++++---------- NTwain/TwainSource.cs | 26 ++++----- Tests/Tester.WPF/Tester.WPF.csproj | 19 +++---- Tests/Tester.WPF/packages.config | 8 +-- Tests/Tester.Winform/Tester.Winform.csproj | 2 +- Tests/Tester.Winform/packages.config | 2 +- 11 files changed, 167 insertions(+), 141 deletions(-) diff --git a/NTwain/Internals/WindowsHook.cs b/NTwain/Internals/WindowsHook.cs index 3a70247..8e02292 100644 --- a/NTwain/Internals/WindowsHook.cs +++ b/NTwain/Internals/WindowsHook.cs @@ -6,9 +6,8 @@ namespace NTwain.Internals { /// - /// Abstracts out wnd proc hook on Windows from MessageLoop class. + /// Abstracts out wnd proc hook on Windows from InternalMessageLoopHook class. /// This allows things to not depend on PresentationCore.dll at runtime on mono. - /// Not that everything works yet in mono but it's something. /// class WindowsHook : IDisposable { diff --git a/NTwain/Platform.cs b/NTwain/Platform.cs index c89e58e..0d1be0c 100644 --- a/NTwain/Platform.cs +++ b/NTwain/Platform.cs @@ -15,21 +15,57 @@ namespace NTwain static Platform() { IsApp64bit = IntPtr.Size == 8; - NewWinDsmExists = File.Exists(Path.Combine(Environment.SystemDirectory, "twaindsm.dll")); - - UseNewDSM = IsApp64bit || NewWinDsmExists; IsOnMono = Type.GetType("Mono.Runtime") != null; IsWin = Environment.OSVersion.Platform == PlatformID.Win32NT; IsLinux = Environment.OSVersion.Platform == PlatformID.Unix; + if (IsWin) + { + var newDsmPath = Path.Combine(Environment.SystemDirectory, "twaindsm.dll"); + var oldDsmPath = Path.Combine(Environment.SystemDirectory, "twain_32.dll"); + + if (IsApp64bit) + { + IsSupported = DsmExists = File.Exists(newDsmPath); + UseNewWinDSM = true; + } + else + { + if (File.Exists(newDsmPath)) + { + UseNewWinDSM = IsSupported = DsmExists = true; + } + else + { + IsSupported = DsmExists = File.Exists(oldDsmPath); + } + } + } + else if (IsLinux) + { + DsmExists = File.Exists(Triplets.Dsm.LINUX_DSM_PATH); + IsSupported = DsmExists && IsOnMono; + } + else + { + } + _defaultMemManager = new WinMemoryManager(); } - internal static readonly bool UseNewDSM; + // prefer the use of the twain dsm on windows. + internal static readonly bool UseNewWinDSM; internal static readonly bool IsApp64bit; - internal static readonly bool NewWinDsmExists; + + /// + /// Gets a value indicating whether the applicable TWAIN DSM library exists in the operating system. + /// + /// + /// true if the TWAIN DSM; otherwise, false. + /// + public static bool DsmExists { get; private set; } internal static readonly bool IsOnMono; @@ -37,23 +73,12 @@ namespace NTwain internal static readonly bool IsLinux; /// - /// Gets a value indicating whether this library is supported. + /// Gets a value indicating whether this library is supported on current OS. /// /// /// true if this library is supported; otherwise, false. /// - public static bool IsSupported - { - get - { - if (IsWin) - { - if (IsApp64bit) { return NewWinDsmExists; } - return true; - } - return IsOnMono && IsLinux; - } - } + public static bool IsSupported { get; private set; } static readonly IMemoryManager _defaultMemManager; diff --git a/NTwain/Triplets/Dsm.Linux.cs b/NTwain/Triplets/Dsm.Linux.cs index 9544603..2c86b3f 100644 --- a/NTwain/Triplets/Dsm.Linux.cs +++ b/NTwain/Triplets/Dsm.Linux.cs @@ -6,9 +6,11 @@ namespace NTwain.Triplets { static partial class Dsm { + internal const string LINUX_DSM_PATH = "/usr/local/lib/libtwaindsm.so"; + static partial class NativeMethods { - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -17,7 +19,7 @@ namespace NTwain.Triplets Message msg, ref IntPtr data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -26,7 +28,7 @@ namespace NTwain.Triplets Message msg, ref DataGroups data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -35,7 +37,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWAudioInfo data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -44,7 +46,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWCapability data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -53,7 +55,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWCustomDSData data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -62,7 +64,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWDeviceEvent data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -71,7 +73,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWCallback data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -80,7 +82,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWCallback2 data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -89,7 +91,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWEntryPoint data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -98,7 +100,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWEvent data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -107,7 +109,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWFileSystem data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, IntPtr zero, @@ -116,7 +118,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWIdentity data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -125,7 +127,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWPassThru data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -134,7 +136,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWPendingXfers data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -143,7 +145,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWSetupFileXfer data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -152,7 +154,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWSetupMemXfer data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -161,7 +163,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWStatusUtf8 data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -170,7 +172,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWUserInterface data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -179,7 +181,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWCieColor data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -188,7 +190,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWExtImageInfo data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -197,7 +199,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWFilter data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -206,7 +208,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWGrayResponse data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -215,7 +217,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWImageInfo data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -224,7 +226,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWImageLayout data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -233,7 +235,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWImageMemXfer data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -242,7 +244,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWJpegCompression data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -251,7 +253,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWPalette8 data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -260,7 +262,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWRgbResponse data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, @@ -269,7 +271,7 @@ namespace NTwain.Triplets Message msg, [In, Out]TWStatus data); - [DllImport("/usr/local/lib/libtwaindsm.so", EntryPoint = "DSM_Entry")] + [DllImport(LINUX_DSM_PATH, EntryPoint = "DSM_Entry")] public static extern ReturnCode DsmLinux( [In, Out]TWIdentity origin, [In, Out]TWIdentity destination, diff --git a/NTwain/Triplets/Dsm.cs b/NTwain/Triplets/Dsm.cs index fd4b863..3e6f09f 100644 --- a/NTwain/Triplets/Dsm.cs +++ b/NTwain/Triplets/Dsm.cs @@ -22,7 +22,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, dg, dat, msg, ref data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, dg, dat, msg, ref data); } else { return NativeMethods.DsmWinOld(origin, destination, dg, dat, msg, ref data); } } else if (Platform.IsLinux) @@ -42,7 +42,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, dg, dat, msg, ref data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, dg, dat, msg, ref data); } else { return NativeMethods.DsmWinOld(origin, destination, dg, dat, msg, ref data); } } else if (Platform.IsLinux) @@ -60,7 +60,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Audio, DataArgumentType.AudioInfo, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Audio, DataArgumentType.AudioInfo, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Audio, DataArgumentType.AudioInfo, msg, data); } } else if (Platform.IsLinux) @@ -80,7 +80,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, dat, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, dat, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, dat, msg, data); } } else if (Platform.IsLinux) @@ -99,7 +99,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.CustomDSData, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.CustomDSData, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.CustomDSData, msg, data); } } else if (Platform.IsLinux) @@ -118,7 +118,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.DeviceEvent, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.DeviceEvent, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.DeviceEvent, msg, data); } } else if (Platform.IsLinux) @@ -137,7 +137,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Callback, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Callback, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.Callback, msg, data); } } else if (Platform.IsLinux) @@ -156,7 +156,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Callback, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Callback, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.Callback, msg, data); } } else if (Platform.IsLinux) @@ -174,7 +174,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, null, DataGroups.Control, DataArgumentType.EntryPoint, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, null, DataGroups.Control, DataArgumentType.EntryPoint, msg, data); } else { return NativeMethods.DsmWinOld(origin, null, DataGroups.Control, DataArgumentType.EntryPoint, msg, data); } } else if (Platform.IsLinux) @@ -193,7 +193,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Event, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Event, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.Event, msg, data); } } else if (Platform.IsLinux) @@ -212,7 +212,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.FileSystem, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.FileSystem, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.FileSystem, msg, data); } } else if (Platform.IsLinux) @@ -229,7 +229,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, IntPtr.Zero, DataGroups.Control, DataArgumentType.Identity, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, IntPtr.Zero, DataGroups.Control, DataArgumentType.Identity, msg, data); } else { return NativeMethods.DsmWinOld(origin, IntPtr.Zero, DataGroups.Control, DataArgumentType.Identity, msg, data); } } else if (Platform.IsLinux) @@ -248,7 +248,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.PassThru, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.PassThru, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.PassThru, msg, data); } } else if (Platform.IsLinux) @@ -267,7 +267,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.PendingXfers, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.PendingXfers, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.PendingXfers, msg, data); } } else if (Platform.IsLinux) @@ -286,7 +286,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.SetupFileXfer, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.SetupFileXfer, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.SetupFileXfer, msg, data); } } else if (Platform.IsLinux) @@ -305,7 +305,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.SetupMemXfer, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.SetupMemXfer, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.SetupMemXfer, msg, data); } } else if (Platform.IsLinux) @@ -324,7 +324,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.StatusUtf8, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.StatusUtf8, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.StatusUtf8, msg, data); } } else if (Platform.IsLinux) @@ -343,7 +343,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.UserInterface, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.UserInterface, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.UserInterface, msg, data); } } else if (Platform.IsLinux) @@ -362,7 +362,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.CieColor, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.CieColor, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.CieColor, msg, data); } } else if (Platform.IsLinux) @@ -381,7 +381,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ExtImageInfo, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ExtImageInfo, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.ExtImageInfo, msg, data); } } else if (Platform.IsLinux) @@ -399,7 +399,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.Filter, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.Filter, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.Filter, msg, data); } } else if (Platform.IsLinux) @@ -417,7 +417,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.GrayResponse, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.GrayResponse, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.GrayResponse, msg, data); } } else if (Platform.IsLinux) @@ -436,7 +436,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ImageInfo, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ImageInfo, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.ImageInfo, msg, data); } } else if (Platform.IsLinux) @@ -455,7 +455,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ImageLayout, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ImageLayout, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.ImageLayout, msg, data); } } else if (Platform.IsLinux) @@ -474,7 +474,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ImageMemXfer, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.ImageMemXfer, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.ImageMemXfer, msg, data); } } else if (Platform.IsLinux) @@ -493,7 +493,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.JpegCompression, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.JpegCompression, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.JpegCompression, msg, data); } } else if (Platform.IsLinux) @@ -512,7 +512,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.Palette8, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.Palette8, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.Palette8, msg, data); } } else if (Platform.IsLinux) @@ -531,7 +531,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.RgbResponse, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Image, DataArgumentType.RgbResponse, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Image, DataArgumentType.RgbResponse, msg, data); } } else if (Platform.IsLinux) @@ -550,7 +550,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Status, msg, data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.Status, msg, data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.Status, msg, data); } } else if (Platform.IsLinux) @@ -570,7 +570,7 @@ namespace NTwain.Triplets { if (Platform.IsWin) { - if (Platform.UseNewDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, dat, msg, ref data); } + if (Platform.UseNewWinDSM) { return NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, dat, msg, ref data); } else { return NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, dat, msg, ref data); } } else if (Platform.IsLinux) diff --git a/NTwain/TwainSession.cs b/NTwain/TwainSession.cs index 0571ed2..d3e9c12 100644 --- a/NTwain/TwainSession.cs +++ b/NTwain/TwainSession.cs @@ -53,20 +53,19 @@ namespace NTwain TWUserInterface _twui; - static readonly Dictionary __ownedSources = new Dictionary(); + readonly Dictionary _ownedSources = new Dictionary(); - internal static TwainSource GetSourceInstance(ITwainSessionInternal session, TWIdentity sourceId) + TwainSource GetSourceInstance(ITwainSessionInternal session, TWIdentity sourceId) { TwainSource source = null; var key = string.Format(CultureInfo.InvariantCulture, "{0}|{1}|{2}", sourceId.Manufacturer, sourceId.ProductFamily, sourceId.ProductName); - if (__ownedSources.ContainsKey(key)) + if (_ownedSources.ContainsKey(key)) { - source = __ownedSources[key]; - source.Session = session; + source = _ownedSources[key]; } else { - __ownedSources[key] = source = new TwainSource(session, sourceId); + _ownedSources[key] = source = new TwainSource(session, sourceId); } return source; } diff --git a/NTwain/TwainSource.Caps.cs b/NTwain/TwainSource.Caps.cs index 3948aae..7b01ad1 100644 --- a/NTwain/TwainSource.Caps.cs +++ b/NTwain/TwainSource.Caps.cs @@ -18,7 +18,7 @@ namespace NTwain QuerySupport retVal = QuerySupport.None; using (TWCapability cap = new TWCapability(capId)) { - var rc = Session.DGControl.Capability.QuerySupport(cap); + var rc = _session.DGControl.Capability.QuerySupport(cap); if (rc == ReturnCode.Success) { var read = CapabilityReader.ReadValue(cap); @@ -41,7 +41,7 @@ namespace NTwain { using (TWCapability cap = new TWCapability(capId)) { - var rc = Session.DGControl.Capability.GetCurrent(cap); + var rc = _session.DGControl.Capability.GetCurrent(cap); if (rc == ReturnCode.Success) { var read = CapabilityReader.ReadValue(cap); @@ -82,7 +82,7 @@ namespace NTwain var list = new List(); using (TWCapability cap = new TWCapability(capabilityId)) { - var rc = Session.DGControl.Capability.Get(cap); + var rc = _session.DGControl.Capability.Get(cap); if (rc == ReturnCode.Success) { cap.ReadMultiCapValues(list); @@ -126,7 +126,7 @@ namespace NTwain { using (TWCapability compressCap = new TWCapability(CapabilityId.ICapCompression, new TWOneValue { Item = (uint)compression, ItemType = ItemType.UInt16 })) { - return Session.DGControl.Capability.Set(compressCap); + return _session.DGControl.Capability.Set(compressCap); } } @@ -153,7 +153,7 @@ namespace NTwain { using (TWCapability formatCap = new TWCapability(CapabilityId.ICapImageFileFormat, new TWOneValue { Item = (uint)format, ItemType = ItemType.UInt16 })) { - return Session.DGControl.Capability.Set(formatCap); + return _session.DGControl.Capability.Set(formatCap); } } @@ -183,7 +183,7 @@ namespace NTwain one.ItemType = ItemType.UInt16; using (TWCapability dx = new TWCapability(CapabilityId.ICapPixelType, one)) { - return Session.DGControl.Capability.Set(dx); + return _session.DGControl.Capability.Set(dx); } } @@ -223,7 +223,7 @@ namespace NTwain one.ItemType = ItemType.UInt16; using (TWCapability dx = new TWCapability(CapabilityId.ICapXferMech, one)) { - return Session.DGControl.Capability.Set(dx); + return _session.DGControl.Capability.Set(dx); } } @@ -239,7 +239,7 @@ namespace NTwain one.ItemType = ItemType.UInt16; using (TWCapability dx = new TWCapability(CapabilityId.ACapXferMech, one)) { - return Session.DGControl.Capability.Set(dx); + return _session.DGControl.Capability.Set(dx); } } @@ -282,13 +282,13 @@ namespace NTwain using (TWCapability xres = new TWCapability(CapabilityId.ICapXResolution, one)) { - var rc = Session.DGControl.Capability.Set(xres); + var rc = _session.DGControl.Capability.Set(xres); if (rc == ReturnCode.Success) { one.Item = (uint)yDPI; using (TWCapability yres = new TWCapability(CapabilityId.ICapYResolution, one)) { - rc = Session.DGControl.Capability.Set(yres); + rc = _session.DGControl.Capability.Set(yres); } } return rc; @@ -322,7 +322,7 @@ namespace NTwain using (TWCapability xres = new TWCapability(CapabilityId.ICapSupportedSizes, one)) { - var rc = Session.DGControl.Capability.Set(xres); + var rc = _session.DGControl.Capability.Set(xres); return rc; } } @@ -351,7 +351,7 @@ namespace NTwain using (TWCapability dx = new TWCapability(CapabilityId.ICapAutomaticDeskew, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } } else @@ -362,7 +362,7 @@ namespace NTwain using (TWCapability capValue = new TWCapability(CapabilityId.ICapAutomaticDeskew, one)) { - rc = Session.DGControl.Capability.Set(capValue); + rc = _session.DGControl.Capability.Set(capValue); } } } @@ -389,7 +389,7 @@ namespace NTwain using (TWCapability dx = new TWCapability(CapabilityId.ICapAutomaticRotate, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } } else @@ -400,7 +400,7 @@ namespace NTwain using (TWCapability capValue = new TWCapability(CapabilityId.ICapAutomaticRotate, one)) { - rc = Session.DGControl.Capability.Set(capValue); + rc = _session.DGControl.Capability.Set(capValue); } } } @@ -428,11 +428,11 @@ namespace NTwain using (TWCapability dx = new TWCapability(CapabilityId.ICapUndefinedImageSize, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } using (TWCapability dx = new TWCapability(CapabilityId.ICapAutomaticBorderDetection, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } } else @@ -443,11 +443,11 @@ namespace NTwain using (TWCapability capValue = new TWCapability(CapabilityId.ICapUndefinedImageSize, one)) { - rc = Session.DGControl.Capability.Set(capValue); + rc = _session.DGControl.Capability.Set(capValue); } using (TWCapability capValue = new TWCapability(CapabilityId.ICapAutomaticBorderDetection, one)) { - rc = Session.DGControl.Capability.Set(capValue); + rc = _session.DGControl.Capability.Set(capValue); } } } @@ -471,7 +471,7 @@ namespace NTwain using (TWCapability dx = new TWCapability(CapabilityId.CapDuplexEnabled, en)) { - return Session.DGControl.Capability.Set(dx); + return _session.DGControl.Capability.Set(dx); } } else @@ -482,7 +482,7 @@ namespace NTwain using (TWCapability dx = new TWCapability(CapabilityId.CapDuplexEnabled, one)) { - return Session.DGControl.Capability.Set(dx); + return _session.DGControl.Capability.Set(dx); } } } @@ -512,7 +512,7 @@ namespace NTwain { using (TWCapability dx = new TWCapability(CapabilityId.CapFeederEnabled, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } } @@ -522,14 +522,14 @@ namespace NTwain { using (TWCapability dx = new TWCapability(CapabilityId.CapAutoScan, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } } else if (SupportedCaps.Contains(CapabilityId.CapAutoFeed)) { using (TWCapability dx = new TWCapability(CapabilityId.CapAutoFeed, en)) { - rc = Session.DGControl.Capability.Set(dx); + rc = _session.DGControl.Capability.Set(dx); } } } @@ -543,7 +543,7 @@ namespace NTwain { using (TWCapability enabled = new TWCapability(CapabilityId.CapFeederEnabled, one)) { - rc = Session.DGControl.Capability.Set(enabled); + rc = _session.DGControl.Capability.Set(enabled); } } // to really use feeder we must also set autofeed or autoscan, but only @@ -552,14 +552,14 @@ namespace NTwain { using (TWCapability autoScan = new TWCapability(CapabilityId.CapAutoScan, one)) { - rc = Session.DGControl.Capability.Set(autoScan); + rc = _session.DGControl.Capability.Set(autoScan); } } else if (SupportedCaps.Contains(CapabilityId.CapAutoFeed)) { using (TWCapability autoScan = new TWCapability(CapabilityId.CapAutoFeed, one)) { - rc = Session.DGControl.Capability.Set(autoScan); + rc = _session.DGControl.Capability.Set(autoScan); } } } diff --git a/NTwain/TwainSource.cs b/NTwain/TwainSource.cs index eb064f6..05ab8cf 100644 --- a/NTwain/TwainSource.cs +++ b/NTwain/TwainSource.cs @@ -17,11 +17,11 @@ namespace NTwain /// public partial class TwainSource { - internal ITwainSessionInternal Session { get; set; } + ITwainSessionInternal _session; internal TwainSource(ITwainSessionInternal session, TWIdentity sourceId) { - Session = session; + _session = session; Identity = sourceId; } @@ -32,11 +32,11 @@ namespace NTwain public ReturnCode Open() { var rc = ReturnCode.Failure; - Session.MessageLoopHook.Invoke(() => + _session.MessageLoopHook.Invoke(() => { Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: OpenSource.", Thread.CurrentThread.ManagedThreadId)); - rc = Session.DGControl.Identity.OpenDS(this); + rc = _session.DGControl.Identity.OpenDS(this); }); return rc; } @@ -48,11 +48,11 @@ namespace NTwain public ReturnCode Close() { var rc = ReturnCode.Failure; - Session.MessageLoopHook.Invoke(() => + _session.MessageLoopHook.Invoke(() => { Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: CloseSource.", Thread.CurrentThread.ManagedThreadId)); - rc = Session.DGControl.Identity.CloseDS(); + rc = _session.DGControl.Identity.CloseDS(); if (rc == ReturnCode.Success) { SupportedCaps = null; @@ -71,7 +71,7 @@ namespace NTwain /// public ReturnCode StartTransfer(SourceEnableMode mode, bool modal, IntPtr windowHandle) { - return Session.EnableSource(mode, modal, windowHandle); + return _session.EnableSource(mode, modal, windowHandle); } /// @@ -81,7 +81,7 @@ namespace NTwain public TWStatus GetStatus() { TWStatus stat; - Session.DGControl.Status.GetSource(out stat); + _session.DGControl.Status.GetSource(out stat); return stat; } /// @@ -91,7 +91,7 @@ namespace NTwain public TWStatusUtf8 GetStatusUtf8() { TWStatusUtf8 stat; - Session.DGControl.StatusUtf8.GetSource(out stat); + _session.DGControl.StatusUtf8.GetSource(out stat); return stat; } @@ -170,7 +170,7 @@ namespace NTwain { get { - if (_supportedCaps == null && Session.State > 3) + if (_supportedCaps == null && _session.State > 3) { _supportedCaps = CapGetValues(CapabilityId.CapSupportedCaps).CastToEnum(false); } @@ -191,7 +191,7 @@ namespace NTwain { get { - return Session.DGControl; + return _session.DGControl; } } @@ -202,7 +202,7 @@ namespace NTwain { get { - return Session.DGImage; + return _session.DGImage; } } @@ -213,7 +213,7 @@ namespace NTwain { get { - return Session.DGCustom; + return _session.DGCustom; } } diff --git a/Tests/Tester.WPF/Tester.WPF.csproj b/Tests/Tester.WPF/Tester.WPF.csproj index 54e4e0b..9cf2650 100644 --- a/Tests/Tester.WPF/Tester.WPF.csproj +++ b/Tests/Tester.WPF/Tester.WPF.csproj @@ -42,26 +42,27 @@ False - ..\..\packages\CommonWin32.2.0.5.2\lib\net35-Client\CommonWin32.dll + ..\..\packages\CommonWin32.2.0.5.4\lib\net35-Client\CommonWin32.dll - - ..\..\packages\MvvmLightLibs.4.3.31.1\lib\net40\GalaSoft.MvvmLight.Extras.WPF4.dll + + ..\..\packages\MvvmLightLibs.4.4.32.1\lib\net40\GalaSoft.MvvmLight.dll - - ..\..\packages\MvvmLightLibs.4.3.31.1\lib\net40\GalaSoft.MvvmLight.WPF4.dll + + ..\..\packages\MvvmLightLibs.4.4.32.1\lib\net40\GalaSoft.MvvmLight.Extras.dll - - ..\..\packages\CommonServiceLocator.1.2\lib\portable-windows8+net40+sl5+windowsphone8\Microsoft.Practices.ServiceLocation.dll + + False + ..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll False - ..\..\packages\ModernWPF.1.1.43\lib\net40-Client\ModernWPF.dll + ..\..\packages\ModernWPF.1.1.45.2\lib\net40-Client\ModernWPF.dll - ..\..\packages\MvvmLightLibs.4.3.31.1\lib\net40\System.Windows.Interactivity.dll + ..\..\packages\MvvmLightLibs.4.4.32.1\lib\net40\System.Windows.Interactivity.dll diff --git a/Tests/Tester.WPF/packages.config b/Tests/Tester.WPF/packages.config index 4a2945a..5218de2 100644 --- a/Tests/Tester.WPF/packages.config +++ b/Tests/Tester.WPF/packages.config @@ -1,7 +1,7 @@  - - - - + + + + \ No newline at end of file diff --git a/Tests/Tester.Winform/Tester.Winform.csproj b/Tests/Tester.Winform/Tester.Winform.csproj index 1d675d7..0732ea1 100644 --- a/Tests/Tester.Winform/Tester.Winform.csproj +++ b/Tests/Tester.Winform/Tester.Winform.csproj @@ -37,7 +37,7 @@ False - ..\..\packages\CommonWin32.2.0.5.2\lib\net35-Client\CommonWin32.dll + ..\..\packages\CommonWin32.2.0.5.4\lib\net35-Client\CommonWin32.dll diff --git a/Tests/Tester.Winform/packages.config b/Tests/Tester.Winform/packages.config index bdeda9a..e978129 100644 --- a/Tests/Tester.Winform/packages.config +++ b/Tests/Tester.Winform/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file