Cross-Platform Application Development in Windows NT

Last reviewed: July 22, 1997
Article ID: Q100638
1.00 2.00 2.10 4.00 WINDOWS NT kbprg

The information in this article applies to:

  • Microsoft Visual C++ 32-bit Edition, versions 1.0, 2.0, 2.1 and 4.0

SUMMARY

At present, these hardware platforms support developing Win32-based applications: Intel 386 or later, MIPS R4000, DEC Alpha, and the Power PC. The text below deals with the issues involved with developing applications for all of these platforms simultaneously.

MORE INFORMATION

Due to the disparate nature of these platforms, binary compatibility is not a viable option. Therefore, Win32 provides source code compatibility. You can create a version of your application for each CPU by recompiling the source code.

However, Visual C++ 32-bit Edition does not support cross-compiling between these platforms at this time. Therefore, to develop applications for each hardware platform, you must compile the code with the tools available for each platform, such as Visual C++ for Intel, Visual C++ for MIPS, and Visual C++ for Alpha.

NOTE: Visual C++ versions 2.x and 4.0 does have a Macintosh add-on that can be used to port Win32-based applications to a native Macintosh 68K platform. It is a cross- development platform, meaning that the tools are hosted on a Windows NT machine on the Intel platform and target the Macintosh.

Be careful not to confuse source compatibility across hardware platforms (Intel, MIPS, Alpha, Power PC) with binary compatibility across application execution environments (Win16, Win32). We supports binary compatibility between application execution environments on the same hardware platform, through emulation. For example, a 16-bit Windows-based application developed for Intel hardware can run without modification on an Intel machine running Windows NT and, with the appropriate Win32s dynamic-link libraries (DLLs) and virtual devices (VxDs), a Win32-based application developed for Intel hardware can run without modification on an Intel machine running 16-bit Windows 3.1.

REFERENCES

For more information about cross platform development with the Win32 API, please see the Microsoft Win32 Software Development Kit or Visual C++ documentation.


Additional reference words: kbinf 1.00 2.00 2.10 4.00
KBCategory: kbprg
KBSubcategory: VCGenIss
Keywords : VCGenIss kbprg
Version : 1.00 2.00 2.10 4.00
Platform : NT WINDOWS


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: July 22, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.