Registrations are now open. Join us today!
There is still a lot of work to do on the wiki yet! More information about editing can be found here.
Already have an account?

Microsoft KB Archive/924146

From BetaArchive Wiki
Knowledge Base


The installation fails and you receive error events in the Application log when you try to install ISA Server 2004 Service Pack 2

Article ID: 924146

Article Last Modified on 2/8/2007



APPLIES TO

  • Microsoft Internet Security and Acceleration Server Enterprise Edition Service Pack 2



SYMPTOMS

When you try to install Microsoft Internet Security and Acceleration (ISA) Server 2004 Service Pack 2 (SP2), the installation fails. The following error events are logged in the Application log.

Error message 1


Event Type: Error
Event Source: MsiInstaller
Event ID: 1013
Description: Product: Microsoft ISA Server 2004 -- Setup failed while registering ISA Server Filters

Error message 2


Event Type: Error
Event Source: M2icrosoft Firewall
Event ID: 14060
Description: Cannot load an application filter SOCKS V4 Filter ({GUID}). FilterInit failed with code 0x80040154 To attempt to activate this application filter again, stop and restart the Firewall service.

Error message 3


Event Type: Error
Event Source: Microsoft Firewall
Event ID: 14001
Description: Firewall Service failed to initialize. Previous event log entries might help determine the proper action.

Error message 4


Event Type: Error
Event Source: MsiInstaller
Event ID: 1023
Description: Product: Microsoft ISA Server 2004 - Update "Microsoft ISA Server 2004 Service Pack 2" could not be installed. Error code 1603. Additional Information is available in the log file %Path%.


CAUSE

This issue occurs because the filter priority is out of order. For example, a low priority Web filter is listed before a medium priority Web filter.

RESOLUTION

To resolve this issue, run the following script to reset the Web filter priority order.

To run this script, follow these steps.

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

  1. Copy the following text, and then save it in a .vbs file.

    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    '
    
    ' Copyright (c) Microsoft Corporation. All rights reserved.
    
    ' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE
    
    ' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE
    
    ' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS
    
    ' HEREBY PERMITTED.
    
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
     
    
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    ' This script sets the order of the Web filters
    
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    
    Sub setOrderWF
    
        ' Create the root object.
        Dim root  ' The FPCLib.FPC root object
        Set root = CreateObject("FPC.Root")
    
    
       'Declare the other objects that are needed.
        Dim array       ' An FPCArray object
        Dim Extensions ' An FPCExtensions
        Dim WebFilters' An FPCWebFilters 
        Dim WebFilter
        Dim FltrGuid
        Dim lcount,lIndex
        On Error Resume Next
    
        
    
        ' Get references to the array object and the network rules collection.
        Set array = root.GetContainingArray
        CheckError
        Set Extensions = array.Extensions 
        CheckError
        set WebFilters = Extensions.WebFilters
        CheckError
        WScript.Echo "Getting Link Translation filter"
        set WebFilter = WebFilters.item("{9DEEF135-75DB-4aab-B2AC-314FBC98EF14}")
        CheckError
        WScript.Echo "Set Link translation filter priority to Low"
        WebFilter.priority = 0
        CheckError
        WebFilters.Save
        CheckError
        WScript.Echo "Moving the cache compression filter to be last"
        WebFilters.movedown(6)
        CheckError
        WebFilters.movedown(7)
        CheckError
        WebFilters.Save
        CheckError
        WScript.Echo "Set Link translation filter priority back to Medium"
        set WebFilter = WebFilters.item("{9DEEF135-75DB-4aab-B2AC-314FBC98EF14}")
        WebFilter.priority = 1
        CheckError
        WebFilters.Save
    
    end sub
    
    
    Sub CheckError()
        If Err.Number <> 0 Then
            WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & 
    Err.Description
            Exit sub
        End If
    End Sub
    
    
    
    
    
    'main
    setOrderWF

    Note You can use Notepad or any text editor.

  2. At a command prompt, type Cscript FileName.vbs. For example, you may type Cscript SetFiltersOrder.vbs.

    Note FileName is a placeholder for the file that you saved in step 1.

After you run the script and update the ISA Server Microsoft Management Console (MMC) view, the Web filter priority order should resemble the following.

Order Name Priority
1 Diffserv Filter High
2 Compression Filter High
3 OWA FBA Filter High
4 SecurID Filter High
5 RADIUS Authentication High
6 Link Translation Filter Medium
7 HTTP Filter Low
8 Cashing Compressed Filter Low

Note You may have to run the scripts multiple times for the Web filter priority order to return to the original settings that are shown in this table.

After the Web filter priority order is restored, you can install ISA Server 2004 SP2.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

If you have installed third-party Web filters, you may receive the following error messages:

Error message 1


An error occurred: 0xC0040301 A Web Filter can be moved only into the positions of filters that have the same priority. The error occurred on object 'ISAPI-Filters' of class 'Web Filters' in the scope of array 'Array_Name'

Error message 2


Set Link Translation filter priory back to medium

To resolve this issue, remove the third-party Web filters, and then run the script again. You can re-install the third-party Web filters after the script has completed and after ISA Server 2004 SP2 is installed.


Additional query words: Filter Order Priority

Keywords: kbtshoot kbbug kbprb KB924146