I have an Excel addin that is deployed and updated by clickonce. There are some supporting files that files that I need for the addin (templates, .xlam, etc.) and I use a Post-Deployment procedure to copy those files to the correct location.
After mucking about with an unrelated problem, I screwed up the deployment procedure and now it errors out whenever I attempt to Install/or update the app, stating that the post deployment file cannot be found:
Name: PwC Analytics Toolbar
From: file:///H:/4_Resources/Modelling Toolbar/ModellingToolbar.vsto
************** Exception Text **************
Microsoft.VisualStudio.Tools.Applications.Deployment.InstallAddInFailedException: The following assembly for a post-deployment action cannot be found: "FileCopyPDA, Version=1.0.0.0, Culture=neutral, ProcessorArchitecture=msil".
at Microsoft.VisualStudio.Tools.Applications.Deployment.PostDeploymentActionsHost.Execute(Int32& lastExecutedPostAction, Uri deployManifestUri, AddInInstallationStatus installStatus, String deployManifestXml, String appManifestXml, String hostManifestXml, String[] postActionDataXmls, String productName, String version, String applicationBase, String[] assemblyClassNames, String[] assemblyNames, String[] assemblyFullNames)
at Microsoft.VisualStudio.Tools.Applications.Deployment.PostDeploymentActionsHost.Execute(Int32& lastExecutedPostAction, Uri deployManifestUri, AddInInstallationStatus installStatus, String deployManifestXml, String appManifestXml, String hostManifestXml, String[] postActionDataXmls, String productName, String version, String applicationBase, String[] assemblyClassNames, String[] assemblyNames, String[] assemblyFullNames)
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.InvokePostActions(Uri deploymentUri, AddInInstallationStatus installStatus, String deployManifestXml, String appManifestXml, ApplicationManifest manifest, String productName, String version, AppDomainSetup appDomainSetup)
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.InstallAddIn()
at Microsoft.VisualStudio.Tools.Office.Runtime.SolutionInstaller.<>c__DisplayClass7.<Install>b__0()
The library clearly exists in the correct location:
![]()
I have updated the manifest to include the post deployment routine:
<?xml version="1.0" encoding="utf-8"?><asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2"><asmv1:assemblyIdentity name="ModellingToolbar.dll" version="0.8.2.36" publicKeyToken="62c614bc780ff547" language="neutral" processorArchitecture="msil" type="win32" /><description xmlns="urn:schemas-microsoft-com:asm.v1">ModellingToolbar</description><application /><entryPoint><co.v1:customHostSpecified /></entryPoint><trustInfo><security><applicationRequestMinimum><PermissionSet Unrestricted="true" ID="Custom" SameSite="site" /><defaultAssemblyRequest permissionSetReference="Custom" /></applicationRequestMinimum><requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"><!--
UAC Manifest Options
If you want to change the Windows User Account Control level replace the
requestedExecutionLevel node with one of the following.<requestedExecutionLevel level="asInvoker" uiAccess="false" /><requestedExecutionLevel level="requireAdministrator" uiAccess="false" /><requestedExecutionLevel level="highestAvailable" uiAccess="false" />
If you want to utilize File and Registry Virtualization for backward
compatibility then delete the requestedExecutionLevel node.
--><requestedExecutionLevel level="asInvoker" uiAccess="false" /></requestedPrivileges></security></trustInfo><dependency><dependentOS><osVersionInfo><os majorVersion="5" minorVersion="1" buildNumber="2600" servicePackMajor="0" /></osVersionInfo></dependentOS></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="4.0.30319.0" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.Office.Tools" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.Office.Tools.Common" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.Office.Tools.Excel" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.Office.Tools.v4.0.Framework" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.VisualStudio.Tools.Applications.Runtime" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="Microsoft.VisualStudio.Tools.Applications.Runtime.v10.0" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true"><assemblyIdentity name="stdole" version="7.0.3300.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" /></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="FileCopyPDA.dll" size="14848"><assemblyIdentity name="FileCopyPDA" version="1.0.0.0" language="neutral" processorArchitecture="msil" /><hash><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><dsig:DigestValue>1M/Gb+dT4e7kH1jJZBx0rTWPS64=</dsig:DigestValue></hash></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="Microsoft.Office.Tools.Common.v4.0.Utilities.dll" size="32664"><assemblyIdentity name="Microsoft.Office.Tools.Common.v4.0.Utilities" version="10.0.0.0" publicKeyToken="B03F5F7F11D50A3A" language="neutral" processorArchitecture="msil" /><hash><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><dsig:DigestValue>CtnCtseaMyfROIGe0ENdGO6arHg=</dsig:DigestValue></hash></dependentAssembly></dependency><dependency><dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="ModellingToolbar.dll" size="211968"><assemblyIdentity name="ModellingToolbar" version="1.0.0.0" language="neutral" processorArchitecture="msil" /><hash><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><dsig:DigestValue>cnK0qN+IfRY+e6zF61Xal3JVguY=</dsig:DigestValue></hash></dependentAssembly></dependency><file name="Data\Analytics VBA.xlam" size="483169"><hash><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><dsig:DigestValue>uyz3vgCL4Et5AIyCaVJ4m86ovl4=</dsig:DigestValue></hash></file><file name="Data\Table Library.xlsx" size="40619"><hash><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><dsig:DigestValue>uuqAOxczZml8Izm/RXtPhBuMhO4=</dsig:DigestValue></hash></file><file name="ModellingToolbar.dll.config" size="2035"><hash><dsig:Transforms><dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><dsig:DigestValue>mLXELhKdDKTy6lHpMDKThMfGV8o=</dsig:DigestValue></hash></file><vstav3:addIn xmlns:vstav3="urn:schemas-microsoft-com:vsta.v3"><vstav3:entryPointsCollection><vstav3:entryPoints><vstav3:entryPoint class="AnalyticsToolbar.ThisAddIn"><assemblyIdentity name="ModellingToolbar" version="1.0.0.0" language="neutral" processorArchitecture="msil" /></vstav3:entryPoint></vstav3:entryPoints></vstav3:entryPointsCollection><vstav3:update enabled="true" /><vstav3:postActions><vstav3:postAction><vstav3:entryPoint class="FileCopyPDA.FileCopyPDA"><assemblyIdentity name="FileCopyPDA" version="1.0.0.0" language="neutral" processorArchitecture="msil" /></vstav3:entryPoint><vstav3:postActionData></vstav3:postActionData></vstav3:postAction></vstav3:postActions><vstav3:application><vstov4:customizations xmlns:vstov4="urn:schemas-microsoft-com:vsto.v4"><vstov4:customization><vstov4:appAddIn application="Excel" loadBehavior="3" keyName="ModellingToolbar"><vstov4:friendlyName>AnalyticsToolbar</vstov4:friendlyName><vstov4:description>ModellingToolbar</vstov4:description><vstov4.1:ribbonTypes xmlns:vstov4.1="urn:schemas-microsoft-com:vsto.v4.1"><vstov4.1:ribbonType name="AnalyticsToolbar.AnalyticsToolbar, ModellingToolbar, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /></vstov4.1:ribbonTypes></vstov4:appAddIn></vstov4:customization></vstov4:customizations></vstav3:application></vstav3:addIn><publisherIdentity name="CN=PWCAU\Carl Gabel" issuerKeyHash="44fc7b7d4e21f7f9cc5d017925abeb59f4a78bc2" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><DigestValue>opzHoPo7dXCZr6V377pR04PKyUE=</DigestValue></Reference></SignedInfo><SignatureValue>gNkVsa1lwvv6QxPQoTa/YumEQ2SfUxuqFC6DzavZCsaythQCVyaWJyOvWx23JbaVbufX1gBm/GlaMLCvBLbQH6tsg3jCXSJdOeVrjL5mctOdG8qHC7bR/lmBvxxA4ZEiA3gl+pdygPa8kVpxHtH2piCplNj5UaM2/hfKbnPyAlM=</SignatureValue><KeyInfo Id="StrongNameKeyInfo"><KeyValue><RSAKeyValue><Modulus>xIizsL+NiItZvTDRLA2vitpQk6l9QBY0VUPMgm0bX0tvxNeskK2oW4b5SjGLVKG8I0g7thcRSWAYpgnjt3KSCYjZ613LNRsyUr3mZtaWt2G0RyvfaJR7X9rlD16ucCcr3sl5VBg29nBAxzhCD3jDGV++1Lan7AAQsmKWE3Jpff0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><msrel:RelData xmlns:msrel="http://schemas.microsoft.com/windows/rel/2005/reldata"><r:license xmlns:r="urn:mpeg:mpeg21:2003:01-REL-R-NS" xmlns:as="http://schemas.microsoft.com/windows/pki/2005/Authenticode"><r:grant><as:ManifestInformation Hash="41c9ca83d351baef77a5af9970753bfaa0c79ca2" Description="" Url=""><as:assemblyIdentity name="ModellingToolbar.dll" version="0.8.2.36" publicKeyToken="62c614bc780ff547" language="neutral" processorArchitecture="msil" type="win32" /></as:ManifestInformation><as:SignedBy /><as:AuthenticodePublisher><as:X509SubjectName>CN=PWCAU\Carl Gabel</as:X509SubjectName></as:AuthenticodePublisher></r:grant><r:issuer><Signature Id="AuthenticodeSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><DigestValue>2xMGBuysB39GSTThonM9Ybf3vw8=</DigestValue></Reference></SignedInfo><SignatureValue>ugsaiD7DK5KgULmz7xQSSQhWVo1kmnxXPAar6XBRiqGs6kkSaiNAcDLIp9e59jRj5fLrPIldPVXVd5PFbYLGCP+wxt9NF3CmG3PUoMt6jAqQrIFczQfAxbQGBLatPgqs0qJyIJHP9IcqzDwc5odQWEkm6L4oD/eO13L3gbLpwME=</SignatureValue><KeyInfo><KeyValue><RSAKeyValue><Modulus>xIizsL+NiItZvTDRLA2vitpQk6l9QBY0VUPMgm0bX0tvxNeskK2oW4b5SjGLVKG8I0g7thcRSWAYpgnjt3KSCYjZ613LNRsyUr3mZtaWt2G0RyvfaJR7X9rlD16ucCcr3sl5VBg29nBAxzhCD3jDGV++1Lan7AAQsmKWE3Jpff0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><X509Data><X509Certificate>MIIB2TCCAUKgAwIBAgIQF2tBiDEQk59Hb2/VpAmPszANBgkqhkiG9w0BAQUFADArMSkwJwYDVQQDHiAAUABXAEMAQQBVAFwAQwBhAHIAbAAgAEcAYQBiAGUAbDAeFw0xMzAyMTMyMzM4NTNaFw0xNDAyMTQwNTM4NTNaMCsxKTAnBgNVBAMeIABQAFcAQwBBAFUAXABDAGEAcgBsACAARwBhAGIAZQBsMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEiLOwv42Ii1m9MNEsDa+K2lCTqX1AFjRVQ8yCbRtfS2/E16yQrahbhvlKMYtUobwjSDu2FxFJYBimCeO3cpIJiNnrXcs1GzJSveZm1pa3YbRHK99olHtf2uUPXq5wJyveyXlUGDb2cEDHOEIPeMMZX77UtqfsABCyYpYTcml9/QIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADCjJbyqFb8aoolbfMrWqO7Gad8VG4Wz1hFgRvdSUXfOB4L6qQ5HO+XRgI3cqIeYWWrdJkHEUcFGXGAbhfFB8Tvrfsw7G1y5XHY6gqDEniT19WtIVuhlKFh3RAegE8cHUnUF1SQMJmaA1FVvPwDpb+3U6kphBw0Wv9MaNFnxxGDC</X509Certificate></X509Data></KeyInfo></Signature></r:issuer></r:license></msrel:RelData></KeyInfo></Signature></asmv1:assembly>
And I have signed the manifest as described in the
walkthrough. This was working I'm just not sure what I've done to break it.