DOCERR: Write*ProfileString Declaration Incorrect in API

Last reviewed: June 21, 1995
Article ID: Q115328
The information in this article applies to:

- Professional Edition of Microsoft Visual Basic for Windows,

  version 3.0

SUMMARY

This article corrects a WritePrivateProfileString function call documentation error as described in the Windows version 3.1 API Reference help file that shipped with Microsoft Visual Basic version 3.0 for Windows.

MORE INFORMATION

The declaration is incorrectly shown as:

Declare Function WritePrivateProfileString Lib "Kernel"
                                 (ByVal lpApplicationName As String,
                                  lpKeyName As Any,
                                  lpString As Any,
                                  ByVal lplFileName As String) As Integer

The correct declaration is as follows:

Declare Function WritePrivateProfileString Lib "Kernel"
                                 (ByVal lpApplicationName As String,
                                  ByVal lpKeyName As Any,
                                  ByVal lpString As Any,
                                  ByVal lplFileName As String) As Integer

NOTE: Each Declare statement must be entered as one, single line.

Notice that the "ByVal" keyword was omitted from the second and third parameters in the online reference. [In fact, all of the "PrivateProfile" functions suffer from this omission (missing ByVal in their second argument)]. This means that the function is passing the second (lpKeyName) and third (lpString) by reference. They need to be passed by value.


Additional reference words: 3.00 docerr
KBCategory: kbref kbdocerr
KBSubcategory: RefsDoc


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: June 21, 1995
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.