The information in this article applies to:
SUMMARYYou can write information directly to the Windows 95, Windows NT, or Win32 Registry. The Windows Registry is the suggested place for 32-bit applications to store application information. Previous versions of Windows used .INI files for this purpose. This article gives a brief description of the Windows Registry and the steps necessary to write information to it programatically. MORE INFORMATIONThe following information comes from Chapter 10 of the Windows NT Resource Kit: The Registry is analogous to the .INI files used under Windows 3.1, with each key in the Registry similar to a bracketed heading in an .INI file, and entries under the heading similar to values in the Registry. However, Registry keys can contain subkeys, while .INI files do not support nested headings. Registry values can also consist of executable code, rather than the simple strings representing values in .INI files. And individual preferences for multiple users of the same computer can be stored in the Registry, which is not possible with .INI files. Windows NT RegistryThe Registry is a database of keys and values. The Windows NT Registry contains four primary keys:
Windows 95 RegistryWindows 95 adds a couple more primary keys:
It is good idea for applications to store version specific information in the HKEY_LOCAL_MACHINE\SOFTWARE branch in this format:
The example code in this article shows one way to register an application
name and version.
Win32s RegistryThe Win32s Registry is limited to only one hive, HKEY_CLASSES_ROOT, and all keys are children of that hive. Any information placed in the Win32s Registry should be placed in a child key of HKEY_CLASSES_ROOT instead of HKEY_CLASSES_ROOT (used in Windows 95 and Windows NT).Sample CodeThe following code illustrate the ability to create a new registry key by using the Windows API RegCreateKeyEx() and to assign a value to that key by using RegSetValueEx. These 32bit functions are first prototyped using the DECLARE command; then they are available to be called directly. For more information, please search for DECLARE - DLL in the Help menu.NOTE: Some constants are declared with definitions taken from the appropriate Microsoft Visual C++ header files.
NotesYou can run the Registry Editor to see the registry interface and check that your key was created successfully in the HKEY_LOCAL_MACHINE\SOFTWARE section. In Windows NT, you can find it in the Winnt\System32\regedt32.exe directory. In Windows 95, you can find it in the Win95\Regedit.exe directory.For more information, please see the Win32API Help file shipped with Visual FoxPro. Search for RegCreateKeyEx() and RegSetValueEx() as well as the Reg.h and Winnt.h header files to find some of the constant definitions used in the code. To remove these values, you can use the RegDeleteKey() and RegDeleteValue() functions. Additional query words: Declare DLL API
Keywords : kbcode kbnokeyword kbVFp300 kbVFp500 kbVFp600 |
Last Reviewed: July 27, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |