Microsoft KB Archive/129064

From BetaArchive Wiki

FIX: MIDL 2.0 Does Not Handle VAX Floating Point Numbers

Q129064



The information in this article applies to:


  • Microsoft Win32 Software Development Kit (SDK), version 3.5





SYMPTOMS

RPC applications (client and server) built using MIDL 2.0 (shipped with Windows NT version 3.5) may get spurious characters or report memory violations when dealing with VAX floating point numbers.



RESOLUTION

There are two possible resolutions to this problem:

  • Use MIDL 1.0 (shipped with Windows NT version 3.1) to build RPC client and server applications.


-or-

  • On the VAX side, use a compiler switch to make sure the application represents its floating point numbers in IEEE format.



STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was corrected in Windows NT version 3.51.



MORE INFORMATION

Note that Microsoft RPC is binary compatible with DCE RPC. There are four types of representations for floating point numbers: IEEE, VAX, IBM, and CRAY. An application built using MIDL 1.0 can recognize IEEE and VAX representations but not IBM and CRAY. Applications built using MIDL 2.0 can recognize only IEEE representaion as mentioned above. Both, MIDL 1.0 and 2.0, use IEEE representations to send data.

Additional query words:

Keywords : kbnetwork kbAPI kbOSWinNT350bug kbOSWinNT351fix kbRPC kbSDKPlatform kbGrpDSNet
Issue type : kbbug
Technology : kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWin32sSearch kbWin32SDK350


Last Reviewed: January 8, 2000
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.