Introduction

 

Some ISA Server / TMG KBs require you to run a script in order to change the functionality as described in the KB925287. In some cases, a script may return an error as

FPC.Root.1: The system cannot find the file specified.

 

This can occur when the script is executed on a CSS-only installation.

 

Understanding and fixing the problem

 

for instance, a KB script may fail with a “file not found” error at the following line:

Set array = root.GetContainingArray

 

The problem is that the GetContainingArray method attempts to retrieve the IFPCArray interface that represents an array which contains the current computer.  Because CSS-only servers are not associated with an array, this action will fail.

 

The primary way to avoid this problem is to run the script on a server which has the firewall service running.  CSS-only servers cannot meet this requirement.  There are cases where a script must be run on a non-array member; such as for the NLB multicast update in ISA 2006 SP1, but these are rare and this case will be stated explicitly in the KB article and script instructions.

 

Another way to handle this problem is to change the code as:

Set array = root.Arrays.Item("arrayname")

 

Using this method you can access any desired array by name. The output of the script in KB925287 should be the one below when the execution goes through successfully:

 

Microsoft (R) Windows Script Host Version 5.6

Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

 

New VendorSet added... {143F5698-103B-12D4-FF34-1F34767DEabc}

Done with SendUnmodifiedOriginalHostHeader, saved!

 

What should you watch for?

 

If you have CSS and ISA Firewall in different computers, make sure to be aware of this behavior when running a script that uses the GetContainingArray method.  When you have an error and the script breaks on the line that has this method, the possible outputs are:

 

Error

Error Code

Output Error

Reasons

ERROR_FILE_NOT_FOUND

0x00000002

The system cannot find the file specified.

·         The computer where you are running the script does not have Microsoft Firewall service or it is not running.

E_FPC_NOT_CONNECTED_TO_ENTERPRISE

0xC00403A6

The property or method Arrays is not supported when the ISA Server computer is not connected to a Configuration Storage Server.

·         Communication problems with CSS.

·         Permission, for example, a user logged on as a local administrator) does not have the permissions needed to access information stored on the remote Configuration Storage server for the array

S_OK

Do not apply

Not an error

·         The script completed successfully.

 

 

 

Author

Yuri Diogenes

Security Support Engineer – Microsoft CSS Forefront Edge Team

 

Technical Reviewers

Doron Juster

Microsoft Forefront Edge CS

 

Jim Harrison

Microsoft Forefront Edge CS