---
updatedAt: 2025-08-14T13:34:42.000Z
agentTools:
  siteIndex: https://developer.n-able.com/llms.txt
  projectIndex: https://developer.n-able.com/n-central/llms.txt
---

# Install Office 365 MS Visio Pro

```powershell Automation Policy
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Policy ID="229167d5-3d3b-4865-8b44-f38fa0e3091b" Name="Install O365 Visio Pro" Description="UG9saWN5IHRoYXQgaW5zdGFsbHMgTzM2NSBWaXNpbyBQcm8gUmV0YWls" Version="2.9.0.3" RemoteCategory="0" ExecutionType="Local" PS3ObjectCount="0">
  <Object ID="{02b3ea68-7915-432b-b01e-b64d8968d42f}" Type="{B6FA6D8B-EEAA-47A6-8463-7F9A4F5BBB6E}" Data="&lt;xml&gt;&lt;Parameters&gt;&lt;Parameter ParameterName=&quot;TempFolder&quot; Label=&quot;Location to download installer&quot; ParameterType=&quot;string&quot; Value=&quot;C:\Temp&quot; /&gt;&lt;Parameter ParameterName=&quot;ODTFileExe&quot; Label=&quot;File for Office Deploy Tool&quot; ParameterType=&quot;string&quot; Value=&quot;C:\Temp\setup.exe&quot; /&gt;&lt;Parameter ParameterName=&quot;ODTFileUrl&quot; Label=&quot;URL for O365 Deployment Tool&quot; ParameterType=&quot;string&quot; Value=&quot;https://admin-created-office365.s3.us-east-2.amazonaws.com/setup.exe&quot; /&gt;&lt;Parameter ParameterName=&quot;O365VisioProRetailConfigFile&quot; Label=&quot;URL for O365 Visio Pro Retail Config File&quot; ParameterType=&quot;string&quot; Value=&quot;https://admin-created-office365.s3.us-east-2.amazonaws.com/O365_VisioProRetail.xml&quot; /&gt;&lt;/Parameters&gt;&lt;/xml&gt;" />
  <LinkManager xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/PolicyExecutor">
    <hashset xmlns:d2p1="http://schemas.datacontract.org/2004/07/System" />
  </LinkManager>
  <Activity xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:p="clr-namespace:PolicyExecutor;assembly=PolicyExecutionEngine" xmlns:sads="http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger" xmlns:sap="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" mc:Ignorable="sads sap" x:Class="Policy Builder">
    <x:Members>
      <x:Property Name="PolicyGUID" Type="InArgument(x:String)" />
    </x:Members>
    <sap:VirtualizedContainerService.HintSize>719.333333333333,2230</sap:VirtualizedContainerService.HintSize>
    <mva:VisualBasic.Settings>Assembly references and imported namespaces serialized as XML namespaces</mva:VisualBasic.Settings>
    <p:PolicySequence DisplayName="Policy Builder" mva:VisualBasic.Settings="Assembly references and imported namespaces serialized as XML namespaces" sap:VirtualizedContainerService.HintSize="719.333333333333,2230">
      <p:PolicySequence.Activities>
        <p:IsAppInstalled ApplicationName="Microsoft Visio Professional 2016 - en-us" ApplicationName_DisplayArg="Microsoft Visio Professional 2016 - en-us" ApplicationName_Item="{x:Null}" ApplicationName_ItemProp="{x:Null}" AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" Conditional="[IsAppInstalled_Conditional]" DisplayName="Is Visio Pro Retail Installed" Moniker="1289e9e0-5182-404b-a11d-f5043fee9725" Result="[IsAppInstalled_Result]" ResultString="[IsAppInstalled_ResultString]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="None" TypeName="IsAppInstalled" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="683.333333333333,88" />
        <p:IfObject AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" Condition="equals" Condition_DisplayArg="equals" Condition_Item="{x:Null}" Condition_ItemProp="{x:Null}" DisplayName="If Visio Pro Retail Installed" Moniker="542f8ee4-45d8-4feb-9bd2-772c305a5e11" Result="[IfObject_Result_1]" ResultString="[IfObject_ResultString_1]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="None" TypeName="IfObject" Value_DisplayArg="False" Value_Item="{x:Null}" Value_ItemProp="{x:Null}" Value_Type="x:String" Variable="[IsAppInstalled_Conditional]" Variable_DisplayArg="Is Visio Pro Retail Installed.Conditional" Variable_Item="{x:Null}" Variable_ItemProp="{x:Null}" Variable_Type="x:String" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="683.333333333333,1878.66666666667">
          <p:IfObject.IfOption>
            <p:SequenceActivity DisplayName="Then" Name="SequenceActivity" sap:VirtualizedContainerService.HintSize="651.333333333333,1678.66666666667">
              <p:SequenceActivity.Activities>
                <p:FormatString AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Format String LocalDownloadPath ODT" FormattedString="[FormatString_FormattedString]" Input0="[TempFolder]" Input0_DisplayArg="Input Parameters.Location to download installer" Input0_Item="{x:Null}" Input0_ItemProp="{x:Null}" Input1="{x:Null}" Input1_DisplayArg="{x:Null}" Input1_Item="{x:Null}" Input1_ItemProp="{x:Null}" Moniker="70d1f3f1-c28a-47ed-b835-621d868ea3c7" Result="[FormatString_Result]" ResultString="[FormatString_ResultString]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="ExecuteDebug" Text="{}{0}\setup.exe" Text_DisplayArg="{}{0}\setup.exe" Text_Item="{x:Null}" Text_ItemProp="{x:Null}" TypeName="FormatString" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,160" />
                <p:FormatString AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Format String LocalDownloadPath ProjProRetail Config File" FormattedString="[FormatString_FormattedString_1]" Input0="[TempFolder]" Input0_DisplayArg="Input Parameters.Location to download installer" Input0_Item="{x:Null}" Input0_ItemProp="{x:Null}" Input1="{x:Null}" Input1_DisplayArg="{x:Null}" Input1_Item="{x:Null}" Input1_ItemProp="{x:Null}" Moniker="84cbf6f7-8da0-4ec2-82ca-c3a56ca5f1ee" Result="[FormatString_Result_1]" ResultString="[FormatString_ResultString_1]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="ExecuteDebug" Text="{}{0}\O365_VisioProRetail.xml" Text_DisplayArg="{}{0}\O365_VisioProRetail.xml" Text_Item="{x:Null}" Text_ItemProp="{x:Null}" TypeName="FormatString" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,160" />
                <p:DownloadFileFromURL AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Download File From URL - ODT" Moniker="e353b7bd-856e-48c5-8afc-aa99ee4756c1" OverwriteExistingFile="True" OverwriteExistingFile_DisplayArg="true" OverwriteExistingFile_Item="{x:Null}" OverwriteExistingFile_ItemProp="{x:Null}" RemoteFileURL="[ODTFileUrl]" RemoteFileURL_DisplayArg="Input Parameters.URL for O365 Deployment Tool" RemoteFileURL_Item="{x:Null}" RemoteFileURL_ItemProp="{x:Null}" Result="[DownloadFileFromURL_Result]" ResultString="[DownloadFileFromURL_ResultString]" RunAsCurrentLoggedOnUser="False" SaveAsFileName="[FormatString_FormattedString]" SaveAsFileName_DisplayArg="Format String LocalDownloadPath ODT.FormattedString" SaveAsFileName_Item="{x:Null}" SaveAsFileName_ItemProp="{x:Null}" ScriptExecutionMethod="ExecuteDebug" TypeName="DownloadFileFromURL" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,160" />
                <p:DownloadFileFromURL AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Download File From URL - Visio Pro Retail Config File" Moniker="a3db1a13-2e21-4dce-a958-0b617556fa57" OverwriteExistingFile="True" OverwriteExistingFile_DisplayArg="true" OverwriteExistingFile_Item="{x:Null}" OverwriteExistingFile_ItemProp="{x:Null}" RemoteFileURL="[O365VisioProRetailConfigFile]" RemoteFileURL_DisplayArg="Input Parameters.URL for O365 Visio Pro Retail Config File" RemoteFileURL_Item="{x:Null}" RemoteFileURL_ItemProp="{x:Null}" Result="[DownloadFileFromURL_Result_1]" ResultString="[DownloadFileFromURL_ResultString_1]" RunAsCurrentLoggedOnUser="False" SaveAsFileName="[FormatString_FormattedString_1]" SaveAsFileName_DisplayArg="Format String LocalDownloadPath ProjProRetail Config File.FormattedString" SaveAsFileName_Item="{x:Null}" SaveAsFileName_ItemProp="{x:Null}" ScriptExecutionMethod="ExecuteDebug" TypeName="DownloadFileFromURL" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,160" />
                <p:RunPowerShellScript AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Run PowerShell Script - Download Visio Pro Retail" Moniker="33d7e6a6-1c92-45ae-a1df-111245572bc2" OutPut_64="[RunPowerShellScript_OutPut_64]" Result="[RunPowerShellScript_Result]" ResultString="[RunPowerShellScript_ResultString]" Results_x64="[RunPowerShellScript_Results_x64]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="ExecuteDebug" TypeName="RunPowerShellScript" genArgEvent="d4408b96-cfdf-4a65-8da6-78633eb74209" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,80" script="UwBlAHQALQBMAG8AYwBhAHQAaQBvAG4AIAAiAEMAOgBcAFQAZQBtAHAAIgA7ACAALgBcAHMAZQB0AHUAcAAuAGUAeABlACAALwBkAG8AdwBuAGwAbwBhAGQAIABPADMANgA1AF8AVgBpAHMAaQBvAFAAcgBvAFIAZQB0AGEAaQBsAC4AeABtAGwA">
                  <p:RunPowerShellScript.InArgs>
                    <scg:Dictionary x:TypeArguments="x:String, p:InArg" />
                  </p:RunPowerShellScript.InArgs>
                  <p:RunPowerShellScript.OutArgs>
                    <scg:Dictionary x:TypeArguments="x:String, p:OutArg" />
                  </p:RunPowerShellScript.OutArgs>
                  <sap:WorkflowViewStateService.ViewState>
                    <scg:Dictionary x:TypeArguments="x:String, x:Object">
                      <x:Boolean x:Key="IsExpanded">False</x:Boolean>
                    </scg:Dictionary>
                  </sap:WorkflowViewStateService.ViewState>
                </p:RunPowerShellScript>
                <p:RunPowerShellScript AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Run PowerShell Script - Install Visio Pro Retail" Moniker="343a4278-644c-45c8-a341-aeb688cd6c8c" OutPut_64="[RunPowerShellScript_OutPut_64_1]" Result="[RunPowerShellScript_Result_1]" ResultString="[RunPowerShellScript_ResultString_1]" Results_x64="[RunPowerShellScript_Results_x64_1]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="ExecuteDebug" TypeName="RunPowerShellScript" genArgEvent="{x:Null}" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,80" script="UwBlAHQALQBMAG8AYwBhAHQAaQBvAG4AIAAiAEMAOgBcAFQAZQBtAHAAIgA7ACAALgBcAHMAZQB0AHUAcAAuAGUAeABlACAALwBjAG8AbgBmAGkAZwB1AHIAZQAgAE8AMwA2ADUAXwBWAGkAcwBpAG8AUAByAG8AUgBlAHQAYQBpAGwALgB4AG0AbAA=">
                  <p:RunPowerShellScript.InArgs>
                    <scg:Dictionary x:TypeArguments="x:String, p:InArg" />
                  </p:RunPowerShellScript.InArgs>
                  <p:RunPowerShellScript.OutArgs>
                    <scg:Dictionary x:TypeArguments="x:String, p:OutArg" />
                  </p:RunPowerShellScript.OutArgs>
                  <sap:WorkflowViewStateService.ViewState>
                    <scg:Dictionary x:TypeArguments="x:String, x:Object">
                      <x:Boolean x:Key="IsExpanded">False</x:Boolean>
                    </scg:Dictionary>
                  </sap:WorkflowViewStateService.ViewState>
                </p:RunPowerShellScript>
                <p:DeleteFile AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Delete O365 Deployment Tool File" FileName="C:\Temp\setup.exe" FileName_DisplayArg="C:\Temp\setup.exe" FileName_Item="{x:Null}" FileName_ItemProp="{x:Null}" Moniker="0352247c-f7e4-4521-b142-9e6f46b54d9d" Recurse="True" Recurse_DisplayArg="" Recurse_Item="{x:Null}" Recurse_ItemProp="{x:Null}" Result="[DeleteFile_Result]" ResultString="[DeleteFile_ResultString]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="None" TypeName="DeleteFile" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,124" />
                <p:DeleteFile AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Delete Visio Pro Retail Config File" FileName="C:\Temp\O365_VisioProRetail.xml" FileName_DisplayArg="C:\Temp\O365_VisioProRetail.xml" FileName_Item="{x:Null}" FileName_ItemProp="{x:Null}" Moniker="73a4a9fd-891f-4012-a320-988e6329d8f6" Recurse="True" Recurse_DisplayArg="" Recurse_Item="{x:Null}" Recurse_ItemProp="{x:Null}" Result="[DeleteFile_Result_1]" ResultString="[DeleteFile_ResultString_1]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="None" TypeName="DeleteFile" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,124" />
                <p:DeleteFolder AssemblyName="PolicyExecutionEngine, Version=2.9.0.3, Culture=neutral, PublicKeyToken=null" DisplayName="Delete O365 Download Folder" Folder="C:\Temp\Office" Folder_DisplayArg="C:\Temp\Office" Folder_Item="{x:Null}" Folder_ItemProp="{x:Null}" Force="True" Force_DisplayArg="" Force_Item="{x:Null}" Force_ItemProp="{x:Null}" Moniker="8789fd7c-83c4-4966-9992-5022d965a5da" Recurse="True" Recurse_DisplayArg="true" Recurse_Item="{x:Null}" Recurse_ItemProp="{x:Null}" Result="[DeleteFolder_Result]" ResultString="[DeleteFolder_ResultString]" RunAsCurrentLoggedOnUser="False" ScriptExecutionMethod="ExecuteDebug" TypeName="DeleteFolder" m_bTextLinkChange="False" sap:VirtualizedContainerService.HintSize="613.333333333333,160" />
              </p:SequenceActivity.Activities>
              <p:SequenceActivity.Variables>
                <Variable Name="RunPowerShellScript_OutPut_64" x:TypeArguments="x:String" />
                <Variable Name="RunPowerShellScript_Result" x:TypeArguments="x:Double" />
                <Variable Name="RunPowerShellScript_ResultString" x:TypeArguments="x:String" />
                <Variable Name="RunPowerShellScript_Results_x64" x:TypeArguments="scg:IEnumerable(x:Object)" />
                <Variable Name="RunPowerShellScript_OutPut_64_1" x:TypeArguments="x:String" />
                <Variable Name="RunPowerShellScript_Result_1" x:TypeArguments="x:Double" />
                <Variable Name="RunPowerShellScript_ResultString_1" x:TypeArguments="x:String" />
                <Variable Name="RunPowerShellScript_Results_x64_1" x:TypeArguments="scg:IEnumerable(x:Object)" />
                <Variable Name="DeleteFile_Result" x:TypeArguments="x:Double" />
                <Variable Name="DeleteFile_ResultString" x:TypeArguments="x:String" />
                <Variable Name="DeleteFile_Result_1" x:TypeArguments="x:Double" />
                <Variable Name="DeleteFile_ResultString_1" x:TypeArguments="x:String" />
                <Variable Name="DeleteFolder_Result" x:TypeArguments="x:Double" />
                <Variable Name="DeleteFolder_ResultString" x:TypeArguments="x:String" />
                <Variable Name="FormatString_FormattedString" x:TypeArguments="x:String" />
                <Variable Name="FormatString_ResultString" x:TypeArguments="x:String" />
                <Variable Name="FormatString_Result" x:TypeArguments="x:Double" />
                <Variable Name="FormatString_FormattedString_1" x:TypeArguments="x:String" />
                <Variable Name="FormatString_ResultString_1" x:TypeArguments="x:String" />
                <Variable Name="FormatString_Result_1" x:TypeArguments="x:Double" />
                <Variable Name="DownloadFileFromURL_ResultString" x:TypeArguments="x:String" />
                <Variable Name="DownloadFileFromURL_Result" x:TypeArguments="x:Double" />
                <Variable Name="DownloadFileFromURL_ResultString_1" x:TypeArguments="x:String" />
                <Variable Name="DownloadFileFromURL_Result_1" x:TypeArguments="x:Double" />
              </p:SequenceActivity.Variables>
            </p:SequenceActivity>
          </p:IfObject.IfOption>
          <p:IfObject.Value>
            <InArgument x:TypeArguments="x:Object">
              <p:ObjectLiteral Value="False" />
            </InArgument>
          </p:IfObject.Value>
        </p:IfObject>
      </p:PolicySequence.Activities>
      <p:PolicySequence.Variables>
        <Variable Name="IsAppInstalled_Conditional" x:TypeArguments="x:String" />
        <Variable Name="IsAppInstalled_Result" x:TypeArguments="x:Double" />
        <Variable Name="IsAppInstalled_ResultString" x:TypeArguments="x:String" />
        <Variable Name="IfObject_Result_1" x:TypeArguments="x:Double" />
        <Variable Name="IfObject_ResultString_1" x:TypeArguments="x:String" />
        <Variable Default="C:\Temp" Name="TempFolder" x:TypeArguments="x:String" />
        <Variable Default="C:\Temp\setup.exe" Name="ODTFileExe" x:TypeArguments="x:String" />
        <Variable Default="https://admin-created-office365.s3.us-east-2.amazonaws.com/setup.exe" Name="ODTFileUrl" x:TypeArguments="x:String" />
        <Variable Default="https://admin-created-office365.s3.us-east-2.amazonaws.com/O365_VisioProRetail.xml" Name="O365VisioProRetailConfigFile" x:TypeArguments="x:String" />
      </p:PolicySequence.Variables>
    </p:PolicySequence>
  </Activity>
</Policy>
```

```json Response Example
{"success":true}
```

# SCRIPT