2012-03-01 22 views
6

Vorrei chiarire alcuni punti su WinRT e dove .NET si adatta in relazione ad esso. Il seguente è un insieme di istruzioni che ritengo essere vero ... correggetemi dove sono sbagliato:WinRT e .NET chiarimenti (s)

  1. WinRT è un COM separato esposto API native object-oriented scritta in C++ che non si è costruito in cima il vecchio Win32 basato su C: è totalmente separato.
  2. WinRT almeno ora può essere utilizzato SOLO per la parte Metro di Windows 8 e Win32 NON può essere utilizzato per le app Metro. Un'applicazione in Win8 può essere desktop o Metro e un'applicazione non può disegnare su entrambe le API. È l'uno o l'altro.
  3. Il desktop/server .NET tradizionale (basato su Win32) continuerà come al solito, ma c'è un NUOVO .NET Framework ridotto (come il profilo Compact Framework/client o Silverlight) costruito su WinRT per l'utilizzo in Metro mondo. In questo modo C# e VB.NET verranno eseguiti nel mondo WinRT: NON è lo stesso framework .NET installato per desktop/server. L'interfaccia utente è stata eseguita utilizzando una derivata XAML.
  4. Le app Metro possono essere create anche utilizzando C++ nativo, sempre utilizzando XAML per l'interfaccia utente. Che dire di C++/CLI? Che dire di altre lingue .NET meno popolari là fuori?
  5. Le app Metro possono essere create anche utilizzando HTML5/CSS3/Javascript. Considero che il sistema Metro ha un nuovo motore di rendering e di esecuzione creato per eseguire queste app: la mia comprensione è che queste non possono essere eseguite in un browser come IE, quindi sono app, non pagine web.
  6. Metro IE non esegue plug-in, quindi non c'è Silverlight nel mondo Metro.
  7. I dispositivi basati su ARM eseguiranno SOLO Win8 in modalità Metro.
+0

7. è parzialmente sbagliato: http://arstechnica.com/microsoft/news/2012/02/windows-8-on-arm-the -desktop-is-there-sos-office-but-not-much-more.ars (Il desktop sarà tecnicamente disponibile, ma solo a Microsoft.) – millimoose

risposta

6
  1. Quasi destra, internamente WinRT ancora fa uso di alcune chiamate Win32 ma alcune chiamate API sono nuovi e scritto da zero.

  2. WinRT può essere utilizzato solo in metropolitana, ma sottoinsieme di chiamate Win32 sono ancora disponibili in metropolitana.

  3. Vero. La parte XAML ora utilizza l'implementazione WinRT.

  4. C++/CLI non è supportato in Metro. Per ora è solo C#/VB.Net su Metro.

  5. Vero.

  6. Corretto.

  7. No, sebbene ARM abbia un desktop, è limitato a MS Office, IE ed Explorer.

EDIT

Aggiornamento sulla base dei commenti qui sotto.

  1. Un sottoinsieme di API WinRT che è possibile utilizzare dal desktop.

  2. Il rendering e il motore Javscript sono uguali a quelli utilizzati in IE 10.Ma l'applicazione stessa non sarà eseguibile separatamente all'interno di Internet Explorer

+0

Per la seconda domanda, non credo che @iaimtomibehave sia corretto. Se si controlla il blog post di Jeff Richter http://www.wintellect.com/CS/blogs/jeffreyr/archive/2011/09/20/using-the-windows-runtime-from-a-non-metro-application. aspx vedrai che è solo lo studio visivo che sta bloccando l'uso di WinRT dalle applicazioni .NET. – btlog

+0

Interessante. Quale sarebbe l'uso del mondo reale di qualcosa di simile però? – MrLane

+0

5 è in realtà "false": le app HTML5/CSS/Javascript utilizzano il motore di rendering Trident e il motore javascript di Chakra. È lo stesso motore di rendering e JS utilizzato da internet explorer. @btlog: esiste un sottoinsieme di API winrt che possono essere richiamate dal desktop, non so perché non è stato possibile richiamare quelle da C# –

Problemi correlati