检索文件系统对象的信息.
#Include <WinAPIEx.au3>
_WinAPI_ShellGetFileInfo ( $sPath, $iFlags, $iAttributes, ByRef $tSHFILEINFO )
$sPath | 绝对或相对路径和文件名字符串.可以使用短(8.3格式)或长文件名. short (the 8.3 form) or long file names. 如果 $iFlags 参数包括 $SHGFI_PIDL 标志,参数必须是 ITEMIDLIST(PIDL) 结构, 它包含处理程序(Shell)命名空间标识项目的唯一标识符. 项目标识符列表(PIDL)必须是完全合格的 PIDL 指针. 不允许相对 PIDL. 如果 $iFlags 参数包括 $SHGFI_USEFILEATTRIBUTES 标志, 这个参数不必是一个有效的文件名. 如果文件具有指定名称,并且 $iAttributes 参数传递文件属性,该函数将继续. 这允许通过传递 $sPath 的扩展及 $iAttributes 的 $FILE_ATTRIBUTE_NORMAL 获取文件类型信息. |
$iFlags | 文件信息检索标志. 此参数可以是以下值的组合: $SHGFI_ATTR_SPECIFIED --- 修改 SHGFI_ATTRIBUTES 以标示 $tSHFILEINFO 结构包含 $iAttributes 所期望的特定属性性.不能同时指定 $SHGFI_ICON 标志 $SHGFI_ATTRIBUTES --- 检索项目的属性 $SHGFI_DISPLAYNAME --- 检索该文件的显示名称 $SHGFI_EXETYPE --- 如果 $sPath 标识为可执行文件,检索可执行文件的类型 $SHGFI_ICON --- 检索图标的句柄 $SHGFI_ICONLOCATION --- 检索文件的名称 $SHGFI_LARGEICON --- 修改 SHGFI_ICON,使函数检索文件的大图标.必须同时设置 SHGFI_ICON 标志 $SHGFI_LINKOVERLAY --- 修改 SHGFI_ICON,使函数将链接添加到该文件的图标.必须同时设置 SHGFI_ICON 标志 $SHGFI_OPENICON --- 修改 $SHGFI_ICON,使函数检索文件的打开图标.必须同时设置 SHGFI_ICON 和/或 SHGFI_SYSICONINDEX 标志 $SHGFI_OVERLAYINDEX --- 5.0 版本.返回覆盖图标的索引 $SHGFI_PIDL --- 表明 $sPath 是 ITEMIDLIST 地址结构,而不是路径名称 $SHGFI_SELECTED --- 修改SHGFI_ICON,使函数融合系统文件图标的高亮颜色.必须同时设置 SHGFI_ICON 标志 $SHGFI_SHELLICONSIZE --- 修改SHGFI_ICON,使函数检索 Shell 大小的图标.必须同时设置 SHGFI_ICON 标志 $SHGFI_SMALLICON --- 修改 SHGFI_ICON,使函数检索文件的小图标.必须同时设置 SHGFI_ICON 和/或 SHGFI_SYSICONINDEX 标志 $SHGFI_SYSICONINDEX --- 检索系统图像列表的图标索引 $SHGFI_TYPENAME --- 检索描述文件类型的字符串 $SHGFI_USEFILEATTRIBUTES --- 函数不应该试图访问 $sPath 指定的文件,如果文件存在,则使用 $iAttributes 的文件属性 |
$iAttributes | 一或多个文件属性标志的组合 ($FILE_ATTRIBUTE_*). |
$tSHFILEINFO | $tagSHFILEINFO 结构,用于接收文件信息. |
成功: | 如果 $iFlags 包含 $SHGFI_EXETYPE --- 如果 $sPath 标识为可执行文件,检索可执行文件的类型 标志, 返回可执行文件的类型; |
如果 $iFlags 包含 $SHGFI_SYSICONINDEX --- 检索系统图像列表的图标索引 标志. 返回系统图像列表句柄. 否则返回 - 1. | |
失败: | 返回 0,并设置@error标志为非 0 值. |
在MSDN中搜索