windows - error 0x80070005: Tilføjelse af en flise mislykkedes med uventet fejl, der kørte WACK på Jenkins

Indlæg af Hanne Mølgaard Plasc

Problem



Får 'fejl 0x80070005: Tilføjelse af en flise mislykkedes med uventet fejl' her, mens du forsøger at køre appcert (WACK) på et program, der IKKE er installeret i en Jenkins-session, der udfører en Windows-batch-kommando. Jeg har skrevet en simpel C # wrapper til at ringe appcert i forhøjet brugertilstand. Wrapper og grundlæggende kommandolinje arbejde uden for Jenkins på samme boks i et unelevated cmd vindue ... ridser hovedet ...


"C:Program Files (x86)Windows Kits10App Certification Kitappcert.exe" reset

if \%errorlevel\% neq 0 exit /b \%errorlevel\%

"C:Program Files (x86)Windows Kits10App Certification Kitappcert.exe" test -appxpackagepath \%WORKSPACE\%UWP\_0.9.\%BUILD\_NUMBER\%.0\_x86\_x64\_arm.appxbundle -reportoutputpath \%WORKSPACE\%wack.xml

if \%errorlevel\% neq 0 exit /b \%errorlevel\%



16:32:04 Successfully reset the testing configuration.

16:32:11     Beginning execution of task Detect app type from package.

16:32:11     Task Detect app type from package execution result was success.

16:32:11     Note: Test application type - UapApp.

16:32:11     Beginning execution of task Extract files from package.

16:32:11     Beginning execution of task Performs AppX deployment/cleanup in the IDE scenario..

16:32:11     Task Extract files from package execution result was success.

16:32:11 Root "Trusted Root Certification Authorities"

16:32:11 Signature matches Public Key

16:32:11 Related Certificates:

16:32:11 

16:32:11 Exact match:

16:32:11 Element 7:

16:32:11 Serial Number: 1b659911670d2b9f436f7b922e12ed51

16:32:11 Issuer: CN=ED346674-0FA1-4272-85CE-3187C9C86E26

16:32:11  NotBefore: 1/10/2017 4:01 PM

16:32:11  NotAfter: 1/10/2018 10:01 PM

16:32:11 Subject: CN=ED346674-0FA1-4272-85CE-3187C9C86E26

16:32:11 Signature matches Public Key

16:32:11 Root Certificate: Subject matches Issuer

16:32:11 Cert Hash(sha1): 7a 5f 2f 31 7a 88 82 fd e5 12 f6 fb 2d 37 46 1f 29 ff 
01 ef

16:32:11 

16:32:11 Certificate "ED346674-0FA1-4272-85CE-3187C9C86E26" already in store.

16:32:11 CertUtil: -addstore command completed successfully.

16:32:11     Task Performs AppX deployment/cleanup in the IDE scenario. 
execution result was failure.

16:32:11 

16:32:11 error 0x80070005: Adding a tile failed with unexpected error.

Bedste reference


Jeg kan ikke kontrollere det selv, men sandsynligvis er kommandolinjen herunder med manglende dobbelt citater årsagen til fejlen.


"C:Program Files (x86)Windows Kits10App Certification Kitappcert.exe" test -appxpackagepath \%WORKSPACE\%UWP\_0.9.\%BUILD\_NUMBER\%.0\_x86\_x64\_arm.appxbundle -reportoutputpath \%WORKSPACE\%wack.xml


Værdien af ​​miljøvariabel WORKSPACE, der er refereret to gange med \%WORKSPACE\%, indeholder den fulde sti til den aktuelle arbejdspladsmappe i det nuværende Jenkins-job.


Og jeg antager, at denne mappebane indeholder 1 eller flere mellemrum, der kræver at omslutte begge parameterstrenger i dobbelt citater, der skal sendes korrekt til appcert.exe.


I det tilfælde er denne kommandolinje absolut bedre:


"\%ProgramFiles(x86)\%Windows Kits10App Certification Kitappcert.exe" test -appxpackagepath "\%WORKSPACE\%UWP\_0.9.\%BUILD\_NUMBER\%.0\_x86\_x64\_arm.appxbundle" -reportoutputpath "\%WORKSPACE\%wack.xml"


Imidlertid fandt jeg med en meget enkel og hurtig søgning med min foretrukne www-søgemaskine siden Fejl 0x80070005 med Windows App Certification Kit blandt mange andre, hvor der er skrevet, at fejlkode 0x80070005 betyder bogstaveligt ' Adgang nægtet ' på en ressource. [7]