Todas aquellas ocasiones cuando necesitamos saber algunas condiciones de entorno de nuestro Sistema Operativo desde un Sistema en Access, por ejemplo mostrar el Nombre el Usuario (USERNAME) que esta activo en Windows ó el Nombre de nuestra Computadora (COMPUTERNAME) ó saber si nuestro procesador es 64 bits (PROCESSOR_ARCHITECTURE), lo primero que pensaríamos es que necesitamos incluir alguna API de Windows en nuestro código VBA para ver estos valores...
Pues la verdad NO ES NECESARIO. Ya que Microsoft Access nos provee de una Función llamada Environ() que nos proporciona los valores de estas Variables de Entorno de Windows, sin utilizar código muy complejo.
Las Variables de Entorno que podemos consultar pueden ser como estas:
VARIABLES ENVIRON |
---|
LLUSERSPROFILE |
APPDATA |
AVENGINE |
CLIENTNAME |
CommonProgramFiles |
COMPUTERNAME |
ComSpec |
FP_NO_HOST_CHECK |
HOMEDRIVE |
HOMEPATH |
INCLUDE |
INOCULAN |
LIB |
LOGONSERVER |
NUMBER_OF_PROCESSORS |
OS |
Path |
PATHEXT |
PROCESSOR_ARCHITECTURE |
PROCESSOR_IDENTIFIER |
PROCESSOR_LEVEL |
PROCESSOR_REVISION |
ProgramFiles |
SESSIONNAME |
SystemDrive |
SystemRoot |
TEMP |
TMP |
USERDOMAIN |
USERNAME |
USERPROFILE |
VS71COMNTOOLS |
WecVersionForRosebud.FF0 |
windir |
Veamos un Ejemplo VBA, consultemos el Nombre de nuestra Computadora usando la función Environ()
Option Compare Database Option Explicit 'MUESTRA EL NOMBRE DEL USUARIO DEL SISTEMA Private Sub Comando4_Click() Dim i As Integer Dim stEnviron As String For i = 1 To 100 stEnviron = Environ(i) If InStr(stEnviron, "USERNAME") Then MsgBox Environ(i) Exit For End If Next End Sub 'ENLISTA TODAS LAS VARIABLES DE ENTORNO DISPONIBLES EN EL SISTEMA Private Sub Command0_Click() Dim i As Integer Dim stEnviron As String For i = 1 To 100 stEnviron = Environ(i) If Len(stEnviron) > 0 Then Me.List1.AddItem (Environ(i)) Else Exit For End If Next End Sub 'MUESTRA EL NOMBRE DE LA COMPUTADORA Private Sub Command3_Click() Dim i As Integer Dim stEnviron As String For i = 1 To 100 stEnviron = Environ(i) If InStr(stEnviron, "COMPUTERNAME") Then MsgBox Environ(i) Exit For End If Next End Sub
Ver Video Explicacion
No hay comentarios.:
Publicar un comentario