Nhiều bạn bị lầm tưởng quá!!!
Source code có thể là bất kỳ ngôn ngữ nào, native hoặc có máy ảo.
Tập tin .exe là tập tin chạy chương trình trên Windows, nó có thể được tạo ra từ bất kỳ source code nào. Nên nói "tập tin .exe chạy được trên RT" là sai.
Nếu máy ảo của ngôn ngữ viết ra tập tin .exe đó có hỗ trợ ARM thì tập tin đó mới chạy được trên RT. Còn nếu là ngôn ngữ native, thì không thể nào chạy được trên RT. Bởi ngôn ngữ native khi được build trên x86 nó sẽ tạo ra mã máy trực tiếp của x86, mà cái này trên ARM hoàn toàn không có. Giống như 1 người nói tiếng Việt, không biết tiếng Anh mà bị quăng vô 1 đất nước nói tiếng Anh, nhưng không có ai biết tiếng Việt, cũng không có bất kỳ một công cụ nào giúp chuyển ngữ (từ điển, người phiên dịch, công cụ phiên dịch,...).
Thật ra .exe chỉ là phần mở rộng để trình shell biết nó là loại chương trình gì mà thôi. Vậy nên từ thưở DOS, rồi Windows 3.x, 9x, NT tới giờ là Windows 8, và cả .NET thì M$ luôn dùng đuôi exe cho các file thực thi. Nhưng không có nghĩa chương trình dịch cho 9x thì chạy được trên DOS, hay dịch cho NT thì chạy được trên 9x, dù trong trường hợp này chúng vẫn dùng chung tập mã nhị phân (vì dịch trên cùng dòng CPU x86/64). Đặc biệt với các chương trình .NET, chúng không được dịch ra mã máy mà là mã trung gian của .NET, khi chạy trên nền nào mã này mới được diễn dịch thành mã máy của nền tảng đó. Bản thân Windows 8 hỗ trợ .NET nên nó hoàn toàn có khả năng chạy các chương trình .NET được viết trước đây (với điều kiện tương thích phiên bản), vì nó sẽ dịch mã .NET thành mã ARM, còn các chương trình x86, vốn không thể được diễn dịch sang mã ARM sẽ không thể chạy được.
cái lý do MS làm vậy là để HĐH chạy mượt trên cấu hình chip ARM, bây giờ mà đòi chạy W8 RT như W8 pro thì : chậm, lag, giật ... mấy bạn có đồng ý ko =.= ...
Xem những công cụ mà sau khi Jb được hâu hết để hỗ trợ IT làm việc thôi, để xem thời gian sau như thế nao, nhưng chắc 1 điêu app thuần x86 không thể nào chạy trên ARm