Что нового

как выяснить тип объекта?

saraconor

Новичок
Сообщения
404
Репутация
3
Как выяснить тип объекта - файл это или папка имея путь к ним?

решение найдено (метадата)
Код:
Func _FileGetProperty(Const $S_PATH, Const $S_PROPERTY = "")
    Local Const $S_FILE = StringTrimLeft($S_PATH, StringInStr($S_PATH, "\", 0, -1))
    Local Const $S_DIR = StringTrimRight($S_PATH, StringLen($S_FILE) + 1)
    Local Const $objShell = ObjCreate("Shell.Application")
    Local Const $objFolder = $objShell.NameSpace($S_DIR)
    Local Const $objFolderItem = $objFolder.Parsename($S_FILE)

    If $S_PROPERTY Then
        For $i = 0 To 99
            If $objFolder.GetDetailsOf($objFolder.Items, $i) = $S_PROPERTY Then Return $objFolder.GetDetailsOf($objFolderItem, $i)
        Next
        Return SetError(2, 0, 0)
    EndIf

    Local $av_ret[1][2] = [[1]]
    For $i = 0 To 99
        If $objFolder.GetDetailsOf($objFolder.Items, $i) Then
            ReDim $av_ret[$av_ret[0][0] + 1][2]
            $av_ret[$av_ret[0][0]][0] = $objFolder.GetDetailsOf($objFolder.Items, $i)
            $av_ret[$av_ret[0][0]][1] = $objFolder.GetDetailsOf($objFolderItem, $i)
            $av_ret[0][0] += 1
        EndIf
    Next

    Return $av_ret
EndFunc
 
Верх