Fixed a bug causing errors when using the 'Sql' and 'StateServer' Session State modes (marked the CaptchaCode class as Serializable)
Improved control extensibility (changed useful Captcha class fields and methods from private to protected)
Improved all samples to also work with disabled cookies (.NET 2.0 version only)
Added basic MS ASP.NET 2.0 Ajax Extensions samples (C# and VB.NET) to the installation (.NET 2.0 version only)
Added the 'log4net.dll' assembly to the 'Troubleshooting' installation folder, which was omitted by error in the previous release (.NET 1.1 version only)
Added "Reload CAPTCHA" button support (allowing users to request a new CAPTCHA code if the current one is unreadable), and the related ReloadEnabled property
Added ASP.NET Ajax built-in compatibility, allowing the "out of the box" Captcha control to validate inside an UpdatePanel
Added built-in SharePoint support (previous versions required source code modifications)
Added support for CAPTCHA image and sound request extension customization via web.config settings
Added a static variant of the Validate() method, allowing easier integration with various Ajax and MVC frameworks
Rewrote the Captcha control rendering code to produce smaller, semantic, XHTML 1.1 Strict compliant markup
Added 3 new Captcha control properties: SoundIconAltText, ReloadIconAltText and CaptchaImageAltText, allowing HTML output string customization
Improved handling of invalid CAPTCHA requests sent by some bots (with &-style constructs in the querystring)
Fixed a bug with the sample projects not performing CAPTCHA validation in IE 6.0 & 7.0 when typing in the CAPTCHA code and pressing Enter
Improved the usability of all samples by automatically lowercasing the CAPTCHA code input while typing
Added a "Simulate Error" button and related instructions to the Troubleshooting sample CAPTCHA projects
Packaged the updated version of the web.config file with the MS Ajax samples, allowing .NET 3.5 machines to use them without running the Visual Studio 2008 Conversion Wizard
Fixed a bug with the CAPTCHA randomization being bypassed when clicking the Reload CAPTCHA button, or for other direct CAPTCHA image requests
Fixed a bug with the sequential Reload CAPTCHA button clicks appending new values to the querystring instead of replacing the existing one
Fixed a bug with the CAPTCHA stylesheet not resetting link styles for the Reload and Sound CAPTCHA buttons, causing layout problems if the page link style includes padding etc.
Fixed a bug with the CAPTCHA validation always failing if the .aspx form path includes spaces or other Url-encoded characters
Fixed a client-side script include bug occurring when a Captcha control is placed inside a MultiView control which is inside an ASP.NET Ajax UpdatePanel
Added support for CAPTCHA image and sound request full path customization (instead of just the extension) via web.config settings
Improved handling of invalid CAPTCHA requests sent by some bots (repeated CAPTCHA image or sound requests with expired parameters)
Vista / Windows 2008 Server support (fixed a bug causing the component to crash on those OSes)
Added a separate version of the BotDetect ASP component setup for 64-bit (x64) machines
Added a CAPTCHA Reload button (allowing users to request a new CAPTCHA code if the current one is unreadable) to all of the sample ASP projects; removed the BotDetect Refresh Demo ASP sample project (since it is superseded by the Reload button functionality)
Added Ajax CAPTCHA validation support to the LanapBotDetectHandler.asp file, and a new ASP sample project demonstrating Ajax CAPTCHA validation (CAPTCHA Ajax Validation Sample)
LanapBotDetectHandler.asp general refactoring & cleanup: added support for multiple CAPTCHAs in the same ASP application, better variable names, more comments, better invalid request processing
Fixed a bug in the CAPTCHA randomization ASP sample, where reloading the CAPTCHA image without reloading the whole page bypasses the randomization
Changed CAPTCHA validation code in all ASP sample projects (to directly compare the user input to the Session state value), while keeping backwards compatibility with older code (comparing the code hashed values)
General refactoring & cleanup of all ASP sample CAPTCHA projects: improved usability by automatically lowercasing the CAPTCHA code input while typing, XHTML Transitional compliant code, CAPTCHA layout definitions moved to a separate CSS stylesheet, fixed some field name inconsistencies; moved all ASP sample CAPTCHA project to separate subfolders in the installation folder
Installation cleanup: removed the Component folder from the setup, all binaries are now kept exclusively in the Redistribute folder; the gdiplus.dll redistributable is now only installed for Windows 2000 users; replaced the outdated offline help with a link to the online documentation
Fixed a bug with the audio CAPTCHA not playing in IE when using SSL
Fixed a bug with the audio CAPTCHA not playing in Opera 9.5
Fixed a bug with the CAPTCHA image not displaying when the IIS virtual folder name contains spaces
Fixed a bug with the CAPTCHA validation always returning false for all validation attempts after the first one when placed inside a Telerik RadAjaxPanel
Fixed a bug with the sample projects not displaying the CAPTCHA image when using IIS 7.0 Integrated Mode
Added ASP.NET MVC Beta support and ASP.NET MVC Beta CAPTCHA code samples (C# BotDetect ASP.NET MVC Demo and VB.NET BotDetect ASP.NET MVC Demo)
Fixed a bug with the PreDrawCaptchaImage handler being re-registered and executed multiple times (the number cumulatively increasing for every page load)
Fixed a bug with multiple randomized CAPTCHA controls in the application all using the last registered PreDrawCaptchaImage handler instead of the appropriate one
Fixed a bug with the CAPTCHA CodeLength and CodeType not being randomized on the first page load
Fixed a bug with the CAPTCHA validation failing when there is an ASP.NET Ajax UpdatePanel on the page, but the Captcha control is not within it
Fixed a bug with the CAPTCHA sound and reload buttons not being focusable using the keyboard
Fixed a bug with the audio CAPTCHA not playing in IE when using SSL offloading (added client-side SSL detection)
Fixed a bug with the CustomSessionIDManager exposing the ASP.NET SessionID in plaintext
Fixed a bug with multiple CAPTCHA control instances on the same page and CAPTCHA CSS declarations (changed all BotDetect CSS declarations to use CSS classes instead of ids)
Fixed a bug with the CAPTCHA Troubleshooting code samples not registering the ErrorTrackingModule when using IIS 7.0 Integrated Mode
Added a missing </div> to the ASP.NET Ajax CAPTCHA code samples
Fixed a bug with CAPTCHA validation failing inside UpdatePanel variants in Telerik and other non-Microsoft Ajax frameworks
Fixed a bug with CAPTCHA client-side scripts not working when the Captcha control is not visible on the first page load, but gets added after a partial postback
Fixed a bug causing key conflicts with applications or other components using Rick Strahl's ClientScriptProxy
Fixed a bug allowing direct access to sound CAPTCHAs even if the Captcha.SoundEnabled property is set to false
Fixed a bug with the BotDetect layout stylesheet not overriding other, possibly conflicting CSS declarations included on the page
Improved validation of CAPTCHA image and sound request querystring parameters, rejecting a wider variety of automated requests sent by some bots
Improved the BotDetect Troubleshooting utility and sample projects, allowing users to also log all CAPTCHA validation attempts
Improved usability of the progress indicator for CAPTCHA image reloading, using a locale-independent animation
Improved flexibility of CAPTCHA image reloading by adding custom PreReloadCaptchaImage and PostReloadCaptchaImage client-side events that can be handled by user code
Improved usability of all BotDetect sample projects by automatically clearing the CAPTCHA code user input after clicking the Reload CAPTCHA button
Improved the ASP.NET MVC CAPTCHA sample projects, using a custom ActionFilterAttribute for CAPTCHA validation
Separated ASP.NET Ajax sample projects for .NET Framework versions 2.0 and 3.5
Marked the Lanap.BotDetect.dll assembly as CLS-Compliant
Fixed a bug with the CAPTCHA image failing to render on some servers even when the CaptchaHandler is properly registered
Fixed a bug with the Captcha control breaking on shared servers (running in Medium Trust)
Fixed a bug with the CAPTCHA event registration occasionally throwing "key already exists" exceptions during concurrent page access (implemented proper global event locking)
Fixed a bug with the CAPTCHA Troubleshooting code samples not working properly on IIS 7.5 / Windows Server 2008 R2 and Windows 7 (the InstallSamples.bat script now also grants log file write access to the appropriate ApplicationPoolIdentity user)
Added a X-Robots-Tag Http header to CAPTCHA image and sound Http responses that prevents search engine indexing of CAPTCHA images and sounds
Improved handling of invalid CAPTCHA Http requests (basic problem identification)
Added multi-language Captcha code generation & validation, supporting various Unicode character sets and RTL languages (charsets: Latin, Cyrillic, Greek, Hebrew, Arabic, Devanagari, Han Simplified, Han Traditional, Hangul, Bopomofo, Hiragana and Katakana)
Added Captcha code character set customization options, using a user-defined character set for random Captcha code generation
Added Captcha code filtering, allowing randomly generated Captcha codes to be checked against a user-defined list of banned character sequences
Added Captcha code timeouts, so the Captcha can only be successfully solved within the specified time period after generation
Added test mode support for automated testing scenarios, exposing a configuration switch that causes 100% of Captcha codes generated to be "TEST"
Improved Captcha image security against bots (added more segmentation challenges and randomness to all 50 BotDetect Captcha image styles)
Improved Captcha image readability for humans (the text is larger, visual appearance is improved, there are less distortion challenges in all image styles)
Added Captcha image color scheme customization options, where two user-defined colors can be used to adjust the Captcha color scheme to suit any website design
Improved Captcha sound security, using 10 different sound styles with various effects, noises and randomizations (sound styles: Dispatch, HiveMind, Industrial, Pulse, Radio, RedAlert, Robot, Scratched, Synth, Workshop)
Added multi-language Captcha sound generation, using individual language sound packages downloadable separately from the main control
Improved Captcha sound compatibility, automatically using the HTML5 element in supporting browsers
Added a new sound format option (WavPcm8bit8kHzMono), resulting in smaller sound file downloads but reducing sound quality
HTML improvements: added customizable Captcha image, sound and reload titles, icons and urls; added automatic Captcha icon scaling to match the Captcha image height; improved client script and stylesheet include robustness
Client-side improvements: added customizable automatic user input lowercasing, textbox focusing on reload and sound Captcha icon clicks, automatic image reloading on Captcha code timeouts, and built-it Ajax validation support
Configuration improvement: added a custom configuration section, allowing detailed BotDetect customization using web.config settings
Persistence improvements: added a Session issue troubleshooting helper
Added multi-language Captcha code generation & validation, supporting various Unicode character sets and RTL languages (charsets: Latin, Cyrillic, Greek, Hebrew, Arabic, Devanagari, Han Simplified, Han Traditional, Hangul, Bopomofo, Hiragana and Katakana)
Added Captcha code character set customization options, using a user-defined character set for random Captcha code generation
Added Captcha code filtering, allowing randomly generated Captcha codes to be checked against a user-defined list of banned character sequences
Added Captcha code timeouts, so the Captcha can only be successfully solved within the specified time period after generation
Improved Captcha image security against bots (added more segmentation challenges and randomness to all 50 BotDetect Captcha image styles)
Improved Captcha image readability for humans (the text is larger, visual appearance is improved, there are less distortion challenges in all image styles)
Added Captcha image color scheme customization options, where two user-defined colors can be used to adjust the Captcha color scheme to suit any website design
Improved Captcha sound security, using 10 different sound styles with various effects, noises and randomizations (sound styles: Dispatch, HiveMind, Industrial, Pulse, Radio, RedAlert, Robot, Scratched, Synth, Workshop)
Added multi-language Captcha sound generation, using individual language sound packages downloadable separately from the main control
Improved Captcha sound compatibility, automatically using the HTML5 element in supporting browsers
Added a new sound format option (WavPcm8bit8kHzMono), resulting in smaller sound file downloads but reducing sound quality
ASP improvements: added an include-able ASP Captcha library / module, significantly simplifying BotDetect integration (instead of copying the old LanapBotDetectHandler.asp file and pasting a large chunk of HTML to your form source)
Configuration improvement: added a special BotDetect\CaptchaConfig.asp configuration file, allowing detailed customization of many BotDetect properties
Client-side improvements: added customizable automatic user input lowercasing, textbox focusing on reload and sound Captcha icon clicks, and automatic image reloading on Captcha code timeouts,
Fixed a bug with Captcha validation breaking when the same form is simultaneously open in multiple browser tabs (each Captcha instance now uses a unique key to store the Captcha code)
Added a X-Robots-Tag Http header to CAPTCHA image and sound Http responses that prevents search engine indexing of CAPTCHA images and sounds
Added new sample projects (Captcha protection on login forms, Captcha protection on multiple forms in the same application, Captcha code filtering option, Captcha customization options) and demonstration forms (BotDetect image styles demo) demonstrating new v3.0 functionality
Improved all web application descriptions, navigation and IIS compatibility
Requirements change: the COM Captcha component is based on .NET, instead of unmanaged C++
Added binary package downloads for machines where running the setup package is not feasible
fixed a bug in the BotDetect client-side script include: the BotDetect.Init() function is now only called when the Captcha image is actually rendered on the page
fixed a bug in BotDetect audio processing code involving Math.Abs(-32768) edge case exceptions
updated BotDetect pronunciation sound packages for Canadian French and Mexican Spanish
updated default Latin character set definitions to reduce chance of character confusion with the 3.0 drawing changes (removed 'F' sometimes confused with 'E', 'G' confused with 'C', 'Q' confused with 'O', 'Z' confused with '2' and '7' confused with '1')
updated locale-specific default character set variants: removed 'W' and 'Z' for the Vietnamese locale
added a link to the BotDetect localization downloads page in the BotDetect Start Menu folder
fixed a bug in the BotDetect client-side script include: the BotDetect.Init() function is now only called when the Captcha image is actually rendered on the page
fixed a bug in BotDetect audio processing code involving Math.Abs(-32768) edge case exceptions
updated BotDetect pronunciation sound packages for Canadian French and Mexican Spanish
updated default Latin character set definitions to reduce chance of character confusion with the 3.0 drawing changes (removed 'F' sometimes confused with 'E', 'G' confused with 'C', 'Q' confused with 'O', 'Z' confused with '2' and '7' confused with '1')
updated locale-specific default character set variants: removed 'W' and 'Z' for the Vietnamese locale
added a link to the BotDetect localization downloads page in the BotDetect Start Menu folder
fixed a bug with the Captcha code generation occasionally using less than the full available character set for random code generation
fixed a bug in the BotDetect Sound Package processing code, which was incorrectly naming .bdsp files for locales with only the macrolanguage set
improved sound Captcha clarity when using various newly available localized pronunciations: tweaked the Radio, Robot and Synth sound generation algorithms
updated the default Cyrillic character set definition to reduce chance of character confusion: removed 'З' (Ze) and '3' (three) from alphanumeric Captcha codes