- Mar 21, 2013
- 49
- 0
- 0
I'm hoping an app developer can resolve this tricky question.
It's already been much complained about that although the Win32 APIs are distributed in Windows 8 and RT, Metro apps can only access a limited number of them. Crucially this list does not include functions like VirtualProtect() and VirtualAlloc() which are considered essential for the development of JIT compilers (they allow code written to data areas to be executed). This effectively prevents the development of among other things high performance third party internet browsers.
However I recently stumbled upon this blog post while discussing this problem with m.k. (developer of SNES8X and VBA8) as it is of great import when considering dynamic binary translation ("dynarec") in emulators. The author of the blog post claims that it's possible to gain access to these APIs without modifying the OS in any way just by using a C# library and still passing certification. I would be interested in the opinions of any W8/RT/WP8 developers on whether this is indeed practical, whether it is applicable just to x86 Windows 8 or can be applied to Windows RT or even (dare I say it) Windows Phone 8. I currently don't have access to a Windows 8 machine to try this on (I'm holding out until the Surface Pro is released in Europe) so I'm hoping a developer who understands this issue and its importance can help out?
It's already been much complained about that although the Win32 APIs are distributed in Windows 8 and RT, Metro apps can only access a limited number of them. Crucially this list does not include functions like VirtualProtect() and VirtualAlloc() which are considered essential for the development of JIT compilers (they allow code written to data areas to be executed). This effectively prevents the development of among other things high performance third party internet browsers.
However I recently stumbled upon this blog post while discussing this problem with m.k. (developer of SNES8X and VBA8) as it is of great import when considering dynamic binary translation ("dynarec") in emulators. The author of the blog post claims that it's possible to gain access to these APIs without modifying the OS in any way just by using a C# library and still passing certification. I would be interested in the opinions of any W8/RT/WP8 developers on whether this is indeed practical, whether it is applicable just to x86 Windows 8 or can be applied to Windows RT or even (dare I say it) Windows Phone 8. I currently don't have access to a Windows 8 machine to try this on (I'm holding out until the Surface Pro is released in Europe) so I'm hoping a developer who understands this issue and its importance can help out?
Last edited: