From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.107.11.42 with SMTP id v42mr27071ioi.75.1496366619595; Thu, 01 Jun 2017 18:23:39 -0700 (PDT) X-Received: by 10.157.45.132 with SMTP id g4mr101480otb.0.1496366619566; Thu, 01 Jun 2017 18:23:39 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!67no542549itx.0!news-out.google.com!k7ni2475itk.0!nntp.google.com!67no542543itx.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 1 Jun 2017 18:23:39 -0700 (PDT) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=144.132.203.17; posting-account=wavAeAoAAAAZF_sXSZepBukuPCBO0Zqt NNTP-Posting-Host: 144.132.203.17 User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <7d1796c7-3492-4f19-ac6c-27c70e486d59@googlegroups.com> Subject: Microsoft UWP/WinRt From: alby.gamper@gmail.com Injection-Date: Fri, 02 Jun 2017 01:23:39 +0000 Content-Type: text/plain; charset="UTF-8" Xref: news.eternal-september.org comp.lang.ada:46878 Date: 2017-06-01T18:23:39-07:00 List-Id: Hello Ada community Would anyone be interested in a set of Ada bindings to the new Microsoft UWP/WinRT api ?. This would enable Ada to be used to develop native Windows Store applications and also allow parts of the Api to be used from Desktop applications as well. (Note, as documented by Microsoft, only a subset of the WinRT api can be used by traditional desktop applications) Below is a very simple sample of what the bindings would look like procedure Test4 is procedure ConnectAsync_Callback (asyncInfo : Windows.Foundation.IAsyncAction ; asyncStatus : Windows.Foundation.AsyncStatus) is Hr : Windows.HRESULT := 0; m_RetVal : aliased Windows.Void; begin Hr := asyncInfo.GetResults(m_RetVal'access); Put_Line("Callback Invoked - connected to www.microsoft.com"); end; Hr : Windows.HRESULT := 0; m_RetVal : aliased Windows.Void; m_HostNameFactory : HostNameFactory; m_IHostName : IHostName; m_StreamSocket : StreamSocket; m_IAsyncAction : IAsyncAction; m_AsyncActionCompleted : AsyncActionCompletedHandler := new AsyncActionCompletedHandler_Interface(ConnectAsync_Callback'access); begin m_IHostName := m_HostNameFactory.CreateHostName(To_String("www.microsoft.com")); m_IAsyncAction := m_StreamSocket.ConnectAsync(m_IHostName, To_String("http")); Hr := m_IAsyncAction.put_Completed(m_AsyncActionCompleted, m_RetVal'access); delay 5.0; m_StreamSocket.Close; end;