SHELL_LINK_DATA_FLAGS 枚举 (shlobj_core.h)

指定选项设置。 与 IShellLinkDataList::GetFlagsIShellLinkDataList::SetFlags 一起使用。

语法

typedef enum {
  SLDF_DEFAULT = 0x00000000,
  SLDF_HAS_ID_LIST = 0x00000001,
  SLDF_HAS_LINK_INFO = 0x00000002,
  SLDF_HAS_NAME = 0x00000004,
  SLDF_HAS_RELPATH = 0x00000008,
  SLDF_HAS_WORKINGDIR = 0x00000010,
  SLDF_HAS_ARGS = 0x00000020,
  SLDF_HAS_ICONLOCATION = 0x00000040,
  SLDF_UNICODE = 0x00000080,
  SLDF_FORCE_NO_LINKINFO = 0x00000100,
  SLDF_HAS_EXP_SZ = 0x00000200,
  SLDF_RUN_IN_SEPARATE = 0x00000400,
  SLDF_HAS_LOGO3ID = 0x00000800,
  SLDF_HAS_DARWINID = 0x00001000,
  SLDF_RUNAS_USER = 0x00002000,
  SLDF_HAS_EXP_ICON_SZ = 0x00004000,
  SLDF_NO_PIDL_ALIAS = 0x00008000,
  SLDF_FORCE_UNCNAME = 0x00010000,
  SLDF_RUN_WITH_SHIMLAYER = 0x00020000,
  SLDF_FORCE_NO_LINKTRACK = 0x00040000,
  SLDF_ENABLE_TARGET_METADATA = 0x00080000,
  SLDF_DISABLE_LINK_PATH_TRACKING = 0x00100000,
  SLDF_DISABLE_KNOWNFOLDER_RELATIVE_TRACKING = 0x00200000,
  SLDF_NO_KF_ALIAS = 0x00400000,
  SLDF_ALLOW_LINK_TO_LINK = 0x00800000,
  SLDF_UNALIAS_ON_SAVE = 0x01000000,
  SLDF_PREFER_ENVIRONMENT_PATH = 0x02000000,
  SLDF_KEEP_LOCAL_IDLIST_FOR_UNC_TARGET = 0x04000000,
  SLDF_PERSIST_VOLUME_ID_RELATIVE = 0x08000000,
  SLDF_VALID = 0x003FF7FF,
  SLDF_RESERVED
} SHELL_LINK_DATA_FLAGS;

常量

 
SLDF_DEFAULT
值: 0x00000000
0x00000000。 未显式设置其他标志时使用的默认值。
SLDF_HAS_ID_LIST
值: 0x00000001
0x00000001。 使用 ID 列表保存了 Shell 链接。
SLDF_HAS_LINK_INFO
值: 0x00000002
0x00000002。 已保存 Shell 链接,其中包含链接信息以启用分布式跟踪。 如果目标的路径已更改,.lnk文件将使用此信息来查找目标。 它包括卷标签和序列号等信息,尽管特定的存储信息可能会从发布更改为发布。
SLDF_HAS_NAME
值: 0x00000004
0x00000004。 链接具有名称。
SLDF_HAS_RELPATH
值: 0x00000008
0x00000008。 链接具有相对路径。
SLDF_HAS_WORKINGDIR
值: 0x00000010
0x00000010。 链接有一个工作目录。
SLDF_HAS_ARGS
值: 0x00000020
0x00000020。 链接具有参数。
SLDF_HAS_ICONLOCATION
值: 0x00000040
0x00000040。 链接具有图标位置。
SLDF_UNICODE
值: 0x00000080
0x00000080。 存储的字符串为 Unicode。
SLDF_FORCE_NO_LINKINFO
值: 0x00000100
0x00000100。 阻止存储链接跟踪信息。 如果设置了此标志,则移动目标时,链接可以找到目标的可能性较小(但并非不可能)。
SLDF_HAS_EXP_SZ
值: 0x00000200
0x00000200。 链接包含可展开的环境字符串,例如 %windir%
SLDF_RUN_IN_SEPARATE
值: 0x00000400
0x00000400。 导致 16 位目标应用程序在 Windows (WOW) 上的 VDM) /Windows (单独的虚拟 DOS 计算机中运行。
SLDF_HAS_LOGO3ID
值: 0x00000800
0x00000800。 不支持。 请注意,从 Windows Vista 起,不再定义此值。
SLDF_HAS_DARWINID
值: 0x00001000
0x00001000。 该链接是一个特殊的 Windows Installer 链接。
SLDF_RUNAS_USER
值: 0x00002000
0x00002000。 导致目标应用程序以其他用户身份运行。
SLDF_HAS_EXP_ICON_SZ
值: 0x00004000
0x00004000。 链接中的图标路径包含一个可展开的环境字符串,例如 %windir%
SLDF_NO_PIDL_ALIAS
值: 0x00008000
0x00008000。 防止在分析路径中的 ID 列表时使用 ID 列表别名映射。
SLDF_FORCE_UNCNAME
值: 0x00010000
0x00010000。 强制使用 UNC 名称 () 的完整网络资源名称,而不是本地名称。
SLDF_RUN_WITH_SHIMLAYER
值: 0x00020000
0x00020000。 使此链接的目标在填充码层处于活动状态的情况下启动。 填充码是一种中间 DLL,可促进其他不兼容的软件服务之间的兼容性。 填充码通常用于提供版本兼容性。
SLDF_FORCE_NO_LINKTRACK
值: 0x00040000
0x00040000。 在 Windows Vista 中引入。 禁用对象 ID 分布式跟踪信息。
SLDF_ENABLE_TARGET_METADATA
值: 0x00080000
0x00080000。 在 Windows Vista 中引入。 启用将目标元数据缓存到链接文件中。
SLDF_DISABLE_LINK_PATH_TRACKING
值: 0x00100000
0x00100000。 在 Windows 7 中引入。 禁用 shell 链接跟踪。
SLDF_DISABLE_KNOWNFOLDER_RELATIVE_TRACKING
值: 0x00200000
0x00200000。 在 Windows Vista 中引入。 禁用已知的文件夹跟踪信息。
SLDF_NO_KF_ALIAS
值: 0x00400000
0x00400000。 在 Windows 7 中引入。 在反序列化期间加载 IDList 时禁用已知的文件夹别名映射。
SLDF_ALLOW_LINK_TO_LINK
值: 0x00800000
0x00800000。 在 Windows 7 中引入。 允许链接指向另一个 shell 链接,前提是这不会创建周期。
SLDF_UNALIAS_ON_SAVE
值: 0x01000000
0x01000000。 在 Windows 7 中引入。 保存 IDList 时删除别名。
SLDF_PREFER_ENVIRONMENT_PATH
值: 0x02000000
0x02000000。 在 Windows 7 中引入。 在加载时使用环境变量从路径重新计算 IDList,而不是保留 IDList。
SLDF_KEEP_LOCAL_IDLIST_FOR_UNC_TARGET
值: 0x04000000
0x04000000。 在 Windows 7 中引入。 如果目标是本地计算机上的 UNC 位置,则除了远程目标之外,还保留本地 IDList 目标。
SLDF_PERSIST_VOLUME_ID_RELATIVE
值: 0x08000000
0x08000000。 在 Windows 8 中引入。 以相对于卷 ID 的形式保留目标 ID 列表,以避免对驱动器号的依赖。
SLDF_VALID
值: 0x003FF7FF
在 Windows Vista 中引入。 有效 SHELL_LINK_DATA_FLAGS 位的掩码。




















(OS)
Windows 80x0FFFF7FF
Windows 70x07FFF7FF
Windows Vista0x003FF7FF
SLDF_RESERVED
保留值;请勿使用。

要求

要求
最低受支持的客户端 Windows XP、Windows 2000 Professional、Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
标头 shlobj_core.h (包括 Shlobj.h)