Installing FileUp for ASP.NET



Upgrading to a New Version of FileUp

If you are upgrading to a new version of FileUp, before installing the new version, remove the old version.


Automatic Installation

To run the automatic installation, double-click FileUp.exe, and follow the InstallShield instructions.


Manual Installation: Installing FileUp at the Application Level

To install FileUp the first time, run the automatic installation. Once InstallShield has unpacked the dll files that contain FileUp, you can re-install FileUp manually (if, for example, you are moving FileUp to a different server).

FileUp includes two sets of dll files in the folders COM and DotNet. The dlls in COM work only with ASP. The dlls in DotNet work with both ASP and ASP.NET, and cannot be installed on a server that does not have the ASP.NET Framework. FileUp's ASP.NET .dll files are not pure .NET assemblies; they must be registered using regsvr32 before you can run them in .NET:

  1. Open a command prompt window and move to the directory FileUp\Dotnet.
    For example, enter cd Program Files\SoftArtisans\FileUp\Dotnet.

  2. Enter regsvr32 SAFileUp.dll. A dialog box will inform you that SAFileUp.dll registered successfully; click Ok.


  3. Enter regsvr32 SAFUpps.dll. A dialog box will inform you that SAFUpps.dll registered successfully; click Ok.


  4. Enter regsvr32 SAPrgres.dll. A dialog box will inform you that SAPrgres.dll registered successfully; click Ok.


  5. Enter iisreset to reset IIS.


The following table lists all .dll files included with FileUp. To use an optional file, register the file with regsvr32 (as explained above).

.dll File Description
SAFileUp.dll Required. SAFileUp.dll is the main component for uploading and downloading.
SAFupps.dll Required.
SAFupmon.dll Optional. SAFupmon.dll contains FileUp's Performance Monitor counters.
SAPrgres.dll Optional. SAPrgres.dll is FileUp's progress indicator.
SAArch.dll Optional. SAArch.dll contains SoftArtisans Archive, a tool for creating and extracting ZIP and CAB archives.
SAFilmgr.dll Optional. SAFilmgr.dll contains SoftArtisans FileManager, a file management tool.
SASmtp.DLL Optional. SASmtp.DLL contains SoftArtisans SMTPMail, a full-featured SMTP e-mail client.

The FileUp assemblies - SAFileUp.dll and SAPrgres.dll - can be made accessible either globally or at the application level. To make the assemblies accessible to a single application:

  1. At the top level of your application, create a directory called bin.


  2. Copy SAFileUp.dll and SAPrgres.dll to the \bin directory.

    The files you include in the bin directory must be the same files you registered using regsvr32.

Top


Manual Installation: Installing FileUp Globally

To install FileUp the first time, run the automatic installation. Once InstallShield has unpacked the dll files that contain FileUp, you can re-install FileUp manually (if, for example, you are moving FileUp to a different server).

FileUp includes two sets of dll files in the folders COM and DotNet. The dlls in COM work only with ASP. The dlls in DotNet work with both ASP and ASP.NET, and cannot be installed on a server that does not have the ASP.NET Framework. FileUp's ASP.NET .dll files are not pure .NET assemblies; they must be registered using regsvr32 before you can run them in .NET:

  1. Open a command prompt window and move to the directory FileUp\Dotnet.
    For example, enter cd Program Files\SoftArtisans\FileUp\Dotnet.

  2. Enter regsvr32 SAFileUp.dll. A dialog box will inform you that SaFileUp.dll registered successfully; click Ok.


  3. Enter regsvr32 SAFUpps.dll. A dialog box will inform you that SAFUpps.dll registered successfully; click Ok.


  4. Enter regsvr32 SAPrgres.dll. A dialog box will inform you that SAPrgres.dll registered successfully; click Ok.


  5. Enter iisreset to reset IIS.


The FileUp assemblies - SAFileUp.dll and SAPrgres.dll - can be made accessible either globally or at the application level. The assemblies will be available to all applications if they are installed the Global Assembly Cache (GAC)

Installing FileUp in the GAC in not recommended. Install FileUp in the GAC only when global installation is absolutely necessary. Otherwise, follow the instructions for installing FileUp at the application level.
  1. Open a command prompt window and move to the directory FileUp\Dotnet.
    For example, enter cd Program Files\SoftArtisans\FileUp\Dotnet.

  2. Enter gacutil /i SAFileUp.dll.


  3. Enter gacutil /i SAPrgres.dll.


After installing the assemblies in the GAC, either:

To update machine.config:

  1. Open the file machine.config (in [Windows directory]\Microsoft.NET\Framework\[.NET version directory]\CONFIG).


  2. Add the following lines to the assemblies node of machine.config:

    <add assembly="SaFileUp, Version=x.x.x.x, 
    	Culture=neutral, PublicKeyToken=f593502af6ee46ae"/>
    <add assembly="SAPrgres, Version=x.x.x.x, 
    	Culture=neutral, PublicKeyToken=f593502af6ee46ae"/>
  3. Add the following line to the httpHandlers node of machine.config:

    <add verb="GET,HEAD,POST" path="*.uplx" type="System.Web.UI.PageHandlerFactory" />


  4. Add the line above to machine.config before these entries:

    <add verb="GET,HEAD" path="*" type="System.Web.StaticFileHandler" />
    <add verb="*" path="*" type="System.Web.HttpMethodNotAllowedHandler" />

To make the assemblies available through an application's web.config file (rather than the global machine.config file):

  1. Create a text file containing the following lines:

    <configuration>
    <system.web>
    <compilation numRecompilesBeforeAppRestart="15">
    <compilers>
    </compilers>
    <assemblies>
    <add assembly="SaFileUp, Version=x.x.x.x, 
    	Culture=neutral, PublicKeyToken=f593502af6ee46ae"/>
    <add assembly="SAPrgres, Version=x.x.x.x, 
    	Culture=neutral, PublicKeyToken=f593502af6ee46ae"/>
    <add assembly="*" />
    </assemblies>
    </compilation>          
    <httpHandlers>
    <add verb="*" path="*.uplx" type="System.Web.UI.PageHandlerFactory"/>
    </httpHandlers>
    </system.web>
    </configuration>
  2. Save the file as web.config. Save web.config at the top level of your application.
The version attribute of the add assembly node must correspond exactly to the version of the assembly (dll file) added to the GAC. If you add a new version of FileUp to the GAC, update the dll version attributes in machine.config. To get the exact version of the dll file, right-click the dll, select the Properties tab, and check the File version (not the Product version).

Top


Installing the HttpModule

The ISAPI filter and the HttpModule must not be used at the same time. Do not install the ISAPI filter if you plan to use the HttpModule. If you are upgrading, and plan to use the HttpModule, make sure you remove the ISAPI filter from IIS. To use the ISAPI filter, see Installing the ISAPI filter.

In IIS 5 or IIS 6 running in IIS 5 mode, you can use either the ISAPI filter or the HttpModule. However, both cannot be installed on the same machine. In IIS 6 running in native IIS 6 mode, you can only use the HttpModule.

During the automatic installation of FileUp, you were asked if you want to install FileUp for ASP or ASP.NET. If you selected the ASP.NET version, the HttpModule was installed automatically for FileUp's sample applications. If you would like the HttpModule to be available to all applications, install FileUpModule.dll in the Global Assembly Cache (GAC). To make the FileUpModule.dll available to a single application, create a folder at the application's top level and name it "bin", and copy FileUpModule.dll to this folder.

To make FileUpModule.dll available to all .NET applications on your machine:

  1. Open a command prompt window and move to the directory FileUp\DotNet.


  2. Enter gacutil /i FileUpModule.dll.


  3. Open the file machine.config (in [Windows directory]\Microsoft.NET\Framework\[.NET version directory]\CONFIG).


  4. Add the following to the httpModules node of machine.config:

    <add name="FileUpModule" type="SoftArtisans.Net.FileUpModule,
    FileUpModule, Version=x.x.x.x, Culture=neutral,
    PublicKeyToken=f593502af6ee46ae"/>
The version attribute must correspond exactly to the version of FileUpModule.dll that you added to the GAC. If you add a new version of FileUpModule.dll to the GAC, update the version attribute in machine.config. To get the exact version of FileUpModule.dll, right-click the file and select the Properties tab, and check the File version (not the Product version).

To make FileUpModule.dll available to a single application:

  1. Within your application, include a top level direcory called bin that contains SAFileUp.dll, SAPrgres.dll, and FileUpModule.dll. The bin directory should contain the dll files you will find in FileUp\DotNet, not the files in FileUp\COM.

  2. Create a text file containing the following lines, and save it as web.config. Save web.config at the top level of your application.

    <configuration> 
     <system.web>   
    
      <!-- Allows upload requests to be processed by the module. --> 
      <httpHandlers> 
        <add verb="*" path="*.uplx" type="System.Web.UI.PageHandlerFactory"/> 
      </httpHandlers> 
      
      <!-- This loads the FileUp HttpModule for this application. Version numbers must match 
      the FileUpEeModule.dll exactly. --> 
      <httpModules> 
        <add name="FileUpEeModule" type="SoftArtisans.Net.FileUpEeModule,FileUpEeModule, 
        Version=x.x.x.x, Culture=neutral,PublicKeyToken=f593502af6ee46ae"/> 
      </httpModules> 
      
      <!-- These httpRuntime settings set at the application level will override 
      the machine.config settings. Default executionTimeout is 90 seconds which should 
      be increased for very large uploads; here it is set to 1200 seconds (20 minutes) 
      to allow large uploads. Default maxRequestLength is 4 mb which can be increased or
      decreased based on upload size; here it is set to 102400 kb (100 mb) to allow large
      uploads. -->
      <httpRuntime   
      executionTimeout="1200" 
      maxRequestLength="102400" 
      useFullyQualifiedRedirectUrl="false" 
      minFreeThreads="8" 
      minLocalRequestFreeThreads="4" 
      appRequestQueueLimit="100" /> 
    
     </system.web> 
    </configuration> 

Top


Installing the ISAPI Filter

The ISAPI filter and the HttpModule must not be used at the same time. Do not install the ISAPI filter if you plan to use the HttpModule. If you are upgrading, and plan to use the HttpModule, make sure you remove the ISAPI filter from IIS. To use the HttpModule, see Installing the HttpModule.

FileUp's automatic installation does not automatically install the ISAPI filter in IIS. To install the filter in IIS:

  1. Open IIS, right-click the machine name icon, and select Properties.

    FileUp's ISAPI filter must be installed at the machine level, not the Web site or Web application level.

  2. Select the Internet Information Services tab.


  3. From the Master Properties drop-down list, select WWW Service, and click Edit.


  4. Select the ISAPI Filters tab.


  5. Click Add.


  6. In the Filter Properties dialog box, enter the filter name FileUp, browse to FileUpIsapi.dll, and click Ok.


  7. Restart IIS to load the filter: right-click the machine name icon, select Restart IIS..., select Restart Internet Services from the drop-down list, and click Ok.

The ISAPI filter works in IIS 5 and IIS 6 running in IIS 5 mode. If you are running IIS 6 in IIS 6 mode, use the HttpModule instead of the ISAPI filter. To run IIS 6 in IIS 5 mode:
  1. In IIS, right-click the Web site, and open Properties.
  2. Select the Service tab.
  3. Check Run Web service in IIS 5.0 isolation mode.
Note that IIS 5 isolation mode applies to all applications on the IIS server. You cannot run some applications in IIS 6 mode and others in IIS 5 mode on the same server. For more information, see IIS Isolation Modes .

Top


Allowing ASP.NET to Process Files with the .uplx Extension

FileUp's HttpModule and ISAPI filter intercept requests to files with the extension .uplx. After a request is handled by the HttpModule or ISAPI filter, the request is forwarded to ASP.NET. To allow ASP.NET to process files with the extension .uplx, you must add a script map to IIS (for security reasons, FileUp's automatic installation does not add the script map automatically).

In the Windows XP IIS console, the Web Sites and Default Web Site nodes have identical properties dialogs. The script maps can be installed in the Web Sites properties, but they will be ignored by IIS. The script maps must be installed from the Default Web Site node.
Under ASP.NET, FileUp's progress indicator is handled by the ISAPI filter or the HttpModule (depending on which is installed). So, to display accurate progress indication, upload to a file with the .uplx extension.

Top


Copyright © 2003, SoftArtisans, Inc.