ASSOCF enumeration

Provides information to the IQueryAssociations interface methods.

Syntax

typedef enum  {
    ASSOCF_NONE                  = 0x00000000,  
    ASSOCF_INIT_NOREMAPCLSID     = 0x00000001,  
    ASSOCF_INIT_BYEXENAME        = 0x00000002,  
    ASSOCF_OPEN_BYEXENAME        = 0x00000002,  
    ASSOCF_INIT_DEFAULTTOSTAR    = 0x00000004,  
    ASSOCF_INIT_DEFAULTTOFOLDER  = 0x00000008,  
    ASSOCF_NOUSERSETTINGS        = 0x00000010,  
    ASSOCF_NOTRUNCATE            = 0x00000020,  
    ASSOCF_VERIFY                = 0x00000040,  
    ASSOCF_REMAPRUNDLL           = 0x00000080,  
    ASSOCF_NOFIXUPS              = 0x00000100,  
    ASSOCF_IGNOREBASECLASS       = 0x00000200,  
    ASSOCF_INIT_IGNOREUNKNOWN    = 0x00000400,  
    ASSOCF_INIT_FIXED_PROGID     = 0x00000800,  
    ASSOCF_IS_PROTOCOL           = 0x00001000,  
    ASSOCF_INIT_FOR_FILE         = 0x00002000,
    ASSOCF_IS_FULL_URI           = 0x00004000,
    ASSOCF_PER_MACHINE_ONLY      = 0x00008000,
    ASSOCF_APP_TO_APP            = 0x00010000,
} ASSOCF;

Constants

ASSOCF_NONE

None of the following options are set.

ASSOCF_INIT_NOREMAPCLSID

Instructs IQueryAssociations interface methods not to map CLSID values to ProgID values.

ASSOCF_INIT_BYEXENAME

Identifies the value of the pwszAssoc parameter of IQueryAssociations::Init as an executable file name. If this flag is not set, the root key will be set to the ProgID associated with the .exe key instead of the executable file's ProgID.

ASSOCF_OPEN_BYEXENAME

Identical to ASSOCF_INIT_BYEXENAME.

ASSOCF_INIT_DEFAULTTOSTAR

Specifies that when an IQueryAssociations method does not find the requested value under the root key, it should attempt to retrieve the comparable value from the * subkey.

ASSOCF_INIT_DEFAULTTOFOLDER

Specifies that when an IQueryAssociations method does not find the requested value under the root key, it should attempt to retrieve the comparable value from the Folder subkey.

ASSOCF_NOUSERSETTINGS

Specifies that only HKEY_CLASSES_ROOT should be searched, and that HKEY_CURRENT_USER should be ignored.

ASSOCF_NOTRUNCATE

Specifies that the return string should not be truncated. Instead, return an error value and the required size for the complete string.

ASSOCF_VERIFY

Instructs IQueryAssociations methods to verify that data is accurate. This setting allows IQueryAssociations methods to read data from the user's hard disk for verification. For example, they can check the friendly name in the registry against the one stored in the .exe file. Setting this flag typically reduces the efficiency of the method.

ASSOCF_REMAPRUNDLL

Instructs IQueryAssociations methods to ignore Rundll.exe and return information about its target. Typically IQueryAssociations methods return information about the first .exe or .dll in a command string. If a command uses Rundll.exe, setting this flag tells the method to ignore Rundll.exe and return information about its target.

ASSOCF_NOFIXUPS

Instructs IQueryAssociations methods not to fix errors in the registry, such as the friendly name of a function not matching the one found in the .exe file.

ASSOCF_IGNOREBASECLASS

Specifies that the BaseClass value should be ignored.

ASSOCF_INIT_IGNOREUNKNOWN

Introduced in Windows 7. Specifies that the "Unknown" ProgID should be ignored; instead, fail.

ASSOCF_INIT_FIXED_PROGID

Introduced in Windows 8. Specifies that the supplied ProgID should be mapped using the system defaults, rather than the current user defaults.

ASSOCF_IS_PROTOCOL

Introduced in Windows 8. Specifies that the value is a protocol, and should be mapped using the current user defaults.

ASSOCF_INIT_FOR_FILE

Introduced in Windows 8.1. Specifies that the ProgID corresponds with a file extension based association. Use together with ASSOCF_INIT_FIXED_PROGID.

ASSOCF_IS_FULL_URI

Introduced in Windows 10 Anniversary Update. Specifies that the full http/https URI is being passed for target resolution. Only one of ASSOCF_INIT_FIXED_PROGID, ASSOCF_IS_PROTOCOL, or ASSOCF_IS_FULL_URI can be specified at a time.

ASSOCF_PER_MACHINE_ONLY

Introduced in Windows 10 Anniversary Update. Enforces per-machine association look-up only and avoids HKEY_CURRENT_USER.

ASSOCF_APP_TO_APP

Introduced in Windows 10 April 2018 Update. Instructs IQueryAssociations methods to include app-to-app (apps for websites, URI handlers from packaged apps) when resolving.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional, Windows XP [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Header Shlwapi.h

See also

AssocQueryKey AssocQueryString AssocQueryStringByKey

 

 

© 2017 Microsoft. All rights reserved.