ABCUpload is an ActiveX component that allows you to upload files from a web browser to your IIS web server.
Originally released in 2001, ABCUpload was designed for Classic ASP. While Classic ASP is now somewhat of a niche industry, the product was incredibly popular and even now, more than two decades later, it is still in demand.
ABCUpload contains a number of features that set it apart from the herd. Our Pure HTML Progress Bar¢â allows your visitors to see the progress of their upload in real time with absolutely no client side software.
Complex Language Support We are Unicode compliant to support languages like Japanese and Korean. The Internet is international. You are as likely to get uploads from people in Japan as you are from people in the United States. Different countries use different character systems and your upload component has to be able to handle both Japanese and English characters. ABCUpload handles all this for you transparently via Unicode support. For example a visitor uploads a file with a Japanese name - all the file details will arrive intact. You can decide whether you want to convert the name into something more URL friendly or if you want to use the Japanese name (or a derivation of it). But of course ABCUpload is not specific to Japanese. Unicode covers every character system in the world.
MacBinary compatible ABCUpload is 120% MacBinary compatible to allow perfect uploads from Macintosh as well as Windows and UNIX browsers. So what is MacBinary and why is important? You have to handle MacBinary to allow uploads from most Macintosh browsers. Many other upload components claim to be able to support MacBinary but their support consists of stripping out what they consider relevant and then throwing away everything else. So how come we are 120% MacBinary compatible? Well we are the only people to use all the information available. If you upload a Macintosh file to a server running Services for Macintosh (SFM) your Mac file will appear just like it left your client - icons, previews and file name completely intact. We are the only people to do this so we gave ourselves an extra 10%. Additionally while we were doing this we discovered that Internet Explorer sometimes incorrectly codes the MacBinary so we had to read the incorrect file. As this happens about 10% of the time we gave ourselves another 10%. ABCUpload - 120% MacBinary compatible. So let's be more specific... Macintosh files are different from Windows or Unix files in three main ways: 1. Every file consists of two separate streams or forks. The data fork holds the basic file information that you would find in a Windows file. The resource fork contains a database of other associated information such as picture previews, notes and icons. So a BMP image might contain the BMP in the data fork and a icon, preview and copyright note in the resource fork. 2. Macintosh files do not contain a file type extension. Instead they have a hidden type and creator code. 3. Macintosh file names can contain almost any character except for the colon character. This means that it is common to have Macintosh files containing slashes, question marks and asterisks. When Internet Explorer uploads a file from a Macintosh it chooses to put all this information together into one big stream encoded as MacBinary. You can just rip out the data fork and this is what most MacBinary compatible upload components do. However if you do this you loose all sense of what type of file was uploaded (remember it won't have a file name extension) and any other associated information. In particular some types of files such as EPSFs and QuickTime movies can be completely destroyed by this process. At a basic level we use the creator and type properties to infer the file type. Then we took this one step further. Microsoft has given us the ability to handle this kind of file completely correctly. So if you use ABCUpload to save a MacBinary file to an NTFS formatted disk you can maintain complete integrity of data fork, resource fork, file type and creator. If you look at such a file from Windows it will look like a standard file (e.g. JPEG, DOC etc.) but if you serve this file to Macintosh users using Services for Macintosh (SFM) they will see the original file completely intact.
Compatible with Existing Code Our Form object is based on the Microsoft Form object for maximal compatibility with your existing code. More¡¦ When we started designing ABCUpload we didn't want to forget that file upload is just another form operation. Microsoft should have supported file upload within their standard Form object. Given that they didn't, our replacement should be as similar as possible to the original, just adding in new file fields in a sensible way. We've been very fussy about this issue because often it's the smallest differences that lead to confusion. There are some surprisingly complicated parts to these seemingly simple objects and many developers cut corners. So our XForm object is designed to be used in exactly the same way as a standard Request.Form object. Any code you write to access fields within a standard form should transfer directly to accessing fields within a multipart form. Obviously we've had to add some extra functionality to allow special file operations but this is added functionality and doesn't affect the basic operations in any way. The upshot of this is that it is easy to learn how to use ABCUpload. You can move between standard forms and upload forms with minimal changes in code. For example the following code writes out the contents of all the fields in a form using the standard Microsoft Form object.
ABCUpload is supported on Windows 7, Windows Vista, Windows XP, Windows 2008, Windows 2003 and Windows 2000.