Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Upgrades a flavored project.
Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop.9.0 (in Microsoft.VisualStudio.Shell.Interop.9.0.dll)
Syntax
'Declaration
Function UpgradeProjectFlavor ( _
    pszFileName As String, _
    pUpgradeBuildPropStg As IVsUpgradeBuildPropertyStorage, _
    pszProjFileXMLFragment As String, _
    pszUserFileXMLFragment As String, _
    pLogger As IVsUpgradeLogger, _
    <OutAttribute> ByRef pUpgradeRequired As Integer, _
    <OutAttribute> pbstrUpgradedProjFileXMLFragment As String(), _
    <OutAttribute> pbstrUpgradedUserFileXMLFragment As String(), _
    <OutAttribute> ByRef pguidNewProjectFactory As Guid _
) As Integer
int UpgradeProjectFlavor(
    string pszFileName,
    IVsUpgradeBuildPropertyStorage pUpgradeBuildPropStg,
    string pszProjFileXMLFragment,
    string pszUserFileXMLFragment,
    IVsUpgradeLogger pLogger,
    out int pUpgradeRequired,
    string[] pbstrUpgradedProjFileXMLFragment,
    string[] pbstrUpgradedUserFileXMLFragment,
    out Guid pguidNewProjectFactory
)
int UpgradeProjectFlavor(
    [InAttribute] String^ pszFileName, 
    [InAttribute] IVsUpgradeBuildPropertyStorage^ pUpgradeBuildPropStg, 
    [InAttribute] String^ pszProjFileXMLFragment, 
    [InAttribute] String^ pszUserFileXMLFragment, 
    [InAttribute] IVsUpgradeLogger^ pLogger, 
    [OutAttribute] int% pUpgradeRequired, 
    [OutAttribute] array<String^>^ pbstrUpgradedProjFileXMLFragment, 
    [OutAttribute] array<String^>^ pbstrUpgradedUserFileXMLFragment, 
    [OutAttribute] Guid% pguidNewProjectFactory
)
abstract UpgradeProjectFlavor : 
        pszFileName:string * 
        pUpgradeBuildPropStg:IVsUpgradeBuildPropertyStorage * 
        pszProjFileXMLFragment:string * 
        pszUserFileXMLFragment:string * 
        pLogger:IVsUpgradeLogger * 
        pUpgradeRequired:int byref * 
        pbstrUpgradedProjFileXMLFragment:string[] byref * 
        pbstrUpgradedUserFileXMLFragment:string[] byref * 
        pguidNewProjectFactory:Guid byref -> int
function UpgradeProjectFlavor(
    pszFileName : String, 
    pUpgradeBuildPropStg : IVsUpgradeBuildPropertyStorage, 
    pszProjFileXMLFragment : String, 
    pszUserFileXMLFragment : String, 
    pLogger : IVsUpgradeLogger, 
    pUpgradeRequired : int, 
    pbstrUpgradedProjFileXMLFragment : String[], 
    pbstrUpgradedUserFileXMLFragment : String[], 
    pguidNewProjectFactory : Guid
) : int
Parameters
- pszFileName 
 Type: String- Name of file to upgrade. 
- pUpgradeBuildPropStg 
 Type: Microsoft.VisualStudio.Shell.Interop.IVsUpgradeBuildPropertyStorage- Used to read and update build related properties and imports. 
- pszProjFileXMLFragment 
 Type: String- Project file XML fragment. 
- pszUserFileXMLFragment 
 Type: String- Project user file XML fragment. 
- pLogger 
 Type: Microsoft.VisualStudio.Shell.Interop.IVsUpgradeLogger- A IVsUpgradeLogger upgrade logger. 
- pUpgradeRequired 
 Type: Int32%- Specifies upgrade is required. 
- pbstrUpgradedProjFileXMLFragment 
 Type: array<String[]- XML fragment returned by the flavored project. 
- pbstrUpgradedUserFileXMLFragment 
 Type: array<String[]- XML fragment returned by the flavored user project. 
- pguidNewProjectFactory 
 Type: Guid%- Pointer to the project factory. 
Return Value
Type: Int32
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
From vsshell90.idl:
HRESULT UpgradeProjectFlavor(
    [in]  LPCOLESTR           pszFileName,
    [in]  IVsUpgradeBuildPropertyStorage * pUpgradeBuildPropStg,
    [in]  LPCOLESTR          pszProjFileXMLFragment,
    [in]  LPCOLESTR          pszUserFileXMLFragment,
    [in]  IVsUpgradeLogger * pLogger,
    [out] BOOL             * pUpgradeRequired,
    [out, optional] BSTR   * pbstrUpgradedProjFileXMLFragment,
    [out, optional] BSTR   * pbstrUpgradedUserFileXMLFragment,
    [out, optional] GUID   * pguidNewProjectFactory
);
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.