Bienvenido y disfruta el nuevo diseño del sitio web.... agradecería me envíes tus comentarios acerca de los cambios realizados

Para descargar cualquier archivo es necesario estar registrado y hacer click en el titulo del archivo a descargar

Hora del último encendido del computador

Visual Fox Pro, WMI Comentarios ( 0 ) »

Hora del último encendido del computador


objWMI = GetObject("winmgmts:\\")

oSys = objWMI.ExecQuery("Select * from Win32_OperatingSystem")

For Each objOS in oSys

    ?objOS.LastBootUpTime

Next

Por: David Amador T

Lista de actualizaciones instaladas en el equipo

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizando WMI desde VFP para conocer la lista
de actualizaciones de Windows instaladas en el equipo.


objWMI = GetObject("winmgmts:\\")

oFixes = objWMI.ExecQuery("Select * from Win32_QuickFixEngineering")



For Each objFix in oFixes

    ? "Computador: " + objFix.CSName

    ? "Descripción: " + objFix.Description

    ? "Fix ID: " + objFix.HotFixID

    ? "Fecha de Instalación: " + objFix.InstallDate

    ? "Instalada por: " + objFix.InstalledBy

    ? "- - - - - - - -"

Next


Por: David Amador T

Unidades de CD instaladas en el equipo

Visual Fox Pro, WMI Comentarios ( 0 ) »

Unidades de CD instaladas en el equipo


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_CDROMDrive"

oUnd = objWMI.ExecQuery(cCadWMI)



For Each objItem in oUnd

    ? "Unidad: " + objItem.Drive + " " + ;

        "Nombre: " + objItem.Caption

Next


 


Por: David Amador T

Conocer la versión de un archivo

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizando WMI desde VFP para obtener la
versión de un archivo ya sea este EXE, DLL,....Etc. En este caso queremos
conocer la versión del archivo Regedit.Exe


objWMI = GetObject("winmgmts:\\")

cCadWMI = "SELECT * FROM CIM_DataFile WHERE Name='c:\\windows\\regedit.exe'"

oFiles = objWMI.ExecQuery(cCadWMI)



For Each objFile in oFiles

? objFile.Version

Next


 


 


Por: David Amador T

Servicios instalados en Windows

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizando WMI para obtener información acerca
de los servicios que han sido instalados en Windows.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * From Win32_Service"

oServ = objWMI.ExecQuery(cCadWMI)



For Each objServi in oServ

? objServi.Name + " " + objServi.StartName

Next


 


Por: David Amador T

Instalar aplicacación

Visual Fox Pro, WMI Comentarios ( 0 ) »

Conocer los productos de Microsoft
instalados...


objWMI = GetObject("winmgmts:\\")



lUsers = .T.

&& Determina si es instala para todo los usuarios



objSoft = objWMI.Get("Win32_Product")

errRet = objSoft.Install("c:\ruta\instalador.msi", , lUsers)

? errRet


Por: David Amador T

Verificar si el SQL Server esta instalado

Visual Fox Pro, WMI, SQL Server, Bases de datos Comentarios ( 0 ) »

Utilizar WMI para determinar si el SQL Server
esta instalado en el equipo; Cuando SQL Server se instala se inicia un servicio
de Windows llamado MSSQLServer y lo que se hace es buscar a ver si existe dicho
servicio.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_Service Where Name = 'MSSQLServer'"



oBServ = objWMI.ExecQuery(cCadWMI)



If oBServ.Count > 0 Then

    For Each objSer in oBServ

         ? "SQL Server is " +
objSer.State + "."

    Next

Else

    ? "SQL Server no esta instalado en este computador."

EndIf


 


Por: David Amador T

Reiniciar el computador

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizando WMI para reiniciar el compuador.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_OperatingSystem"

oBServ = objWMI.ExecQuery(cCadWMI)



For Each Pc in oSys

    Pc.Reboot()

Next


 


 


Por: David Amador T

Apagar un computador

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizando WMI para apagar un computador.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_OperatingSystem"

oBServ = objWMI.ExecQuery(cCadWMI)



For Each Pc in oSys

    Pc.Win32Shutdown(1)

Next


 

Por: David Amador T

Comandos que se ejecutan cuando arranca Windows

Visual Fox Pro, WMI Comentarios ( 0 ) »

Esta es una forma de obtener los comandos que
se ejecutan cuando arranca Windows a través de WMI.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_StartupCommand"

oBPc = objWMI.ExecQuery(cCadWMI)



For Each Comand in oBPc

? "Commando: " + Comand.Command

? "Descripción: " + Comand.Description

? "Ruta: " + Comand.Location

? "Nombre: " + Comand.Name

? "Configuración ID: " + Comand.SettingID

? "User: " + Comand.User

? "- - - - - - "

Next


 

Por: David Amador T

Crear un proceso con prioridad alta

Visual Fox Pro, WMI Comentarios ( 0 ) »

Excelente truco para crear un proceso con
prioridad alta utilizando WMI.


NORMAL = 32

BAJA = 64

ALTA = 128

ENCIMA_DE_NORMAL = 16384

DEBAJO_DE_NORMAL = 32768



intProcessID = 111


objWMI = GetObject("winmgmts:\\")

objStartup = objWMI.Get("Win32_ProcessStartup")



objConfig = objStartup.SpawnInstance_

objConfig.PriorityClass = ALTA

objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")

objProcess.Create("Notepad.exe", Null, objConfig, intProcessID)


 

Por: David Amador T

Modificar la prioridad a un proceso

Visual Fox Pro, WMI Comentarios ( 0 ) »

Este truco es muy bueno porque con el podemos
modificar la prioridad de un proceso a través de WMI .... Con API no me
funcionaba bien...


NORMAL = 32

BAJA = 64

ALTA = 128

ENCIMA_DE_NORMAL = 16384

DEBAJO_DE_NORMAL = 32768





objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_Process Where Name = 'Notepad.exe'"

oProc = objWMI.ExecQuery(cCadWMI)



For Each oProcess in oProc

oProcess.SetPriority(ENCIMA_DE_NORMAL)

Next


 

Por: David Amador T

Desinstalar aplicación

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizar WMI desde VFP para desinstalar una
aplicación.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_Product Where Name = 'Nombre aplicacion'"

oColS = objWMI.ExecQuery(cCadWMI)



For Each oSoft in oColS

oSoft.Uninstall()

Next


 

Por: David Amador T

Información del tiempo local

Visual Fox Pro, WMI Comentarios ( 0 ) »

Utilizando WMI para conocer el día, mes, año,
día del mes, número de semana en el mes, minutos, segundos.... etc.


objWMI = GetObject("winmgmts:\\")

cCadWMI = "Select * from Win32_LocalTime"

oTime = objWMI.ExecQuery(cCadWMI)



For Each oLocal in oTime

     ? "Día: " + Transform(oLocal.Day)

     ? "Día de la semana: " + Transform(oLocal.DayOfWeek)

     ? "Hora: " + Transform(oLocal.Hour)

     ? "Minutos: " + Transform(oLocal.Minute)

     ? "Mes: " + Transform(oLocal.Month)

     ? "Segunds: " + Transform(oLocal.Second)

     ? "Semana en el mes: " + Transform(oLocal.WeekInMonth)

     ? "Año: " + Transform(oLocal.Year)

Next

 


 

Por: David Amador T

Instalar un servicio en Windows

Visual Fox Pro, WMI Comentarios ( 0 ) »

Diria Yo que este es de los mejores trucos ....
utilizando WMI podemos instalar un servicio en Windows y especificarle todas sus
propiedades .... EXCELENTE. Un servicio es una aplicación que corre en
background cuando arranca Windows y el usuario no se percata de eso. Para
comprobar si el servicio se instala podemos ir a MIPC y hacemos click con el
botón derecho del mouse y seleccionamos "Administrar", luego en la parte
izquierda de la ventana seleccionamos "Servicios" y allí debe aparecer el
servicio que instalaremos.


Para probar el ejemplo debes copiar un archivo
exe a la carpeta system32 de Windows pero podría ser a cualquier carpeta, el
nombre del archivo para el ejemplo debe ser PD.EXE ..... podria renombrar el
NotePad y probar con el.


OWN_PROCESS = 16

NOT_INTERACTIVE = .F.

ControlError = 2 &&Normal

TipInicio = "Manual"

NomSer = "MiServicio"

NomMostrar = "Nombre para mostrar - MiServicio"

cRutaEXE = "c:\windows\system32\pd.exe"

cIniSesion = "NT AUTHORITY\LocalService"



objWMI = GetObject("winmgmts:\\")

objSer = objWMI.Get("Win32_BaseService")



errRet = objSer.Create(NomSer, NomMostrar, cRutaExe, OWN_PROCESS, ControlError,
TipInicio, NOT_INTERACTIVE, cIniSesion, "" )

? errRet

 


 


Por: David Amador T