2012-03-01 4 views
6

WinRT 및 .NET과 관련하여 몇 가지 사항을 설명하고자합니다.WinRT and .NET clarification (s)

  1. WinRT는 별도의 COM은 위에 구축하지 자체가 C++로 작성된 네이티브 객체 지향 API를 노출 : 내가 잘못 곳에 내가 사실로 믿고 문장의 집합입니다 다음 ... 날 수정 오래된 C 기반 Win32 : 완전히 별개입니다.
  2. WinRT는 이제 Windows 8의 Metro 부분에만 사용할 수 있으며 Win32는 Metro 응용 프로그램에 사용할 수 없습니다. Win8의 응용 프로그램은 데스크탑이나 Metro 중 하나이며 응용 프로그램은 두 API를 모두 그릴 수 없습니다. 그것은 하나 또는 다른 것입니다.
  3. 기존의 데스크톱/서버 .NET (Win32 기반)은 정상적으로 계속 진행되지만 Metro에서 사용하기 위해 WinRT에 빌드 된 Compact Framework/클라이언트 프로필 또는 Silverlight와 같은 새로운 .NET Framework가 축소되어 있습니다 세계. 이것은 WinRT 세계에서 C# 및 VB.NET이 실행되는 방식입니다. 데스크톱/서버용으로 설치된 .NET Framework와 다릅니다. UI는 XAML 파생을 사용하여 수행됩니다.
  4. 메트로 앱은 UI 용 XAML을 다시 사용하여 기본 C++을 사용하여 빌드 할 수도 있습니다. C++/CLI는 어떻습니까? 다른 덜 인기있는 .NET 언어는 어떨까요?
  5. 메트로 앱은 HTML5/CSS3/Javascript를 사용하여 만들 수도 있습니다. Metro 시스템에는 이러한 응용 프로그램을 실행하기 위해 작성된 새로운 렌더링 및 실행 엔진이 있습니다. IE와 같은 브라우저에서는 실행할 수 없으므로 웹 페이지가 아닌 응용 프로그램입니다.
  6. Metro IE는 플러그인을 실행하지 않으므로 Metro 환경에는 Silverlight가 없습니다.
  7. ARM 기반 장치는 Metro 모드에서만 Win8을 실행합니다.
+0

7. 부분적으로 잘못되었습니다. http://arstechnica.com/microsoft/news/2012/02/windows-8-on-arm-the -desktop-is-there-there-sos-office-but-not-much-more.ars (데스크톱은 기술적으로 사용할 수 있지만 Microsoft 만 가능합니다.) – millimoose

답변

6
  1. 거의 바로, 내부적으로 여전히 일부에서 Win32 호출하지만 일부 API 호출이 새로운 지상에서 작성되어 사용합니까 WinRT.

  2. WinRT는 Metro에서만 사용할 수 있지만 Metro에서는 Win32 호출의 하위 집합을 계속 사용할 수 있습니다.

  3. 참. 이제 XAML 부분에서 WinRT 구현을 사용합니다.

  4. C++/CLI는 Metro에서 지원되지 않습니다. 지금은 단지 C#/VB.Net on Metro입니다.

  5. 참.

  6. 정확함.

  7. 아니요. ARM은 데스크톱을 보유하지만 MS Office, IE 및 Explorer로 제한됩니다. 아래의 의견에 따라

편집

업데이트.

  1. 데스크톱에서 사용할 수있는 WinRT API의 하위 집합입니다.

  2. 렌더링 및 Javscript 엔진은 IE 10에서 사용 된 엔진과 동일합니다.하지만 앱 자체는 Internet Explorer 내에서 별도로 실행되지 않습니다.

+0

질문 2에 대해서는 @iaimtomibehave가 맞다고 생각하지 않습니다. Jeff Richter의 블로그 게시물 http://www.wintellect.com/CS/blogs/jeffreyr/archive/2011/09/20/using-the-windows-runtime-from-a-non-metro-application을 확인하십시오. aspx 당신은 .NET 응용 프로그램에서 WinRT의 사용을 막고있는 Visual Studio에서만 볼 수 있습니다. – btlog

+0

흥미 롭습니다. 그래도 이런 종류의 실제 사용은 어떻게 될까요? – MrLane

+0

5는 실제로 "false"입니다. HTML5/CSS/Javascript 앱은 Trident 렌더링 엔진과 Chakra 자바 스크립트 엔진을 사용합니다. Internet Explorer에서 사용하는 것과 동일한 렌더링 및 JS 엔진입니다. @btlog : 바탕 화면에서 호출 할 수있는 Winrt API의 하위 집합이 있는데 왜 C#에서 호출 할 수 없는지 모르겠다. –