RegDBGetKeyValueEx函数:

   string szKey,svValue;
   NUMBER nvSize;

   RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
   szKey = "\\SOFTWARE\\Wow6432Node\\Office\\"+IFX_PRODUCT_VERSION;
   szName1 = "Outlook";  
   RegDBGetKeyValueEx ( szKey, szName1, REGDB_STRING, svValue, nvSize );


报错:

   error  1 numeric value required


   对于REGDB_STRING不能直接写于RegDBGetKeyValueEx函数中。需要一个变量来代替REGDB_STRING

   改成:

   string szKey,svValue;
   NUMBER nvSize,nvType;

   RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
   szKey = "\\SOFTWARE\\Wow6432Node\\Office\\"+IFX_PRODUCT_VERSION;
   szName1 = "Outlook";

   nvType = REGDB_STRING;  
   RegDBGetKeyValueEx ( szKey, szName1, nvType, svValue, nvSize );


参与文档:http://community.flexerasoftware.com/showthread.php?105759-RegDBGetKeyValueEx-compile-error