Con VBA, ¿cómo puedo comprobar si, en el Explorador de Windows, las extensiones de archivo para tipos de archivos conocidos están ocultas?

StackOverflow https://stackoverflow.com/questions/1164626

Pregunta

Sin abrir el Explorador de Windows. Quiero comprobar esto desde Word VBA.

Gracias.

EDIT:

Este código funciona ahora:

Set WshShell = CreateObject("WScript.Shell")

If WshShell.RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt") = 0 Then
    MsgBox Prompt:="In Windows Explorer, set the folder options to hide file extensions of known file types." _
        & vbCrLf & vbCrLf & " This prevents the file extension from appearing as part of the document number in" _
        & "the document body and page headers.", Buttons:=vbOKOnly + vbCritical, Title:="Critical"
End If
¿Fue útil?

Solución

Es necesario consultar el valor del registro

  

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Advanced \ HideFileExt

Las extensiones se muestran si este valor es 0 y ocultos si es 1.

Puede utilizar el RegRead método en el objeto WshShell para leer este valor. Se puede añadir una referencia a la biblioteca de tipos de modelo de objetos de Windows Script Host en su proyecto de VBA para obtener la tipificación estricta cuando se utiliza el objeto WshShell.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top