Problem on windows 8 metro style app

Hi everyone , we’re current developing a small game on windows 8 metro style using cocos2d-x. A great thing is that we finally finish our game and we about to publish it into windows store.

But the problem is when we run " Windows App Certification Kit " test on our game. It tell us that our app has failed. Here is the problem

◦API CreateMutexA in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API GetModuleFileNameA in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API GetModuleHandleA in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API GetVersionExA in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API InitializeCriticalSection in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API Sleep in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API TlsAlloc in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API TlsGetValue in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API TlsSetValue in kernel32.dll is not supported for this application type. theColors.exe calls this API.
◦API WaitForSingleObject in kernel32.dll is not supported for this application type. theColors.exe calls this API.

And due to our research that win RT on metro don’t support some of win 32 APIs ? So cocos2d-x cant make game run on metro right now ? If not why it still run perfectly on PC and tablet also =.= so confusing , can anyone explain it for me =.= and with this result , our game will fail a MS test to publish to the store right ?

p/s : sorry about my bad english btw =.=

Problem is fixed :slight_smile: it’s because the problem when creating project. We’ve did it in the wrong way.

Could you please post more details about how to solve this problem? I have the same issue.

Thanks!

We download a sample project that cocos2d-x team had posted , and adding our source code to avoid that problem :slight_smile: We still didn’t find out why our project make that error.

And now we’ve meet the problem with the native image =.= still cant passed WACK test. Anyone have same problem with me ?

As I already posted in another thread (http://www.cocos2d-x.org/boards/6/topics/12896), this is caused by libxml2 which uses restricted kernel32.dll calls. I really would like to hear as well, if there are any plans on replacing libxml2 with another method of xml parsing that doesn’t violate app cert guidelines

Apparently I did not do my research right:
On github there is a dev branch that replaced libxml2 with tinyxml. I guess that should fix the problem

Thanks about the informations , What about the Problem of Generator a native image ? Have you guys meet it ? And how could we do to fix it so it can passed the WACK test ?

It means that some public type (I think it usually is DirectXRender, but I am not too sure, use http://www.microsoft.com/en-us/download/details.aspx?id=30150 to check) is not in the namespace of your app. You just have to wrap it in there

More info:
http://support.microsoft.com/kb/2716152/en-us

Sören, Thanks for the heads up! I found your original post, but I thought that Vinh solved it in another way. As you pointed out, the dev branch solves the problem.

Vinh, I tested the dev branch as Sören suggested and now the application passes the WACK tests, including the one you mentioned in your last post.

Hey im using cocos2dx 2.2.5 and getting the same error. Can you post the link of the version that passes the WACK test?