Attempting to embed jportable 8-171 in a windows app store application, a small number of
non-compliant files were found.
FAILED
Supported APIs
Error Found: The supported APIs test detected the following errors:
API LoadLibraryExA in kernel32.dll is not supported for this application type. jaas_nt.dll calls this API.
API UnhandledExceptionFilter in kernel32.dll is not supported for this application type. jaas_nt.dll calls this API.
API lstrlenA in kernel32.dll is not supported for this application type. jaas_nt.dll calls this API.
API wsprintfA in user32.dll is not supported for this application type. jaas_nt.dll calls this API.
API CreateFileMappingA in kernel32.dll is not supported for this application type. WindowsAccessBridge-32.dll calls this API.
API CreateFileW in kernel32.dll is not supported for this application type. WindowsAccessBridge-32.dll calls this API.
FAILED
Binary analyzer
Error Found: The binary analyzer test detected the following errors:
File Java\bin\api-ms-win-core-console-l1-1-0.dll has failed the AppContainerCheck check.
File Java\bin\api-ms-win-core-datetime-l1-1-0.dll has failed the AppContainerCheck check.
File Java\bin\api-ms-win-core-debug-l1-1-0.dll has failed the AppContainerCheck check.
File Java\bin\api-ms-win-core-errorhandling-l1-1-0.dll has failed the AppContainerCheck
what can I do about it?
edit: it seems to work (for my application) to simply remove the two cited DLLs from the package.
what hidden pitfalls might there be to this?
jPortable is just an online installer for Java to allow a user to download and extract the necessary components of Java from its regular installer. It's not its own app. I doubt the Windows App Store permits Java within their apps, but you'd need to inquire with Microsoft if they do and you'd need to inquire with Oracle if said distribution is even permitted by the Java license.
Sometimes, the impossible can become possible, if you're awesome!
I'm referring to https://sourceforge.net/projects/portableapps/files/Java%20Portable/ which
features portableapps.com prominently. When you run this installer, it installs a java distribution which
is redistributable, and doesn't require any installation on the target machine.
Please re-read what I stated above. You can only redistribute the actual binaries in accordance with Oracle's license. That's why it's a live installer. I wrote it. And I doubt Microsoft allows Java apps anyway.
Sometimes, the impossible can become possible, if you're awesome!
It turns out the AppContainerCheck is just the tip of an iceberg. The many DLLs in the java bin directory
use many forbidden apis. I suppose it's theoretically possible that Oracle would undertake to make java
acceptable to the windows store, but I'm not going to hold my breath.