Answered by:
WACK "Platform appropriate files" test failure

Question
-
Today I submit a new release of my Windows store app and am surprised to see it fails to pass WACK test. I have used WACK 3.1 distributed with VS2003 and my app passed all tests. Now I upgrade to WACK 3.4 and find my app fail in "Platform appropriate files" test.
I tried to figure this issue out for a while but failed, so I post my question here and hope someone could help.
First, the MSDN says
"Follow these guidelines to ensure that your app package only contains files supported by the architecture specified in the app manifest:"
But I cannot find where the architecture information (or Target Processor Architecture) is specified in the app manifest (I guess it is the file 'Package.appxmanifest'). My app is a C++ DirectX XAML app and for now it supports both Win32 and ARM platform. Each time I submitted my app to Windows store, I uploaded two files: 'myapp_x.x.xxx.x_Win32.appxupload' and 'myapp_x.x.xxx.x_ARM.appxupload'.
Second, could WACK give more specific information on which files are not compatible with Target Processor Architecture of the app? just like it does in "Supported Windows Store API" test.
Third, what are "binary or image type files"? Are they .exe, .lib, .dll files or some other file?
- Edited by Leonard Tuesday, November 11, 2014 10:06 AM
Tuesday, November 11, 2014 10:01 AM
Answers
-
I finally find the cause of the issue. It seems that WACK check the validity of every dynamic library file (.dll) in the package.In my case, my app package consists of a couple of resource files. These files are encoded in binary form and named with .dll extension. Therefore WACK may consider these files invalid. After I change the extension, all WACK tests pass.
- Marked as answer by Leonard Wednesday, November 12, 2014 10:10 PM
Wednesday, November 12, 2014 10:10 PM
All replies
-
Hi Leonard,
We have to use the latest version of WACK to validate our app.
However as I know the architecture information can be found on Configuration manager, can you validate if you have successfully set everything?
For your second question, I totally agree, there should be more information list here about your failed test, I would like suggest you to submit your idea on uservoice so that we can have improvement on WACK test report: https://wpdev.uservoice.com/forums/110705-dev-platform
"what are binary or image type files", where you get such information, or in which situation you ask such question, you can get some useful information from Internet (http://en.wikipedia.org/wiki/Binary_file). Image more looks like a iso extension.
--James
<THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
Thanks
MSDN Community Support
Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.Wednesday, November 12, 2014 3:32 AMModerator -
Thank you for your help.
As for "binary or image type files", I read this terminology from MSDN article
http://msdn.microsoft.com/en-us/library/windows/apps/jj657973.aspx.
Here is extract:
If the Target Processor Architecture for your app is Neutral processor Type, the app package cannot contain x86, x64, or ARM binary or image type files.
Wednesday, November 12, 2014 2:13 PM -
I finally find the cause of the issue. It seems that WACK check the validity of every dynamic library file (.dll) in the package.In my case, my app package consists of a couple of resource files. These files are encoded in binary form and named with .dll extension. Therefore WACK may consider these files invalid. After I change the extension, all WACK tests pass.
- Marked as answer by Leonard Wednesday, November 12, 2014 10:10 PM
Wednesday, November 12, 2014 10:10 PM -
Cool, your answer should help others who meet the same problem.
--James
<THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
Thanks
MSDN Community Support
Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.Thursday, November 13, 2014 1:36 AMModerator