HOWTO: Passing Optional Parameters When Calling a Function

ID: Q238981


The information in this article applies to:
  • Microsoft Visual C++, 32-bit Editions, versions 4.0, 5.0, 6.0
  • Microsoft Office 97 for Windows
  • Microsoft Office for Windows 95, version 7.0
  • Microsoft Outlook 98


SUMMARY

When you call a method that has optional parameters from Visual C++, you cannot omit the optional parameters. You need to pass a special VARIANT instead.


MORE INFORMATION

Some methods have "optional" parameters. In Visual Basic, you can omit them when calling the method. However, when calling with Visual C++, you have to pass a special VARIANT whose .vt field has the value VT_ERROR, and .scode field has the value DISP_E_PARAMNOTFOUND. That is:


      // VARIANT used in place of optional-parameters.
      VARIANT varOpt;
      varOpt.vt = VT_ERROR;
      varOpt.scode = DISP_E_PARAMNOTFOUND;  
This is what Visual Basic is doing behind-the-scenes.

Additional query words:

Keywords : kbVC
Version : WINDOWS:97; Win95:7.0; winnt:4.0,5.0,6.0
Platform : Win95 WINDOWS winnt
Issue type : kbhowto


Last Reviewed: October 29, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.