FileSystemTask.InitializeTask Method
Initializes the properties associated with the task. This method is called by the runtime and is not used in code.
Namespace:  Microsoft.SqlServer.Dts.Tasks.FileSystemTask
Assembly:  Microsoft.SqlServer.FileSystemTask (in Microsoft.SqlServer.FileSystemTask.dll)
Syntax
'Declaration
Public Overrides Sub InitializeTask ( _
    connections As Connections, _
    variableDispenser As VariableDispenser, _
    events As IDTSInfoEvents, _
    log As IDTSLogging, _
    eventInfos As EventInfos, _
    logEntryInfos As LogEntryInfos, _
    refTracker As ObjectReferenceTracker _
)
'Usage
Dim instance As FileSystemTask
Dim connections As Connections
Dim variableDispenser As VariableDispenser
Dim events As IDTSInfoEvents
Dim log As IDTSLogging
Dim eventInfos As EventInfos
Dim logEntryInfos As LogEntryInfos
Dim refTracker As ObjectReferenceTracker
instance.InitializeTask(connections, _
    variableDispenser, events, log, eventInfos, _
    logEntryInfos, refTracker)
public override void InitializeTask(
    Connections connections,
    VariableDispenser variableDispenser,
    IDTSInfoEvents events,
    IDTSLogging log,
    EventInfos eventInfos,
    LogEntryInfos logEntryInfos,
    ObjectReferenceTracker refTracker
)
public:
virtual void InitializeTask(
    Connections^ connections, 
    VariableDispenser^ variableDispenser, 
    IDTSInfoEvents^ events, 
    IDTSLogging^ log, 
    EventInfos^ eventInfos, 
    LogEntryInfos^ logEntryInfos, 
    ObjectReferenceTracker^ refTracker
) override
abstract InitializeTask : 
        connections:Connections * 
        variableDispenser:VariableDispenser * 
        events:IDTSInfoEvents * 
        log:IDTSLogging * 
        eventInfos:EventInfos * 
        logEntryInfos:LogEntryInfos * 
        refTracker:ObjectReferenceTracker -> unit 
override InitializeTask : 
        connections:Connections * 
        variableDispenser:VariableDispenser * 
        events:IDTSInfoEvents * 
        log:IDTSLogging * 
        eventInfos:EventInfos * 
        logEntryInfos:LogEntryInfos * 
        refTracker:ObjectReferenceTracker -> unit 
public override function InitializeTask(
    connections : Connections, 
    variableDispenser : VariableDispenser, 
    events : IDTSInfoEvents, 
    log : IDTSLogging, 
    eventInfos : EventInfos, 
    logEntryInfos : LogEntryInfos, 
    refTracker : ObjectReferenceTracker
)
Parameters
- connections
 Type: Microsoft.SqlServer.Dts.Runtime.Connections
 A collection of connections used by the task.
- variableDispenser
 Type: Microsoft.SqlServer.Dts.Runtime.VariableDispenser
 A VariableDispenser object for locking variables.
- events
 Type: Microsoft.SqlServer.Dts.Runtime.IDTSInfoEvents
 An object that implements the IDTSInfoEvents interface for raising events (errors, warnings, and so on) during persistence.
- log
 Type: Microsoft.SqlServer.Dts.Runtime.IDTSLogging
 An object that implements the IDTSLogging interface.
- eventInfos
 Type: Microsoft.SqlServer.Dts.Runtime.EventInfos
 An EventInfos.
- logEntryInfos
 Type: Microsoft.SqlServer.Dts.Runtime.LogEntryInfos
 TheLogEntryInfos collection used by the task.
- refTracker
 Type: Microsoft.SqlServer.Dts.Runtime.ObjectReferenceTracker
 An object reference tracker.
Remarks
For the FileSystemTask and all other stock tasks, use this method to set the log events of each task.
Examples
Task developers define custom events by overriding the InitializeTask method of the Task base class, and creating a new EventInfo. The following code sample shows the InitializeTask method of a custom task in which two custom events are created and added to the eventInfos collection.
public override void InitializeTask(Connections connections, VariableDispenser variables, IDTSInfoEvents events, IDTSLogging log, EventInfos eventInfos, LogEntryInfos logEntryInfos, ObjectReferenceTracker refTracker)
{
    this.eventInfos = eventInfos;
    string[] paramNames = new string[1];
    TypeCode[] paramTypes = new TypeCode[1]{TypeCode.Int32};
    string[] paramDescriptions = new string[1];
    paramNames[0] = "InitialValue";
    paramDescriptions[0] = "The value before increment.";
    this.eventInfos.Add("OnBeforeIncrement","Fires before the task increments the value.",true,paramNames,paramTypes,paramDescriptions);
    this.onBeforeIncrement = this.eventInfos["OnBeforeIncrement"];
    paramDescriptions[0] = "The value after increment.";
    this.eventInfos.Add("OnAfterIncrement","Fires after the initial value is updated.",true,paramNames, paramTypes,paramDescriptions);
    this.onAfterIncrement = this.eventInfos["OnAfterIncrement"];
}