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

Renombrar archivos con WMI

Visual Fox Pro, WMI Comentarios ( 0 ) »

Otra de las innumerables formas de renombrar archivos .... esta vez a través de WMI.


objWMI = GetObject("winmgmts:\")


cCadWMI = "Select * from Cim_Datafile where Name = " + ;
                               
"'c:\MiDir\Archivo.Ext'"
oArchivo = objWMI.ExecQuery(cCadWMI)

For Each oFile in oArchivo

    oFile.Rename("c:\MiDirNuevoNombre.Ext")
Next

 

Por: David Amador T

Copiar directorios con WMI

Visual Fox Pro, WMI Comentarios ( 0 ) »

Otra de las innumerables formas de copiar directorios .... esta vez a través de WMI.


objWMI = GetObject("winmgmts:")


cCadWMI = "Select * from Win32_Directory where Name = 'c:\MiDir'"
oDir = objWMI.ExecQuery(cCadWMI)


For Each oFolder in oDir
    =oFolder.Copy("c:\OtroDir")
Next

 

Por: David Amador T

Eliminar un directorio

Visual Fox Pro, WMI Comentarios ( 0 ) »

Otra de las innumerables formas de eliminar directorios .... esta vez a través de WMI.


objWMI = GetObject("winmgmts:")


cCadWMI = "Select * from Win32_Directory where Name = 'c:\\MiDir'"
oDir = objWMI.ExecQuery(cCadWMI)


For Each oFolder in oDir
    =oFolder.Delete

Next

 

Por: David Amador T

Conocer directorios ocultos

Visual Fox Pro, WMI Comentarios ( 0 ) »

Increíble todo lo que se puede hacer con WMI ... en este caso mostrare todos los directorios ocultos de Windows.

objWMI = GetObject("winmgmts:")


cCadWMI  = "Select * from Win32_Directory Where Hidden = .T."
oArchivos = objWMI.ExecQuery(cCadWMI)


For Each oFiles  in oArchivos

    ?oFiles.Name
Next


 

Por: David Amador T

Deshabilitar y habilitar los Themes en Windows XP

Visual Fox Pro, WMI Comentarios ( 0 ) »

Me ha gustado este truquito .... es la forma de deshabilitar o habilitar los Themes (temas de escritorio) en WinXP.


objWMI = GetObject("winmgmts:\")


cCadWMI = "Select * from Win32_Service Where Name = 'Themes'"
oServ = objWMI.ExecQuery(cCadWMI)


For Each objService in oServ

    objService.StopService()

Next

Para habilitarlas nuevamente reemplace ObjService.StopService por la siguiente línea


 objService.StartService()

 

Por: David Amador T

Formatear unidad de disco

Visual Fox Pro, WMI Comentarios ( 0 ) »

Otra forma de formatear una partición o disco duro.

En este caso se formateara la partición o disco d: y el formato será NTFS pero puedes ser también "FAT32" o "FAT". El segundo parámetro determina si el formato es rápido (Quick Format)

Tenga cuidado cuando pruebe este ejemplo.


objWMI = GetObject("winmgmts:\")


cCadWMI = ("Select * from Win32_Volume Where Name = 'D:\'"

oDisco = objWMI.ExecQuery(cCadWMI)


For Each oUnidad in oDisco

    oUnidad.Format("NTFS", .T.)

Next

 

 

Por: David Amador T

Cambiar el nombre del Disco duro (etiqueta)

Visual Fox Pro, WMI Comentarios ( 0 ) »

Podemos cambiar el nombre del disco con API pero también podemos hacerlo utilizando WMI.


objWMI = GetObject("winmgmts:\")


cCadWMI = "Select * from Win32_LogicalDisk where DeviceID = 'C:'"

oRoot = objWMI.ExecQuery(cCadWMI)


For Each oDisco in oRoot

    oDisco.VolumeName = "MiDisco"

    oDisco.Put_
Next

 


 

Por: David Amador T

Lista de cuentas de usuarios de Windows

Visual Fox Pro, WMI Comentarios ( 0 ) »

Con WMI podemos manipular las cuentas de los usuarios de Windows, en este caso vamos a mostrar cuales son.


objWMI = GetObject("winmgmts:\")


cCadWMI = "Select * from Win32_Account"


oUsers = objWMI.ExecQuery(cCadWMI)


For Each oU in oUsers
    ? Transform(oU.Name) + " - " + Transform(oU.Caption)
Next


 

Por: David Amador T

Comprimir directorio de Windows

Visual Fox Pro, WMI Comentarios ( 0 ) »

Con WinXP y creo que 2000 se puede comprimir el contenido de la carpeta para que ocupe menos espacio en disco cuando la partición es NTFS... no hablo de compresión ZIP.


En este caso voy a comprimir la carpeta MIDir ... para hacer la prueba escoja un directorio y mire el tamaño que tiene y luego ejecute el código y vuelva a mirar el tamaño..... se dará cuenta que fue comprimido bastante.

objWMI = GetObject("winmgmts:\")


cCadWMI = "Select * from Win32_Directory where Name = 'c:\MiDir'"

oDir = objWMI.ExecQuery(cCadWMI)


For Each oCarpeta in oDir
    oCarpeta.Compress
Next
 

 

Por: David Amador T

Formatear números como tamaño en Bytes

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Muy útil función API que nos permite convertir un número en su respectivo valor en Bytes - KB - MB - GB .... de forma muy sencilla.

Declare STRING StrFormatByteSize
IN
Shlwapi;

   
INTEGER
dw,
STRING
@ pszBuf,
INTEGER
cchBuf

 
    = _show (532)

    = _show (1340)

    = _show (23506)

    = _show (2400016)

    = _show (2400000000)

    = _show (4294967295)


 
Function _show (dw)
    pszBuf =
SPACE(50)
    ? dw, " -> "
    ?? StrFormatByteSize (m.dw, @pszBuf,
Len(pszBuf))


Endfunc

 

 

Por: David Amador T

Determinar si un archivo o archivos existen

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Otra forma en que podemos determinar si un archivo(s) existe en una ruta establecida. Es una rutina más dinámica que FILE(), puesto que puede evaluar archivos por extensión.... etc.

* Determina si existen archivos con extensión EXE


cRuta =
"C:"
?!Empty(Sys(2000,cRuta + "*.EXE"))

 
* Determina si existe archivo.EXE

cRuta = "C:"
?!Empty(Sys(2000,cRuta
+
"Archivo.EXE"))



Por: David Amador T

Accesar a tablas DBF desde VB utilizando ADO

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Y si de casualidad te dicen: "Necesito poder consultar los datos de tu programa, pero yo utilizo VB" ... Pues aquí tienes una forma sencilla de como acceder desde VB a las tablas DBF.


Set oConn = New ADODB.Connection
Set oRst = New ADODB.Recordset

cRuta = "c:RutaBaseDatos.DBC"

oConn.ConnectionString = "Driver={Microsoft Visual FoxPro Driver};UID=;" & _
                                     
"PWD=;SourceDB=" & cRuta & ";SourceType=DBC;" & _
                                     
"Exclusive=No;BackgroundFetch=Yes;Collate=" & _
                                      "Machine;Null=Yes;Deleted=Yes;"

oConn.CursorLocation = adUseClient
oConn.Open

oRst.Open "Select * from Ciudades", oConn, adOpenKeyset, adLockOptimistic, adCmdText
Do While Not oRst.EOF
    Print oRst!Munici
    oRst.MoveNext
Loop



Por: David Amador T

Determinar el tipo de archivo

Visual Fox Pro, Trucos Comentarios ( 0 ) »
En ocasiones queremos conocer cual es el programa que esta vinculado con un archivo. Esta rutina te ayudará.

oFSO = Createobject("Scripting.FileSystemObject")

oFile = oFSO.
Getfile(GetFile())
?
"Tipo: " + oFile.Type
 


Por: David Amador T

Información de TODA la configuración actual de VFP

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Este es uno de los trucos campeones ... Puedes obtener toda la información de la configuración actual de VFP.

Lo que debes hacer es ir al menú "Herramientas", luego seleccionas "Opciones" y ahora presiona la tecla SHIFT y
haces click en Aceptar; En la ventana de comandos de VFP obtendrás toda la información de la configuración de VFP.

 


Por: David Amador T

Extractar parte de una cadena

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Este es uno de los trucos que siempre debemos tener bajo la manga, puesto lo requerimos con mucha frecuencia.

cStr = "DAVID AMADOR"
nPos = ATC(" ", cStr)
?
Substr(cStr,1, nPos-1)

?
Substr(cStr, nPos+1)

** Otra forma

For i = 1 To GetWordCount(cStr," ")
   ?
GetWordNum(cStr,
i,
" ")
Next
 

Por: David Amador T