cc [flag ...] file ...-lwsreg [library ...] #include <wsreg.h>
int wsreg_add_required_component(Wsreg_component *comp, const Wsreg_component *requiredComp);
int wsreg_remove_required_component(Wsreg_component *comp, const Wsreg_component *requiredComp);
Wsreg_component **wsreg_get_required_components(const Wsreg_component *comp);
The wsreg_add_required_component() function adds the component specified by requiredComp to the list of required components contained in the component specified by comp.
The wsreg_remove_required_component() function removes the component specified by requiredComp from the list of required components contained in the component specified by comp.
The wsreg_get_required_components() function returns the list of required components contained in the component specified by comp.
The wsreg_add_required_component() function returns a non-zero value if the specified required component was successfully added. Otherwise, 0 is returned.
The wsreg_remove_required_component() function returns a non-zero value if the specified required component was successfully removed. Otherwise, 0 is returned.
The wsreg_get_required_components() function returns a null-terminated array of Wsreg_component pointers that represents the specified component's list of required components. If the specified component has no required components, NULL is returned. The resulting array must be released by the caller through a call to wsreg_free_component_array(). See wsreg_create_component(3WSREG).
The relationship between two components in which one must be installed for the other to be complete is a dependent/required relationship. The component that is required by the other component is the required component. The component that requires the other is the dependent component.
The required component must be installed and registered before the dependent component can be. Uninstaller applications should check the registry before uninstalling and unregistering components so a successful uninstallation of one product will not result in another product being compromised.
Read access to the product install registry is required in order to use these functions because these relationships are held with lightweight component references that can only be fully resolved using the registry contents.
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
wsreg_add_dependent_component(3WSREG), wsreg_can_access_registry(3WSREG), wsreg_create_component(3WSREG), wsreg_initialize(3WSREG), wsreg_register(3WSREG), attributes(5)