VCProject.CanAddAssemblyReference Method

Returns whether it is okay to add the given assembly (.NET) reference.

Namespace:  Microsoft.VisualStudio.VCProjectEngine
Assembly:  Microsoft.VisualStudio.VCProjectEngine (in Microsoft.VisualStudio.VCProjectEngine.dll)

Syntax

'Declaration
Function CanAddAssemblyReference ( _
    bstrRef As String _
) As Boolean
bool CanAddAssemblyReference(
    string bstrRef
)
bool CanAddAssemblyReference(
    [InAttribute] String^ bstrRef
)
abstract CanAddAssemblyReference : 
        bstrRef:string -> bool
function CanAddAssemblyReference(
    bstrRef : String
) : boolean

Parameters

  • bstrRef
    Type: String

    The assembly reference.

Return Value

Type: Boolean
true if whether it is okay to add the given assembly reference; false if not.

Remarks

It would not be okay to add an assembly reference if, for example, you have an invalid GUID.

This method is generally used in tandem with the AddAssemblyReference method. You use this method to determine whether it is okay to add an assembly reference, and if it is, then you call AddAssemblyReference.

Examples

See How to: Compile Example Code for Visual C++ Code Model Extensibility for information about how to compile and run this example.

CanAddAssemblyReference adds a .NET assembly reference to your project based on the path to the assembly, if possible.

' Add a reference to Microsoft.VisualStudio.VCProjectEngine and have a 
' Visual C++ project loaded before running this example.
Imports EnvDTE
Imports Microsoft.VisualStudio.VCProjectEngine
Public Module Module1
    Sub Test()
        Dim prj As VCProject
        Dim vcar As VCAssemblyReference
        Dim refcfg As VCReferenceConfiguration

        prj = DTE.Solution.Projects.Item(1).Object
        If prj.CanAddAssemblyReference("C:\Program Files\ _
        Microsoft Visual Studio 8\Common7\IDE\ _
        PublicAssemblies\envdte.dll") Then
           vcar = prj.AddAssemblyReference("C:\Program Files\ _
           Microsoft Visual Studio 8\Common7\IDE\ _
           PublicAssemblies\envdte.dll")
        End If
        refcfg = vcar.ReferenceConfigurations.Item(1)
        MsgBox("Consumable? " & refcfg.ConsumableByDesigner)
    End Sub
End Module

.NET Framework Security

See Also

Reference

VCProject Interface

Microsoft.VisualStudio.VCProjectEngine Namespace