使用Delphi进行本机Metro应用程序开发的资源

时间:2012-03-11 07:35:24

标签: delphi winapi windows-8 microsoft-metro windows-runtime

网上有哪些资源可以帮助原生Metro应用开发开始 Delphi (Win32)?

到目前为止,我发现MSDN简介 Getting started with Metro style apps ,它链接到可用的API集,包括两个本机API:

  • Windows Runtime WinRT) - “操作系统内置的本机API。 Metro风格应用的基础。在C ++中实现并受支持 JavaScript,C#,Visual Basic和C ++以一种自然而然的方式 每种语言“。
  • Win32 and COM for Metro style apps - “Win32的子集 和Metro API,你可以在Metro风格的应用程序中使用“.Quote:
  

Metro风格应用可以使用Win32和COM API的子集。这个   选择API子集来支持Metro风格的关键场景   Windows运行时,HTML / CSS尚未涵盖的应用程序,   或其他受支持的语言或标准。 Windows应用程序   认证工具包可确保您的应用仅使用该子集   Win32和COM API。


附注:根据Metro closed on January 8, 2012博客,第一次 Metro应用竞赛已经Windows Store,获胜者已经introduced 2月底 - 这些地铁应用已通过Windows 8 Consumer Preview提供。

2 个答案:

答案 0 :(得分:14)

Thom Gerdes在2011年12月14日写了这篇博客文章:

<强> Writing Hello World for WinRT in Delphi

  

关于开发Native的信息相对较少   Metro应用程序,尤其适用于那些语言以外的语言   Microsoft已提供(C ++,C#和JavaScript)的预测。   其他语言,包括Delphi,需要创建自己的语言   预测才能有效地使用它们。我去过   调查让Delphi为WinRT生成本机应用程序。

他的文章 Hello World: Hooking events 展示了如何使用Metro&#34;多播代理&#34; Delphi的事件处理程序。

来源可在https://github.com/tgerdes/DelphiWinRT

获取

答案 1 :(得分:3)

围绕此主题有一些新的博客和论坛文章,指出API使用的问题导致MS应用商店的应用程序失去资格:

Why no native WinRT support in Delphi XE3? - 引用forum post by Allen Bauer

  

我们非常热衷于使用原生的Delphi&amp; amp; C ++代码。   现在,围绕WinRT太空中心的问题围绕着   事实上许多操作系统提供的API是任何人都需要的   实施他们自己的语言RTL实际上是禁止的,除非   你是VC ++ RTL DLL。你知道,像RtlUnwind这样的小东西   用于内存管理的异常处理和VirtualAlloc(等)...   将自动从您的应用程序中调用这些API   取消您的申请不属于“官方”WinRT申请   能够通过MS应用程序商店提供。

另见: Third-party compilers locked out of Windows Runtime development

另一方面,这个official Microsoft presentation包含一个

的陈述
  马丁(洛弗尔)明确表示,我们不仅需要语言设计师和   实施者将WinRT添加到他们的目标平台列表中   语言和工具链,但我们会提供帮助和建议。