## Parameter.ConnectFromFile2

### Introduced

v7.0

### Description

Creates an object representing the parameter's DataSource from file and connects it to the parameter. This method can be used to connect a Shader to a parameter from the shader preset file name. It can also be used to connect a multi output shader or shader compound to a parameter, in which case the Parameter object representing the connected source is returned.
Note: This method uses output arguments. C# and some scripting languages (such as JScript, PerlScript and Python) don't support arguments passed by reference. Normally for scripting you can get the output arguments via the ISIVTCollection, but this method already returns a value (C# cannot use this workaround because it does not have access to the ISIVTCollection).
The only available workaround in this case is to create a VBScript custom command which returns both the output arguments and the return value in one array. For details, see What Happens when the Function Already Returns a Value?.

### C# Syntax

    DataSource Parameter.ConnectFromFile2( String in_FileName, String in_SourceName, Object& out_pvPrevDataSource );

### Scripting Syntax

    oReturn = Parameter.ConnectFromFile2( FileName, [SourceName], [PrevDataSource] );

### Return Value

The newly created object of a type based on the definition used, for example a Shader (see the DataSource topic).

### Parameters

Parameter | Type | Description
--- | --- | ---
FileName | String | The name of a file containing a data source definition (eg., a preset file -- see the list of Shader Presets)
SourceName | String | The name of the source (or output port) on the shader we want to create. Leave empty to connect to default output or for single-output shaders.
PrevDataSource | DataSource | The previously connected DataSource if any; Nothing is returned it there is no previously connected DataSource.

### See Also

Parameter.ConnectFromFile Parameter.ConnectFromPreset2 Parameter.ConnectFromProgID2