winapi - Windows 8 ARM是否也称为 "Windows RT"是否有第三方开发人员可以使用Winapi(win32)?

标签 winapi api arm windows-8

Windows 8 for ARM,也称为Windows RT,是否具有Win32 API的等效功能?

(我不是说它是否可以运行Win32 x86代码,而是要它具有可供第三方开发人员使用的Win32 API。)

最佳答案

是的,ARM版本将支持与x86和x64构建相同的API,在诸如异常处理之类的特定于体系结构的东西上可能略有不同。

例如,这是ARM版本的msvcrt110.dll从kernel32导入的API的列表:

Setting environment for using Microsoft Visual Studio 2010 x86 tools.
Microsoft (R) COFF/PE Dumper Version 10.00.40219.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file arm_msvcr110d_win8.pe

File Type: DLL

  Section contains the following imports:

    KERNEL32.dll
              100E4000 Import Address Table
              1012DA80 Import Name Table
                     0 time date stamp
                     0 Index of first forwarder reference

                  108 DecodePointer
                  12E EncodePointer
                  498 RtlPcToFileHeader
                  425 RaiseException
                  269 GetModuleFileNameA
                  26A GetModuleFileNameW
                  1AA FreeEnvironmentStringsW
                  26D GetModuleHandleExW
                  2A1 GetProcAddress
                  160 ExitProcess
                  3C7 MultiByteToWideChar
                  258 GetLastError
                  26E GetModuleHandleW
                  2C4 GetStdHandle
                  5C1 WriteFile
                  1D3 GetCommandLineA
                  1D4 GetCommandLineW
                  19D FlsGetValue
                  19E FlsSetValue
                  21A GetCurrentThreadId
                  [...]
                  4B1 SetConsoleCtrlHandler
                  361 IsDebuggerPresent
                  2F7 GetTickCount64
                  3F0 OutputDebugStringA
                  38C LCMapStringA
                  232 GetEnvironmentVariableA
                  233 GetEnvironmentVariableW
                  36E IsValidLocaleName
                  38D LCMapStringEx
                  339 HeapReAlloc
                  33B HeapSize
                  338 HeapQueryInformation

如您所见,所有这些都是标准的Win32东西。

另请参阅http://getwired.com/2011/09/20/win32-the-reports-of-my-death-are-greatly-exaggerated/

关于winapi - Windows 8 ARM是否也称为 "Windows RT"是否有第三方开发人员可以使用Winapi(win32)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8254846/

相关文章:

c++ - 如何使用默认播放软件在 Windows 上开始播放 DVD?

c++ - 在保持透明背景的同时调整 HBITMAP 的大小

ios - 如何将 JSON 提取到 Swift 到 tableView 作为部分和行?

c - 嵌入式设备的服务器架构

c - GNU ARM 中 get_pc() 的声明在哪里?

c++ - 写入 C :\Program Files 中包含的文件夹的文件名

c++ - FILE_NOTIFY_INFORMATION 不支持 Utf-8 文件名

api - 如何从 Yelp API 请求更大的图像?

php - Nuxt 与 laravel Sanctuary 收到 "Unauthenticated"消息

arm - ELF文件和bin文件有什么区别?