Maximize your applications' NT compatibility

Life was simple before Microsoft released Windows NT. Most users had only 16-bit DOS and Windows applications that ran only on Intel processors. NT supports most 16-bit DOS and Windows applications and runs 32-bit native applications on multiple hardware architectures, such as Intel, Alpha, and MIPS.

In NT environments, application compatibility and support can be confusing. Users waste time and money determining which applications are NT compatible, and they waste time troubleshooting application compatibility problems. Users often ask the following questions about running Win32 applications on NT.

What is a Win32 application?

A Win32 application is a 32-bit application that meets Microsoft's Win32 API standard. This standard ensures that applications can take advantage of Windows features such as graphics, window management, memory management, file I/O, security, networking, and threading. Win32 applications run on one processor or multiple processors and on multiple hardware architectures.

Why do different versions of the Win32 API exist?

An advantage of developing an application to the Win32 API standard is that you can deploy the application to any operating system (OS) that adheres to the standard. To accommodate architectural differences in OSs, subsets (or flavors) of the Win32 API are necessary. Wherever possible (as the OSs' architectures allow), each Win32 API flavor shares a common set of APIs. For example, Windows NT and Windows 95 support multithreaded applications. The Win32 API flavors for NT and Win95 offer the same functions to create and manage threads. In contrast, NT supports native multithreading, but Windows 3.1 does not. The Win32 API subset on Windows 3.1 does not support the Win32 functions for creating and managing threads.

To help differentiate Win32 API flavors, Microsoft established a naming convention in which a trailing character follows the name Win32. For example, Win32s is the Win32 subset for 32-bit applications that run on Windows 3.1. For more detailed documentation about the different flavors of Win32 for each platform, see the Help files that Microsoft provides with its development tools.

The Win32 API standard also exists on non-Microsoft OSs. For example, Digital Equipment provides a Win32 interface for VMS.

What is the portable executable format?

Win32 applications are stored in the portable executable format. No matter which Win32 API flavor a developer uses to write an application, the application has this format. For example, Win32s on Windows 3.1 is a subset of Win32 under Windows NT. Windows 3.1 and NT applications share the portable executable format, so Win32s programs run natively under NT. This rule does not always apply if the machine running NT is not Intel based.

Which operating systems (OSs) run Win32 applications?

OSs that support Win32 applications include Windows NT 3.1 and later, Windows 95, Windows Consumer Electronics (Windows CE), Windows 3.1 (using Win32s), and VMS (using the Affinity program).

Can I run 16-bit DOS and Windows applications on an Alpha Windows NT system?

NT on all platforms supports 16-bit DOS and Windows 3.1 applications (also known as binary compatibility). Therefore, you can run 16-bit applications on an Alpha-based NT platform without rebuilding them.

How do developers create Win32 applications for non-Intel platforms?

To create an executable application for a non-Intel platform, you must use a compiler that supports the creation of applications for the platform. For example, Microsoft has different versions of Visual C++ for each platform. These different versions let you use the same source code to target applications for multiple platforms, such as Intel, Alpha, or a Windows Consumer Electronics (CE) device running an SH3 processor.

   Prev. page   [1] 2     next page



You must log on before posting a comment.

If you don't have a username & password, please register now.

Reader Comments

win32application on windowns XP

Anonymous User

Article Rating 1 out of 5

how do you run a program that is not win32 compatible

Anonymous User

In Quickbooks, when I try to backup to disc, I get" Not a valid win 32 application. Please help

Anonymous User

Article Rating 1 out of 5

how do you run a download not a valid win32 application

Anonymous User

how do you run a program that is not win32 compatible

Anonymous User

for some reason I keep getting an error with Win32 "Generic host for Win32" when I'm online "I have dialup" wether I click don't send the error or not it will disconnect me from the internet the effect's for window's xp IE:The task bar and everything goes back to as if was set for regular window's and then my pc goe's really sluggish and I only have Service pack 1

Anonymous User

Something keeps popping up that says "... is not a valid Win32 Appplication." If it has anything to do with it, I am trying to open the demo of the shooting game Unreal Tournament 2004. Please help!

Anonymous User

Article Rating 1 out of 5

when i put cd to autrun i find " is not avalid win32 application

hhwea111

Article Rating 1 out of 5