Compartir a través de


Método Folder.GetDetailsOf

Recupera detalles sobre un elemento de una carpeta. Por ejemplo, su tamaño, tipo o la hora de su última modificación.

Sintaxis

retVal = Folder.GetDetailsOf(
  vItem,
  iColumn
)

Parámetros

vItem

Tipo: Variant

Elemento para el que se va a recuperar la información. Debe ser un objeto FolderItem .

iColumn

Tipo: Entero

Valor entero que especifica la información que se va a recuperar. La información disponible para un elemento depende de la carpeta en la que se muestra. Este valor corresponde al número de columna de base cero que se muestra en una vista shell. Para un elemento del sistema de archivos, puede ser uno de los valores siguientes:

(0)

Recupera el nombre del elemento.

(1)

Recupera el tamaño del elemento.

(2)

Recupera el tipo del elemento.

(3)

Recupera la fecha y hora en que se modificó por última vez el elemento.

(4)

Recupera los atributos del elemento.

(-1)

Recupera la información de información del elemento.

Valor devuelto

Tipo: BSTR*

Cadena que contiene el detalle recuperado.

Comentarios

Nota

No todos los métodos se implementan para todas las carpetas. Por ejemplo, el método ParseName no se implementa para la carpeta Panel de control (CSIDL_CONTROLS). Si intenta llamar a un método no implementado, se genera un error de 0x800A01BD (decimal 445).

 

Ejemplos

En el ejemplo siguiente se usa GetDetailsOf para recuperar el tipo del archivo denominado Clock.avi. Se muestra un uso adecuado para JScript, VBScript y Visual Basic.

Jscript:

<script language="JScript">
    function fnGetDetailsOfJ()
    {
        var objShell = new ActiveXObject("shell.application");
        var objFolder = new Object;
        
        objFolder = objShell.NameSpace("C:\\WINDOWS");
        if (objFolder != null)
        {
            var objFolderItem = new Object;

            objFolderItem = objFolder.ParseName("clock.avi");
            if (objFolderItem != null)
            {
                var objInfo = new Object;

                objInfo = objFolder.GetDetailsOf(objFolderItem, 2);
            }
        }
    }
</script>

Vbscript:

<script language="VBScript">
    function fnGetDetailsOfVB()
        dim objShell
        dim objFolder
        
        set objShell = CreateObject("shell.application")
        set objFolder = objShell.NameSpace("C:\WINDOWS")

        if (not objFolder is nothing) then
            dim objFolderItem

            set objFolderItem = objFolder.ParseName("clock.avi")

            if (not objFolderItem Is Nothing) then
                dim objInfo
                        
                objInfo = objFolder.GetDetailsOf(objFolderItem, 2)
            end if
            
            set objFolderItem = nothing
        end if
        
        set objFolder = nothing
        set objShell = nothing
    end function
</script>

Visual Basic:

Private Sub btnGetDetailsOf_Click()
    Dim objShell  As Shell
    Dim objFolder As Folder

    Set objShell = New Shell
    Set objFolder = objShell.NameSpace("C:\WINDOWS")
    
    If (Not objFolder Is Nothing) Then
        Dim objFolderItem As FolderItem
        Set objFolderItem = objFolder.ParseName("clock.avi")
   
        If (Not objFolderItem Is Nothing) Then
            Dim szItem As String
            szItem = objFolder.GetDetailsOf(objFolderItem, 2)
        End If
        
        Set objFolderItem = Nothing
    End If
    
    Set objFolder = Nothing
    Set objShell = Nothing
End Sub

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Shlobj_core.h (incluya Shldisp.h)
IDL
Shldisp.idl
Archivo DLL
Shell32.dll (versión 4.71 o posterior)