How to run Windows applications on Linux

If you want to that, first you have to find out about your application:

Free Software
In this case, it is possible your software was ported to linux, and you can then install it. Either compile it from sources or use the packages from your distribution (if any).

If the software was not yet ported and you don't want to help porting it, you can act as if it were a windows-only software.

Proprietary Software
If they do not provide packages for linux, then you have no chance to run the software on linux directly. Go to the widnows-only software section.

Windows-only proprietary
This is software designed from start to run on various versions of Windows and no other operating system.
 * use a replacement for Windows, like:
 * WINE (Wine Is Not an Emulator)
 * CrossOver Office (similar to WINE, but more completed)

This are all programs that try to rewrite the Windows API. This means, that if your program uses a single routine not well implemented, then your program wil not work well. One reason this routine is not implemented is because documentation from Microsoft is very bad written, but many programs do not use strange and not-well documented system calls, so you have a chance.

If not, look at the anti-anything_other_thean_Widnows software section.

Anti-anything other than Windows Software
This is software that more than beying written for Windows ONLY, it was written so that it is very difficult for you to run it on a replacement of Windows, even if this replacement is very well done. This is because it uses special almost-secret non-documented system calls, that ONLY Windows developpers know about. In order to implement this calls, the replacemnt of Windows must proceed with a reverse-engineering of Windows.

Here you should use an emulator, that allow you to run a copy of Windows, and then install your software on this copy of Windows. Your Windows will think he runs on a computer, he will not know it runs inside an emulator. This emulator must emulate every instruction of your computer, witch is much easier than every system call in Windows. Usually it will decrease speed a lot, up to 100 or 1000 times slower, but there are some that can run much faster, almost real time.

Here are a few: See How to run windows on linux for details.
 * Boch - (Free Software) very slow, but works well
 * QEMU - (Free Software) much faster, it is getting better now (not yet perfect for everybody)
 * VirtualBox OSE - (Free Software) fast, works well
 * vmWare (proprietary) - you must pay to create your virtual machine, but then you can run it for free using vmPlayer.

Run Windows applications on Ubuntu

From HowTo Wiki, a Wikia wiki.