The menudemo project relies really on 2 different instrument drivers: menuutil.fp and inifile.fp, the second one located in toolslib\toolbox directory.
MU_WriteRegistryInfo and MU_ReadRegistryInfo rely on the inifile instrument to read / write informations from the registry. The instrument uses a IniText variable (here treated as a global) as a general handle for a tag/value memory structure useful for storing informations in a categorized fashion. To simply use these functions you only need to define the initext variable and the key on the registry to read/write. Understanding internal behaviour of the functions implies understanding the inifile instrument driver, which is not so simple, but is not really necessary to use them.
The MRU list is recorded in HKEY_CURRENT_USER\Software\National Instruments\CVI Sample\MenuDemo registry key, in which a "FILE MenuList" subkey is created to hold filenames with keys "FilenameX" that store the pathname of the files. These addresses are hardcoded in menuutil.c source and can be tailored to suit your preferred location in the registry.
"FILE MenuList" is a parameter in MU_GetFileListFromIniFile, the same as "Filename" prefix.
The other functions of the sample are internal to the menuutil instrument, and use menulist variables (again set as global), one for each menu to populate and maintain.
Basic structure of the project is, after you have read from the registry the MRU list and placed in memory (in the area pointed to by initext variable) you work on the menus populating them, next you start your program [ RunUserInterface (); ]. From this moment on, every file-related operation involves maintaining the MRU list on the file and window menus.
At program end, you read from the menus the MRU list and save to the registry.
I hope this helps you in approaching this instrument.
Roberto