# MKRREDUCE

The MKRREDUCE enumeration constants are used to specify how far the moniker should be reduced. They are used in the IMoniker::Reduce method.

    typedef enum tagMKRREDUCE
    {
        MKRREDUCE_ONE          = 3<<16,
        MKRREDUCE_TOUSER       = 2<<16,
        MKRREDUCE_THROUGHUSER  = 1<<16,
        MKRREDUCE_ALL          = 0
    } MKRREDUCE;

Elements

MKRREDUCE_ONE
  Performs only one step of reducing the moniker. In general, the caller must have specific knowledge about the particular kind of moniker to take advantage of this option.
MKRREDUCE_TOUSER
  Reduces the moniker to a form that the user identifies as a persistent object. If no such point exists, then this option should be treated as MKRREDUCE_ALL.
MKRREDUCE_THROUGHUSER
  Reduces the moniker to where any further reduction would reduce it to a form that the user does not identify as a persistent object. Often, this is the same stage as MKRREDUCE_TOUSER.
MKRREDUCE_ALL
  Reduces the moniker until it is in its simplest form, that is, reduce it to itself.

See Also

IMoniker::Reduce