From 0ad1a72bba477d0fb98f393585b229a91016b9d2 Mon Sep 17 00:00:00 2001 From: soukoku Date: Mon, 29 Dec 2014 18:07:34 -0500 Subject: [PATCH] Fixed #30 version check logic. --- NTwain/Properties/VersionInfo.cs | 2 +- NTwain/TwainSessionInternal.cs | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/NTwain/Properties/VersionInfo.cs b/NTwain/Properties/VersionInfo.cs index 6f7a16f..85781ea 100644 --- a/NTwain/Properties/VersionInfo.cs +++ b/NTwain/Properties/VersionInfo.cs @@ -23,7 +23,7 @@ namespace NTwain /// /// The build release version number. /// - public const string Build = "3.2.3"; // change this for each nuget release + public const string Build = "3.2.4"; // change this for each nuget release } diff --git a/NTwain/TwainSessionInternal.cs b/NTwain/TwainSessionInternal.cs index 2b5ee2e..91ba38e 100644 --- a/NTwain/TwainSessionInternal.cs +++ b/NTwain/TwainSessionInternal.cs @@ -122,8 +122,8 @@ namespace NTwain { Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: EnableSource with {1}.", Thread.CurrentThread.ManagedThreadId, mode)); - // app v2.2 or higher uses callback2 - if (_appId.ProtocolMajor >= 2 && _appId.ProtocolMinor >= 2) + // per the spec (8-10) app v2.2 or higher uses callback2 + if (_appId.ProtocolMajor > 2 || (_appId.ProtocolMajor >= 2 && _appId.ProtocolMinor >= 2)) { var cb = new TWCallback2(HandleCallback); var rc2 = ((ITwainSessionInternal)this).DGControl.Callback2.RegisterCallback(cb); @@ -136,6 +136,7 @@ namespace NTwain } else { + // all else try old callback var cb = new TWCallback(HandleCallback); var rc2 = ((ITwainSessionInternal)this).DGControl.Callback.RegisterCallback(cb);