miércoles, 29 de mayo de 2013

Top 10 Anti-virus


Top 1 - BitDefender

Top 2 – Kaspersky

Top 3 – Norton Antivirus

Top 4 – F-Secure Antivirus

Top 5 – G Data Antivirus

Top 6 – BullGuard Antivirus

Top 7 – AVG Antivirus

Top 8 – Avast! Antivirus

Top 9 – Trend Micro Titanium Antivirus

Top 10 – Vipre Antivirus


lunes, 20 de mayo de 2013

Procedimientos y Clases para Visual FoxPro

Un procedimiento es el modo de ejecutar determinadas acciones que suelen realizarse de la misma forma, con una serie común de pasos claramente definidos, que permiten realizar una ocupación, trabajo, investigación, o estudio, se puede aplicar a cualquier empresa.

Las clases se pueden definir visualmente en el Diseñador de clases y el Diseñador de formularios o mediante programación en archivos .PRG. En esta sección se explica cómo escribir definiciones de clase. Para obtener más información acerca de los formularios, consulte Crear formularios.

Algunos ejemplos
Los procedimientos y funciones permiten mantener en un único lugar el código que utiliza con frecuencia y llamarlo a través de su aplicación siempre que lo necesite. Esto hace que su código sea más fácil de leer y mantener, ya que en un procedimiento el cambio se realiza una sola vez, no varias veces como ocurre en un programa.
En Visual FoxPro, los procedimientos son similares a éste:
PROCEDURE myproc
  * This is a comment, but it could be executable code
ENDPROC
Tradicionalmente, los procedimientos contienen código que usted escribe para realizar una operación y funciones que calculan y devuelven un valor. En Visual FoxPro, las funciones son similares a los procedimientos:
FUNCTION myfunc
  * This is a comment, but it could be executable code
ENDFUNC
Puede incluir procedimientos y funciones en un archivo de programa distinto o al final de un archivo de programa que contenga código normal de programa. En un archivo de programa no puede tener código ejecutable de programa a continuación de los procedimientos y las funciones.
Si incluye sus procedimientos y funciones en un archivo de programa distinto, podrá hacer accesibles estos procedimientos y funciones desde su programa si utiliza el comando SET PROCEDURE TO. Por ejemplo, para un archivo llamado FUNPROC.PRG, utilice el siguiente comando en la ventana Comandos:
SET PROCEDURE TO funproc.prg

Llamar a un procedimiento o a una función

Hay dos formas de llamar a un procedimiento o a una función en sus programas:
  • Utilizar el comando DO. Por ejemplo:
    DO myproc
    
    –O bien–
  • Incluir detrás del nombre de la función un par de paréntesis. Por ejemplo:
    myfunc( )
    
Cada uno de estos métodos puede ampliarse enviando o recibiendo valores desde el procedimiento o la función.

Enviar valores a un procedimiento o a una función

Para enviar valores a procedimientos o funciones se incluyen parámetros. Por ejemplo, el procedimiento siguiente acepta un solo parámetro:
PROCEDURE myproc( cString )
   * The following line displays a message
   MESSAGEBOX ("myproc" + cString)
ENDPROC
Nota   Incluir los parámetros entre paréntesis en la línea de definición de un procedimiento o una función, por ejemplo PROCEDURE myproc(cString), indica que el parámetro tiene alcance local al procedimiento o la función. También puede permitir que una función o un procedimiento acepte parámetros de alcance local mediante LPARAMETERS.
Los parámetros funcionan de manera idéntica en una función. Para enviar un valor como un parámetro a este procedimiento o a una función, podría utilizar una cadena o una variable que contuviera una cadena, como se muestra en la tabla siguiente.
Transferencia de parámetros
CódigoComentarios
DO myproc WITH cTestString
DO myproc WITH "test string"
Llama a un procedimiento y transfiere una variable de caracteres o una cadena literal.
myfunc("test string")
myfunc( cTestString )
Llama a una función y transfiere una copia de una cadena literal o una variable de caracteres.
Nota   Si llama a un procedimiento o función sin usar el comando DO, la configuración de UDFPARMScontrola cómo se transfieren los parámetros. De forma predeterminada, UDFPARMS se establece como VALUE, por lo que se transferirán copias de los parámetros. Cuando utilice DO, se empleará el parámetro real (el parámetro se transfiere por referencia) y cualquier cambio realizado en el procedimiento o en la función se reflejará en los datos originales, cualquiera que sea la configuración de UDFPARMS.
Puede enviar múltiples valores a un procedimiento o función si los separa mediante comas. Por ejemplo, el siguiente procedimiento espera tres parámetros: una fecha, una cadena de caracteres y un número.
PROCEDURE myproc( dDate, cString, nTimesToPrint )
   FOR nCnt = 1 to nTimesToPrint
      ? DTOC(dDate) + " " + cString + " " + STR(nCnt)
   ENDFOR
ENDPROC
Podría llamar a este procedimiento mediante la siguiente línea de código:
DO myproc WITH DATE(), "Hello World", 10

Recibir valores desde una función

El valor devuelto de forma predeterminada es verdadero (.T.), pero puede utilizar el comando RETURN para devolver cualquier valor. Por ejemplo, la siguiente función devuelve una fecha correspondiente a dos semanas después de la fecha que se ha pasado como parámetro.
FUNCTION plus2weeks
PARAMETERS dDate
   RETURN dDate + 14
ENDFUNC
La siguiente línea de código almacena el valor devuelto desde esta función en una variable:
dDeadLine = plus2weeks(DATE())
En la tabla siguiente se muestran las formas en que puede almacenar o mostrar valores devueltos por una función.
Manipular valores devueltos
CódigoComentarios
var = myfunc( )
Almacena en una variable el valor devuelto por la función.
? myfunc( )
Imprime en la ventana de resultado activa el valor devuelto por la función.

Comprobar parámetros en un procedimiento o en una función

Es conveniente comprobar que los parámetros enviados a su procedimiento o a su función son los que espera recibir. Puede utilizar las funciones TYPE( ) y PARAMETERS( ) para comprobar el tipo y el número de parámetros enviados a su procedimiento o a su función.
El ejemplo de la sección anterior necesita recibir un parámetro de tipo Date. Puede utilizar la función TYPE( ) para asegurarse de que el valor que su función recibe es del tipo adecuado.
FUNCTION plus2weeks( dDate )
   IF TYPE("dDate") = "D"
      RETURN dDate + 14
   ELSE
      MESSAGEBOX( "You must pass a date!" )
      RETURN { - - }      && Return an empty date
   ENDIF
ENDFUNC
Si un procedimiento espera menos parámetros de los que recibe, Visual FoxPro generará un mensaje de error. Por ejemplo, si especificó dos parámetros pero llamó al procedimiento con tres parámetros, obtendrá un mensaje de error. Pero si un procedimiento espera más parámetros de los que recibe, los parámetros adicionales simplemente se inicializarán como falso (.F.). Puesto que no hay ninguna forma de decir si el último parámetro se estableció como falso (.F.) o se omitió, el siguiente procedimiento comprueba que se ha enviado el número correcto de parámetros:
PROCEDURE SaveValue( cStoreTo, cNewVal, lIsInTable )
   IF PARAMETERS( ) < 3
      MESSAGEBOX( "Too few parameters passed." )
      RETURN .F.
   ENDIF
   IF lIsInTable
      REPLACE (cStoreTo) WITH (cNewVal)
   ELSE
      &cStoreTo = cNewVal
   ENDIF
   RETURN .T.
ENDPROC

Convertir el programa NUMONLY en una función

NUMONLY.PRG, el programa de ejemplo descrito en Construir un programa pequeño, puede hacerse más robusto y útil si crea una función para la parte del programa que elimina los caracteres no numéricos de una cadena.
Procedimiento de ejemplo para devolver caracteres numéricos de una cadena
CódigoComentarios
FUNCTION NumbersOnly( cMixedVal )
Principio de la función, que acepta una cadena de caracteres.
  cNumOnly = ""
  FOR nCnt = 1 TO LEN(cMixedVal)
   cCharacter = ;
  SUBSTR(cMixedVal, nCnt, 1)
    IF ISDIGIT(cCharacter)
       cNumOnly = ;
   cNumOnly + cCharacter
    ENDIF
   ENDFOR
Crea una cadena que sólo tiene los caracteres numéricos de la cadena original.
RETURN cNumOnly
Devuelve la cadena que sólo tiene caracteres numéricos.
ENDFUNC
Fin de la función.
Además de permitirle utilizar este código en múltiples situaciones, esta función mejora la legibilidad del programa:
SCAN
   REPLACE FieldName WITH NumbersOnly(FieldName)
ENDSCAN
O, más sencillo aún:
REPLACE ALL FieldName WITH NumbersOnly(FieldName)

viernes, 10 de mayo de 2013

sistemas operativos de redes

Windows 2000

Windows 2000 es un sistema operativo de Microsoft que se puso en circulación el 17 de febrero de 2000 con un cambio de nomenclatura para su sistema NT. Así, Windows NT 5.0 pasó a llamarse Windows 2000. Fue sucedido por Windows XP para equipos de escritorio en octubre de 2001 y Windows Server 2003 para servidores en abril de 2003.Su creación represento un esfuerzo por la unificación de hasta ese momento dos sistemas operativos distintos, Windows 9x y Windows NT. Dos años antes de su salida se sabía que Windows NT 5.0 estaba en proyecto, pero Windows 2000 llegó a resolver de una vez por todas las dudas.

Windows NT


Windows NT es una familia de sistemas operativos producidos por Microsoft, de la cual la primera versión fue publicada en julio de 1993.
Previamente a la aparición del famoso Windows 95 la empresa Microsoft concibió una nueva línea de sistemas operativos orientados a estaciones de trabajo y servidores de red. Un sistema operativo con interfaz gráfica propia, estable y con características similares a los sistemas de red UNIX. Las letras NT provienen de la designación del producto como "Nueva Tecnología" (New Technology).
Las versiones publicadas de este sistema son: 3.1, 3.5, 3.51 y 4.0. Además, Windows NT se distribuía en dos versiones, dependiendo de la utilidad que se le fuera a dar: Workstation para ser utilizado como estación de trabajo y Server para ser utilizado como servidor.

 Apple Talk

Una dirección de Appletalk constaba de 4 bytes. Un número de red de dos bytes, un número de nodo de un byte y un número de socket de un byte. De éstos, solamente el número de red requiría configuración y era obtenido de un enrutador. Cada nodo elegía dinámicamente su propio número del nodo, según un protocolo que manejaba la contención entre diversos nodos que elegían accidentalmente el mismo número. Para los números del socket, algunos números conocidos eran reservados para los propósitos especiales específicos de Appletalk.

Debido a esto, los usuarios no podían esperar tener acceso a servicios especificando su dirección. En lugar de direcciones, todos los servicios tenían nombres que intentaban ser significativos a los usuarios, y también eran suficientemente largos para reducir al mínimo los conflictos de conexión.
Un nombre en Appletalk envía directamente a un servicio que era proporcionado por una máquina, que estaba por completo separado del nombre de esa 8unm se guardara el nombre del servicio, los usuarios no tendrían que cambiar nada para continuar teniendo acceso al servicio. Y la misma máquina podría recibir cualquier número de servicios del mismo tipo, sin ningún tipo de conflicto de la conexión de red.

Requerimientos Mínimos

Los requisitos mínimos de hardware para Windows XP Home Edition son:

  • Procesador Pentium a 233 megahercios (MHz) o mayor velocidad (se recomienda 300 MHz)
  • Al menos 64 megabytes (MB) de RAM (se recomienda 128 MB)
  • Un mínimo de 1,5 gigabytes (GB) de espacio disponible en el disco duro
  • Unidad de CD-ROM o DVD-ROM
  • Un teclado y un mouse de Microsoft, o algún otro dispositivo señalador compatible
  • Adaptador de vídeo y monitor con una resolución Super VGA (800 x 600) o mayor
  • Tarjeta de sonido
  • Altavoces o auriculares
Windows NT
Para una estación de trabajo:
  • PC 80386 – DX – 25 MHz mínimo.
  • 16 Mb RAM.
  • 90 Mb de espacio en disco.
  • Unidad de CD-ROM.
Además de lo anterior, para un Servidor debemos considerar:
  • 32 Mb de RAM.
  • 120 Mb de espacio en disco.


Windows 2000


Los requerimientos necesarios para su funcionamiento son:
  • Procesador Pentium 133 Mhz o superior
  • Una configuración mínima de memoria RAM de 64 MB
  • Una unidad de disco duro con suficiente capacidad de almacenamiento para el tamaño de la red. La capacidad mínima es de 1 GB
  • Una tarjeta de red
  • Cableado de red
  • Unidad de CD-ROM a ser posible SCSI
  • (recomendado) Una unidad de cinta u otro dispositivo de respaldo