Share via


IAddInPostDeploymentAction.Execute Method

Runs the post-deployment action, which can perform additional installation steps as the final step in a ClickOnce installer.

Namespace:  Microsoft.VisualStudio.Tools.Applications.Deployment
Assembly:  Microsoft.VisualStudio.Tools.Applications.Runtime (in Microsoft.VisualStudio.Tools.Applications.Runtime.dll)

Syntax

'Declaration
Sub Execute ( _
    args As AddInPostDeploymentActionArgs _
)
void Execute(
    AddInPostDeploymentActionArgs args
)

Parameters

Examples

Sub Execute(ByVal args As AddInPostDeploymentActionArgs) Implements IAddInPostDeploymentAction.Execute
    Dim dataDirectory As String = "Data\ExcelWorkbook.xlsx" 
    Dim file As String = "ExcelWorkbook.xlsx" 
    Dim sourcePath As String = args.AddInPath
    Dim deploymentManifestUri As Uri = args.ManifestLocation
    Dim destPath As String = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
    Dim sourceFile As String = System.IO.Path.Combine(sourcePath, dataDirectory)
    Dim destFile As String = System.IO.Path.Combine(destPath, file)

    Select Case args.InstallationStatus
        Case AddInInstallationStatus.InitialInstall, AddInInstallationStatus.Update
            System.IO.File.Copy(sourceFile, destFile)
            ServerDocument.RemoveCustomization(destFile)
            ServerDocument.AddCustomization(destFile, deploymentManifestUri)
            Exit Select 
        Case AddInInstallationStatus.Uninstall
            If System.IO.File.Exists(destFile) Then
                System.IO.File.Delete(destFile)
            End If 
            Exit Select 
    End Select 
End Sub
public void Execute(AddInPostDeploymentActionArgs args) 
{
    string dataDirectory = @"Data\ExcelWorkbook.xlsx";
    string file = @"ExcelWorkbook.xlsx";
    string sourcePath = args.AddInPath;
    Uri deploymentManifestUri = args.ManifestLocation;
    string destPath = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
    string sourceFile = System.IO.Path.Combine(sourcePath, dataDirectory);
    string destFile = System.IO.Path.Combine(destPath, file);

    switch (args.InstallationStatus)
    {
        case AddInInstallationStatus.InitialInstall:
        case AddInInstallationStatus.Update:
            File.Copy(sourceFile, destFile);
            ServerDocument.RemoveCustomization(destFile);
            ServerDocument.AddCustomization(destFile, deploymentManifestUri);
            break;
        case AddInInstallationStatus.Uninstall:
            if (File.Exists(destFile))
            {
                File.Delete(destFile);
            }
            break;
    }
}

.NET Framework Security

See Also

Reference

IAddInPostDeploymentAction Interface

Microsoft.VisualStudio.Tools.Applications.Deployment Namespace

AddInPostDeploymentActionArgs