SetCommand Method of the IFPCAlertActions Interface
The SetCommand method creates a new command-line action in the collection, or updates the command-line action if it already exists, and then returns a reference to it.
C++
Syntax
HRESULT SetCommand(
[in] BSTR ActionName,
[in] BSTR Command,
[out] IFPCAlertAction** ppNewAction
);
Parameters
ActionName
Required. String value that specifies the name of the action. This name is used to identify the action in the FPCAlertActions collection if it already exists.Command
Required. String value that specifies the command line. If the command line includes a path to an executable file that contains one or more spaces, the full path, including the name of the executable file, must be enclosed in double quotation marks in addition to the set of quotation marks that enclose the string value.ppNewAction
Address of an interface pointer that on return points to the IFPCAlertAction interface for the new or updated command-line action.
Return Value
This method can return one of the following:
- S_OK, indicating that the operation succeeded.
- An error code, indicating that the operation failed. In this case, the [out] parameter returned is a null object.
Visual Basic
Syntax
Function SetCommand( _
ByVal ActionName As String, _
ByVal Command As String _
) As FPCAlertAction
Parameters
ActionName
Required. String value that specifies the name of the action. This name is used to identify the action in the FPCAlertActions collection if it already exists.Command
Required. String value that specifies the command line. If the command line includes a path to an executable file that contains one or more spaces, the full path, including the name of the executable file, must be enclosed in double quotation marks in addition to the set of quotation marks that enclose the string value.
Return Value
This method returns a reference to an FPCAlertAction object if successful. Otherwise, an error is raised that can be intercepted by using an error handler.
Example Code
This VBScript script creates a command-line action for the user-specified alert. Note that the hard-coded command line in this script includes a path to an executable file that contains spaces.
' Define the constant needed
const Error_FileNotFound = &H80070002
Main(WScript.Arguments)
Sub Main(args)
If(args.Count = 1) Then
SetAlertAction args(0)
Else
Usage()
End If
End Sub
Sub SetAlertAction(alertName)
' Create the root object.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
' Declare the other objects needed.
Dim isaArray ' An FPCArray object
Dim alert ' An FPCAlert object
Dim actions ' An FPCAlertActions collection
Dim action ' An FPCAlertAction object
Dim actionName ' A String
Dim command ' A String
' Get a reference to the local array object.
Set isaArray = root.GetContainingArray()
' Get a reference to the alert specified.
On Error Resume Next
Set alert = isaArray.Alerts.Item(alertName)
If Err.Number = Error_FileNotFound Then
WScript.Echo "The alert specified could not be found."
Else
Err.Clear
On Error GoTo 0
Set actions = alert.Actions
actionName = "Command Line"
command = """C:\Program Files\Microsoft Forefront TMG\Myalertscript.cmd"" 1000"
Set action = actions.SetCommand(actionName, command)
alert.Save
End If
End Sub
Sub Usage()
WScript.Echo "Usage:" & VbCrLf _
& " CScript " & WScript.ScriptName & " Alert Command" & VbCrLf _
& "" & VbCrLf _
& " Alert - Name of the alert"
WScript.Quit
End Sub
Requirements
Client | Requires Windows 7 or Windows Vista. |
Server | Requires Windows Server 2008 R2 or Windows Server 2008 x64 Edition with SP2. |
Version | Requires Forefront Threat Management Gateway (TMG) 2010. |
IDL | Declared in Msfpccom.idl. |
DLL | Requires Msfpccom.dll. |
See Also
Send comments about this topic to Microsoft
Build date: 6/30/2010