4

Is it possible to install an .exe file on a Raspberry Pi running Windows 10 IoT Core, that is to say all .exe files which are supported by normal Windows? Does Windows 10 IoT core support all type .exe files?

5

When you have the source of an application (for example a program written in C) when it is compiled, the source is transformed into executable statements that the central processing unit (CPU) of the computer understands. Windows machines typically understand Intel/AMD processor instructions while the Raspberry Pi is based on the ARM processor and runs ARM instructions.

The simplest analogy I can give is to think of a C program as being a book written in Latin. For the program to be useful on your desktop PC (Intel/AMD), the book is translated into German (the native language of the PC) while for the Raspberry PI, the book is translated into French (the native language of the PI). If you take a book translated to German, it can't be read by a French only speaker nor can a book translated to French be read by a German only speaker.

  • I wonder what is that Windows for, if it can't run windows apps... totally crazy idea. – Flash Thunder Feb 4 '16 at 10:17
  • 4
    If, as a developer of something like simple kiosk or signage software, I can write one piece of code and then compile the same code for both ARM and x86, then I increase the potential market for that software with no additional retooling costs. That's pretty useful! – goobering Feb 4 '16 at 11:52
  • 2
    @FlashThunder: most ATMs are running an embedded version of Windows. They're not capable of running MS Office, but that ATM software can be recompiled to run on your shiny new i7, or dusty or Pentium III. Pretty useful, no? – Jacobm001 Feb 4 '16 at 22:13
0

Yes and No.

I agree with Kolbans analogy with to the degree of "translations".

So first question is, is the exe compiled for x86 or ARMv7? This not a foreign issue even on Linux, as you cant just take a Debian Desktop package and run it on Debian ARM. It has to be compiled to a binary (assembler) that the processor can execute. x86 & ARMv6 & ARMv7 & ARMv8 all have specific instruction sets.

Secondly what are the dependencies of the executable file?

If it is windows forms Application then it wont run because IoT does not support "Forms" but instead the Universal App XAML or DirectX - So it may try to access parts of the .NET CLI that is not supported (after trying to run)

If you create a console application that does a simple task like generate random numbers and write it to file, that will work when executed from PowerShell. As these are the CORE .NET capabilities. You cant autostart exe files on IoT though but on Enterprise you can (Intel boards)

IoT Core - Is a basic prototyping sandbox OS. You create Universal Apps using libraries supported on IoT Core with Visual Sutdio 2015 Community or better - Its does not have an amazing range of libraries at the moment but you get hardware rendered GUI, basic I/O and can even access DirectX if you wanted to.

MONO - You can install this on Debian (Raspbian) and this is much richer experience since you are not sandboxed like on IoT. When in an X windows manager, you can even run Windows Forms Application using mono myformapp.exe or console apps, or webservers.

.NET has evolved over the years, and Universal Apps is Microsoft way of trying to unify everything. So you can kind of forget about running exe files as a traditional Windows user on IoT Core - Because the name core, implies its a very basic OS.

These below require paid for licenses to run...

You can get Intel MinnowBoard MAX and instead of core use Windows 10 IoT Enterprise (Industry)... which is the same as Windows 10 for Tablet but only runs on x86 architecture, like the Atom.

Support for ARM based Windows 10 is on the way and is called Windows IoT Mobile, but its not clear if we will be able to run this on the Pi 2, with a full Windows 10 desktop or not...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.