Con VBA, ¿cómo puedo comprobar si, en el Explorador de Windows, las extensiones de archivo para tipos de archivos conocidos están ocultas?
-
19-09-2019 - |
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
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