BotDetect ASP.NET CAPTCHA Deployment Packages

The BotDetect ASP.NET Captcha component is distributed as a .msi installation package. Both the free version available at the download page and the paid version available for purchase are packaged, used and deployed in the same way.

BotDetect ASP.NET CAPTCHA Installation Package Contents

The BotDetect ASP.NET Captcha installation package supports .NET framework versions 2.0 or newer, and all versions of IIS since 5.0 (included with Windows 2000).

By default, the BotDetect ASP.NET Captcha installs to c:\Program Files (x86)\Captcha Inc\BotDetect 4 CAPTCHA Component\Asp.Net\

The installation detects installed .NET framework versions and allows you to select which related BotDetect files will be installed. .NET framework version-specific files are kept in the v2.0, v3.5, v4.0, v4.5, etc. installation subfolders (refered to as <DOTNETVERSION> in further text).

The BotDetectSounds installation subfolder contains the default audio Captcha pronunciation packages.

The <DOTNETVERSION>\Config installation subfolder contains example configuration files for global BotDetect deployment.

The <DOTNETVERSION>\WebApp installation subfolder contains BotDetect ASP.NET code examples.

The <DOTNETVERSION>\Troubleshooting installation subfolder contains files used for BotDetect built-in troubleshooting.

BotDetect ASP.NET CAPTCHA Assembly Deployment

BotDetect Captcha functionality is implemented in .NET assemblies you can simply reference in your .NET applications. It's simplest to keep a copy of the BotDetect assemblies in your application's Bin folder, and deploy them with your application.

Basic Captcha functionality and the ASP.NET WebForms Captcha control are kept in the <DOTNETVERSION>\BotDetect.dll assembly. When adding Captcha protection to ASP.NET WebForms applications, this is the only assembly you need to reference and deploy.

ASP.NET MVC Captcha classes are kept in the <DOTNETVERSION>\BotDetect.Web.UI.Mvc.dll assembly. They are kept in this separate assembly to avoid introducing ASP.NET MVC references to non-MVC applications. When adding Captcha protection to ASP.NET MVC applications, you need to reference and deploy both the base BotDetect assembly and the specialized ASP.NET MVC Captcha assembly.

While application-specific Bin-deployment is the simplest option, it is also possible to use BotDetect from the GAC and share it between all applications on the server. This option is explained in the BotDetect ASP.NET Captcha global deployment how to guide.

BotDetect SharePoint Captcha Feature Deployment

We have created the BotDetect SharePoint CAPTCHA Feature, built upon the BotDetect ASP.NET Captcha Control which prevents automated submissions of ASP.NET forms using Captcha images.

This feature comes with a functional SharePoint Captcha field that enables SharePoint administrators and power users to easily add Captcha functionality to their forms for a SharePoint list.

You might also be interested in some additional SharePoint related BotDetect Captcha downloads: a basic example with our SharePoint Captcha Feature used in SharePoint 2013 WebPart which displays a Captcha test and checks that user input matches the displayed Captcha code. There is an equivalent example with our SharePoint Captcha Feature used in SharePoint 2010 WebPart.

BotDetect ASP.NETCAPTCHA Audio Localizations Deployment

BotDetect supports easy Captcha localization, but localized Captcha audio requires language-specific pronunciation sounds distributed as .bdsp files. The BotDetectSounds installation subfolder contains these files for North American locales, while pronunciation files for other locales can be downloaded from the Captcha localizations page.

Deploying these localized pronunciation files is as easy as copying the downloaded .bdsp files for the locales you want to support to the bin\BotDetectSounds subfolder of your application.

You can also use a different folder to keep .bdsp files (for example, deploy the pronunciation files once and share them between all applications running on the same server). You just have to specify the desired location in the BotDetect web.config section, and make sure it can be read by the IIS worker process running your application.

BotDetect ASP.NET CAPTCHA Code Examples Deployment

The BotDetect ASP.NET Captcha installation package also gives you the option to install a number of Captcha ASP.NET code examples for each .NET framework version. If IIS is enabled on the development machine, the examples will automatically be deployed and will be accessible from the BotDetect Start Menu folder (Start -> Programs -> Captcha Inc -> BotDetect 4 CAPTCHA Component -> ASP.NET -> ASP.NET <DOTNETVERSION> Examples -> Run .NET <DOTNETVERSION> Examples).

The BotDetect demos allow you to experiment with BotDetect options, while the code examples contain ASP.NET Captcha example code which might be useful when adding and configuring BotDetect Captcha protection on your ASP.NET forms.

Typically, you will only deploy the BotDetect examples on your development machines, and skip them when installing BotDetect on your servers.

Deploying BotDetect ASP.NET CAPTCHA Updates

When updating BotDetect to a newer version, you have to copy the new BotDetect assemblies to your application. Depending on which type of ASP.NET project does your application use, you might need to update project references as well. For example, Web Site projects will automatically be recompiled when you place the new assemblies in their Bin folder, while Web Application projects will require manual re-compilation and re-deployment with the new assemblies.

If you use BotDetect from the GAC or have registered any BotDetect elements (such as the BotDetect config section) using fully-qualified names, you should also update the assembly version number to reflect the changes.

New Captcha assemblies are usually in-place replacements of the old ones, as far as your application source is concerned. If there are any version-specific instructions you should be aware of, they will be listed in the BotDetect ASP.NET migration guide along with the new version release notes.