lunes, 15 de diciembre de 2008

Sobre Ciclos (II)

Tachi [tachi@dmegui.dpegr.rimed.cu]

ESTRUCTURAS DE REPETICIÓN DO...LOOP EN VISUAL BASIC

Estructura de repetición Do...Loop

La estructura Do...Loop al igual que la estructura For...Next se utiliza para ejecutar una serie de instrucciones pero con un número de repeticiones indeterminado (se conoce como ciclo indeterminado ya que el programa no sabe de ante mano el número de repeticiones que ejecutará el ciclo). En todas las variantes de la estructura Do...Loop al igual que en la For…Next el ciclo evalúa una expresión para determinar la continuación o no del ciclo.

Sintaxis:
Do While <condición>
  <Instrucciones>
Loop

El primer parámetro que espera la estructura es la condición. La condición debe de ser alguna expresión que se pueda evaluar como True (verdadero) o False (falso).
Ej.: i < 10

El segundo parámetro son las instrucciones que se ejecutarán en cada repetición del ciclo.
Ej.: Print “Esto es un ciclo Do…Loop.”

El parámetro Loop indica el final de las instrucciones (o final del cuerpo).

El siguiente ejemplo utiliza la estructura Do…Loop para obtener los números del 0 al 9:

Dim i As Integer
i = 0
Do While i <= 9
  Print i
  i = i + 1
Loop

En este caso la variable “i”, que hace el papel de contador, a diferencia de For…Next si debe de ser inicializada antes de la instrucción Do…Loop.

¿Quieres que te explique cómo funciona esta otra estructura? ño!!…te gusta la muela ?

Pues al programa llegar a la estructura Do…Loop, verifica que la expresión sea verdadera. En este caso la expresión se hace verdadera siempre que el contador “i” sea menor o igual (<=) que 9. Siempre que la expresión es verdadera se ejecutan las instrucciones contenidas en el cuerpo de la estructura.

Algo que siempre se debe tener en cuenta al implementar una estructura de repetición mediante Do...Loop es que una de las instrucciones contenidas en el cuerpo de la estructura debe de convertir en falsa (False) la expresión de continuación de ciclo. En el ejemplo planteado siempre que el valor de la condición sea verdadero la segunda cosa que se hará en el ciclo es aumentar en 1 al contador: i = i + 1, de esta forma la expresión en algún momento tomará el valor 10 y se convertirá en falsa, terminando inmediatamente el ciclo y continuando el programa con la ejecución de las instrucciones que se encuentren inmediatamente después del Loop.

Cuando la variable “i” toma el valor 10 se produce lo que se llama fuera de ciclo, terminando inmediatamente el ciclo.

Si en este tipo de ciclo no existe una instrucción que convierta en falsa la expresión de continuación de ciclo se produciría lo que se conoce como ciclo infinito, es decir, el ciclo nunca termina ya que la expresión nunca será falsa, provocando el cuelgue o congelamiento de la aplicación o como se te ocurra llamarlo, la cuestión es que la aplicación se bloquea.

En la estructura de repetición Do...Loop se puede implementar lo que se conoce como ciclo controlado por centinela. Este tipo de ciclo se utiliza mayormente en los lenguajes estructurados como C.

Al principio de iniciar la explicación de esta estructura dije: (…) En todas las variantes de la estructura Do...Loop (…)

Las variantes de esta estructura son:
Do <condición>
  <Instrucciones>
Loop While

Do Until <condición>
  <Instrucciones>
Loop

Do
  <Instrucciones>
Loop Until <condición>

La primera variante realiza primero las instrucciones contenidas en el cuerpo de la estructura y luego prueba la condición garantizando que las instrucciones se ejecuten al menos una ves.

La segunda y tercera variante realizan el grupo de instrucciones siempre que la condición sea falsa (False). La forma en que operan es en correspondencia igual que las anteriores.

¿Que quieres más?
¿Eso es broma verdad?

Continuar leyendo

Tuto NLite (II)

NEO [enrique@expocuba.cu]

Bueno, ya se supone que instalamos Windows, se supone también que en el NLite le especificamos en el apartado RunOnce que ejecutara algo como esto:
%SOURCE%\Install\WPI\start.cmd

¿Quién es start.cmd? Bueno es un .bat que colocamos en la carpeta Install\WPI a pura conveniencia, ¿Para que? Bueno es que ese archivo por lotes se va a ejecutar inmediatamente el Sistema termine de instalarse. Ejemplo si le ponemos en ese *.bat algo como:

Format C: /FS:NTFS /V:System /Q /X

Pues la cagaste porque acabas de formatear de nuevo la partición de sistema, pero ese no es el objetivo sino que las aplicaciones se instalen de forma predeterminada. Ya se supone que esta todas en la carpeta \Install de nuestro CD. Aquí va la magia, ¿Sabian que la mayoría de las aplicaciones, software, programas o como les de la gana de llamarlos tiene un modo de instalación tipo administrador por MS-DOS?

Pues si, en la mayoría de las aplicaciones modernas, sobre todos las basadas en MSI (Microsoft System Installer) hay un apartado dedicado a la instalación por MS-DOS y para que estos se instalen por supuesto de forma desatendida o demasiado atendida como diría yo.

Por ejemplo en el caso de digamos el NOD32 3.0 bastaría con poner en la ventana de comandos (por supuesto en el path de la carpeta del mismo)
Nod32.msi /passive /norestart

¿Qué hace? Pues se instala solito, solito, solo te pone una barra de progreso, ¿terminó? Pues que empiece la otra aplicación en cuestión usando el comando “start” con el parámetro /wait

Quedaría:
start /wait nod32.msi /passive /norestart
start /wait nero9.exe /passive /norestart


Ahora, no se crean que para todas las aplicaciones basta con poner esas lienas al fina y ya, no, eso hay que estudiarlo una por una, poniendo primeramente app.exe /? ó app.exe /help

Les aseguro que en muchos casos aparecerá el modo de instalación administrada, la sorpresa fue cuando se lo hice al Office2007 y me “respondió” que la mejor forma seria con Office2007.exe /admin.

Para mi sorpresa me apareció una ventana jamás vista con un proceso de instalación que ojala todos los programas vinieran así: No es mas que una ventana en la que predefinimos la ruta, idioma, paquetes incluso perfiles de Outlook para guardarlo en un archivo *.MSP en la carpeta Updates y nos ahorramos un dolo de cabeza, el programa ahora en cuanto lo ejecutes va a cumplir los parámetros establecido en el ejecutable que guardamos en la carpeta Updates.

De esa manera podemos esforzarnos un poco y crear poco a poco nuestro SO de forma automatizada. Aquí les va la guía para los casos de nuestro ejecutable sea un *.msi

msiexec /Option <Parámetro necesario> [Parámetro opcional]

Opciones de instalación
    </package | /i> <Product.msi>
    
Instala o configura un producto
    /a <Product.msi>

Instalación administrativa: instala un producto de la red
     /j<u|m> <Product.msi> [/t <Lista de transformación>] [/g <Id de lengua>]
    
Anuncia un producto: m para todos los usuarios, u para el usuario actual
    </uninstall | /x> <Product.msi | Código_producto>
    
Desinstala el producto

Opciones de pantalla
    /quiet
    
Modo silencioso sin interacción del usuario
    /passive
    
Modo desatendido: sólo la barra de progreso
    /q[n|b|r|f]

Establece el nivel de interfaz del usuario
    n:
no UI
    b:
UI básica
    r:
UI reducida
    f:
UI completa (predeterminado)
    /help
    
Información de ayuda

Opciones de reinicio
    /norestart
    
No reiniciar una vez finalizada la instalación
    /promptrestart
    
Pide al usuario que reinicie el equipo si fuera necesario
    /forcerestart
    
Reiniciar siempre el equipo después de la instalación
    
Opciones de registro
    /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <Archivo_registro>
    i:
mensajes de estado
    w:
avisos no graves
    e:
todos los mensajes de error
    a:
inicio de acciones
    r:
registros específicos para la acción
    u:
solicitudes del usuario
    c:
parámetros iniciales de IU
    m:
sin memoria o información de salida grave
    o:
mensajes de espacio insuficiente en disco
    p:
propiedades de Terminal Server
    v:
información detallada
    x:
información de depuración extra
    +:
anexar al archivo de registro existente
    !:
vaciar cada línea al registro
    *:
registrar toda la información, excepto las opciones v y x
    /log <Archivo_registro>
    
Equivalente a /l* <Archivo_registro>

Opciones de actualización
    /update <Update1.msp>[;Update2.msp]
    
Aplica las actualizaciones
    /uninstall <Guid_código_actualización>[;Update2.msp] /package <Product.msi | Código_producto>
    
Elimina las actualizaciones de un producto

Opciones de reparación
    /f[p|e|c|m|s|o|d|a|u|v] <Product.msi | Código_producto>
    
Repara un producto
    p:
sólo si el archivo no existe
    o:
si el archivo no existe o está instalada una versión anterior (predeterminado)
    e:
si el archivo no existe o está instalada una versión anterior o igual
    d:
si el archivo no existe o está instalada una versión diferente
    c:
si el archivo no existe o la suma de comprobación no coincide con el valor calculado
    a:
obliga a instalar todos los archivos
    u:
todas las entradas de registro necesarias específicas del usuario (predeterminado)
    m:
todas las entradas de registro necesarias específicas del equipo (predeterminado)
    s:
todos los accesos directos especificados (predeterminado)
    v:
se ejecuta desde el origen y copia en la caché el paquete local
    
Establecer propiedades públicas
    [PROPERTY=Valor_propiedades]

Hay otros casos en los que ninguno de estos funciona, he probado con /S, /Silent, /qn, /verysilent, /quiet, /Q, eso depende de la tecnología utilizada en el momento de compilar el mismo.

Continuar leyendo

¿Qué es WiMax?

Luis Domínguez [luisd@vc.copextel.com.cu]

WiMax (Worldwide Interoperability for Microwave Access) es el nombre comercial del estándar 802.16, un protocolo de transmisión de datos inalámbrico que va un paso más allá de WiFi. WiMax promete una velocidad de 70 megabits por segundo (siete veces el ancho de banda de WiFi), que con una sola antena cubrirá un área de 50 kilómetros a la redonda, frente a los 300 metros de WiFi. Es decir, WiMax será a una ciudad entera lo que WiFi es para los hogares: conexión a Internet a alta velocidad sin cables.

El nuevo estándar está respaldado por importantes fabricantes de equipos y proveedores de servicios. El WiMax Forum está formado por más de 200 miembros entre los que destacan nombres como Intel, Nokia, Siemens, Motorola, Samsung o Fujitsu, y donde no faltan operadores de telefonía como Deutsche Telekom, France Telecom, Telecom Italia o Euskaltel. Intel es el gran impulsor de esta nueva tecnología; ya produce los primeros chips WiMax que los fabricantes venderán integrados en sus equipos en unos dos años.

Si WiFi conecta todo el hogar a la Red sin cables, WiMax promete hacer lo mismo con las ciudades

Todavía vivimos la revolución WiFi, que ha liberado Internet de los cables en los hogares, aeropuertos, restaurantes... y ya está aquí su 'hermana mayor', WiMax, que ofrece mayor alcance y más ancho de banda. Esta nueva tecnología, respaldada por buena parte de las empresas más importantes del sector, permitirá con una inversión mínima crear redes inalámbricas metropolitanas conectadas a Internet a alta velocidad que compitan con las grandes empresas de telecomunicaciones. Tras un retraso en el proceso de certificación del estándar, se comenzó a rodar en una primera fase, y que en el 2007 se vendieron los primeros equipos con chip WiMax integrado.

Internet a todas partes

Además de las ventajas inherentes a una amplia red con gran capacidad, a través de la cual ofrecer todo tipo de servicios, WiMax se presenta como una eficiente alternativa para llevar Internet a lugares donde hasta ahora era prohibitivo, como las zonas rurales. En España, Iberbanda trabaja con Intel para llevar esta tecnología a zonas de Cataluña y Andalucía sin cobertura de banda ancha como el ADSL.

WiMax , al contrario que las redes de telefonía móvil (como la actual GSM o la incipiente UMTS), opera dentro de un espectro de onda no regulado (por debajo de los 11Ghz), por lo que en principio no deberían existir demasiados requisitos legales para su implantación, más allá de los problemas que ha habido entre la CMT y los municipios que han instalado redes WiFi sin las licencias necesarias. Será suficiente una inversión al alcance de una Pyme para dar conexión a Internet de banda ancha a grandes zonas.

WiMax funciona mediante señales de radio al igual que WiFi, pero a diferencia de ésta, cuya señal comienza a degradarse cuando trabajan más de 20 personas a la vez, soporta varios cientos de usuarios por canal, con un gran ancho de banda. Es adecuada para ofrecer múltiples servicios de calidad (voz sobre IP, datos, vídeo, etc.) de forma simultánea.

WiMax frente a todos

Los reyes del acceso a Internet por banda ancha son el ADSL y el cable, con WiFi para llevar la Red por el aire dentro de un espacio de unos centenares de metros y UMTS para hacerla completamente móvil (aunque de un coste muy superior). WiMax viene a trastocar un poco los planes de todas estas tecnologías, pues a todas les puede llegar a afectar de alguna manera. La instalación es mucho más barata que la del UMTS o las redes de cable; una pequeña inversión será suficiente para cubrir una ciudad entera con servicios de voz y datos sin necesidad de abrir zanjas.

En principio WiMax no compite con WiFi , pues permitirá conectar los puntos de acceso ( hotspots) de WiFi entre sí. De la misma forma, puede desarrollarse en paralelo a los accesos por banda ancha ofrecidos por las redes de cable y ADSL. Sin embargo, si se convierte en un estándar de uso generalizado y se despliega de forma masiva, podría reemplazar a otros tipos de conexión, e incluso amenazar a la telefonía móvil de tercera generación. La firma de investigación TelecomView destaca en un estudio las buenas opciones de WiMax para acaparar hacia 2009 buena parte de la cuota de mercado del UMTS y el ADSL, tecnologías que en algunos casos puede complementar pero en otros sustituir.

La última milla

La batalla actual entre los proveedores de acceso a Internet está en la última milla, el bucle local o tramo del cable que llega hasta los hogares. El desarrollo de WiMax podría acabar con el dominio del mercado del que disfrutan los propietarios de las líneas que van desde las centralitas a cada domicilio. Con esta nueva tecnología, cualquier proveedor podrá ofrecer acceso a Internet de banda ancha directamente a las casas, sin necesidad de tender una red de cable hasta cada hogar. Y, aunque WiMax nació con el objetivo de cubrir la última milla, también será capaz de ofrecer una alternativa a las conexiones por cable y ADSL.

También representa un serio rival, al menos a medio plazo, para la telefonía móvil de tercera generación (UMTS). La señal de radio de WiMax atraviesa hasta el hormigón, mientras que basta la niebla para deteriorar la de UMTS, que debe desplegar antenas en el interior de los edificios para ofrecer cobertura. Las nuevas operadoras móviles podrían emplear el estándar WiMax para competir con la telefonía 3G, aunque esto dependerá de los organismos reguladores. De hecho, hay un periodo de restricción (hasta 2007) destinado a que los operadores intenten recuperar sus cuantiosas inversiones en el despliegue de UMTS.

Pero aunque WiMax pueda ser un adversario de UMTS en zonas metropolitanas, será difícil que se despliegue una red que cubra todo el territorio y compita en movilidad con las redes de telefonía. Sin embargo, la siguiente revisión del estándar, 802,16e (conocido como WiMax móvil), sí que aparece como alternativa sólida a las redes de telefonía 3G. Por lo que pueda pasar, los operadores ya trabajan en una nueva red (Súper 3G), diez veces más potente que la actual. Brian Subirana, profesor del IESE, cree que para que la telefonía móvil de tercera generación sobreviva a la amenaza de WiMax deberá bajar sus costes de forma radical, convertirse en un servicio ubicuo y llegar a ser un estándar generalmente aceptado, algo que con sus cualidades no parece muy complicado.

Continuar leyendo

Manual de Soporte Técnico (II)

Bill WHG [michel.grc1@gmail.com]

Cómo instalar una impresora

Una impresora es el complemento ideal para cualquier computadora pues te permitirá hacer impresiones en papel de tus documentos, archivos, imágenes o fotografías favoritas.

Para instalar una impresora sigue los siguientes pasos (la computadora debe estar apagada):


Desempaca con cuidado el equipo. Remueve completamente el material de empaque del interior de la impresora. Coloca la impresora en una superficie firme, plana y nivelada. Haz la conexión impresora-cpu (este cable generalmente se compra aparte debido a que la entrada de la impresora y la computadora pueden ser diferentes). Conecta la impresora al toma corriente más conveniente y enciéndela. Coloca en su lugar los cartuchos de tinta (no olvides remover la cinta adhesiva protectora). Coloca papel en la impresora. Enciende la computadora.

a) Desde este punto de la instalación pueden presentarse algunas opciones, por ejemplo:
La impresora será detectada automáticamente por Windows. Sigue las instrucciones en pantalla. Inserta el CD-ROM de instalación de la impresora cuando se te indique y sigue las instrucciones.

b) También es posible instalar una impresora de la siguiente manera:
1.- Haz clic en Inicio, Configuración, Impresoras.
2.- Haz clic en Agregar impresora.
3.- Sigue las instrucciones en pantalla.
4.- Inserta el CD-ROM de instalación de la impresora cuando se te indique y sigue las instrucciones.

c) Otra opción para la instalación puede ser:
1.- Haz clic en Inicio, Configuración, Panel de control.
2.- Selecciona y haz doble clic en el icono Agregar nuevo hardware.
3.- Sigue las instrucciones en pantalla.
4.- Inserta el CD-ROM de instalación de la impresora cuando se te indique y sigue las instrucciones.

Nota importante: en todos los casos es necesario re-iniciar la computadora después de la instalación de la impresora, y si trabajas en red, también puedes usar una impresora previamente compartida para tu usuario y maquina.

Cómo instalar un programa

Muy frecuentemente es necesario poner en la computadora algún otro programa o hasta actualizar uno anterior, a éste procedimiento se le conoce como instalación, para instalar un programa hay que hacer lo siguiente:

1.- Introduce el disco (flexible o compacto) del programa a instalar en la unidad de disco que corresponda (A: o D:).
2.- En caso de un programa en disco compacto el programa de instalación se iniciará automáticamente, sigue las instrucciones en pantalla para aceptar los términos del contrato y seleccionar la carpeta de instalación.
3.- Reinicia la computadora.

Nota importante: en todos los casos es necesario re-iniciar la computadora después de la instalación de un programa.

Cómo desinstalar un programa:

1.- Haz clic en Inicio, Configuración, Panel de control, Agregar o quitar programas
2.- En Propiedades de Agregar o quitar programas, selecciona el programa que deseas desinstalar y haz clic en Agregar o quitar
3.- Confirma la desinstalación del programa y haz clic en Aceptar.

Nota: Algunas veces desinstalar un programa no es tan simple, pues referencias a ese programa permanecen en el sistema aún cuando se haya desinstalado usando la opción Agregar o quitar programas.
Cómo desinstalar un programa manualmente.

Haz clic en Inicio, Ejecutar. En Ejecutar, en la casilla Abrir, escribe: REGEDIT y haz un clic en Aceptar.
Ten mucho cuidado al editar el registro pues el más mínimo error traerá sus consecuencias. Haz doble clic en:
HKEY_LOCAL_MACHINE, SOFTWARE, MICROSOFT, WINDOWS, CURRENT VERSION, UNINSTALL. Dentro de UNINSTALL en la ventana izquierda halla y elimina la referencia del programa que quieras eliminar, por medio de hacerle un clic derecho y hacer un clic en la opción Eliminar. Si por accidente eliminas una de un programa instalado, tendrás problemas cuando quieras desinstalarlo.

Mantenimiento del Sistema

Las últimas versiones de Windows tienen programas muy útiles para dar mantenimiento a los discos del sistema y que se deben usar regularmente para prevenir problemas. También pueden ser de ayuda cuando la computadora no lee un disco.

ScanDisk (Revisión de Disco).- Revisa el disco seleccionado y repara los problemas que halle. Se recomienda correr ScanDisk por lo menos una vez al mes. Antes de correr ScanDisk desactiva el protector de pantalla y cierra todos los programas, para iniciar ScanDisk:

Haz clic en Inicio, Programas, Accesorios, Herramientas del sistema y ScanDisk. Selecciona la unidad que deseas revisar. Selecciona el tipo de prueba, (completa preferentemente). Si quieres modificar las áreas del disco a revisar haz clic en Opciones. Selecciona Reparar errores automáticamente. Si deseas cambiar las opciones de revisión haz clic en Avanzado (por lo general no las cambies) Haz clic en Iniciar

Defrag (Desfragmentador de Disco).- Mantiene las partes de un archivo en sectores contiguos para que se pueda hallar y cargar más rápidamente. Además re-organiza los archivos y mejora el desempeño del disco ya que a los discos muy fragmentados les toma más tiempo acceder y guardar archivos. Es conveniente correrlo por lo menos una vez al mes. Antes de correr el Desfragmentador del disco, vacía la papelera de reciclaje, elimina los archivos temporales, cierra todos los programas y desactiva el protector de pantalla, para iniciar el Desfragmentador del disco:

Haz clic en Inicio, Programas, Accesorios, Herramientas del sistema y Desfragmentador de disco. Selecciona la unidad que deseas desfragmentar. Si deseas que re-ordene los archivos de programa (recomendable) y compruebe errores de la unidad (recomendable) haz clic en Configuración. Haz clic en Aceptar

Liberador de espacio en disco.- Este útil programa nos sirve para deshacernos de archivos que ocupan espacio en el disco duro, tales como: archivos temporales, archivos caché de Internet y archivos de programa innecesarios, para iniciar el Liberador de espacio en disco:

Haz clic en Inicio, Programas, Accesorios, Herramientas del sistema y Liberador de espacio en disco. Selecciona la unidad que deseas liberar y haz clic en Aceptar. En Liberador de espacio en disco selecciona los archivos que quieras eliminar. En Más opciones hallarás otras opciones para recuperar espacio en el disco duro. Haz clic en Aceptar y otro clic en Sí para eliminar los archivos seleccionados.

Estas tareas se deben realizar en todas las computadoras con regularidad dependiendo de la frecuencia con que se utilice el equipo. Un usuario experimentado puede programar estas revisiones para que se lleven a cabo de manera automática de la siguiente manera:

1.- Haz clic en Inicio, Programas, Accesorios, Herramientas del sistema y Asistente para mantenimiento.
2.- Selecciona Cambiar la configuración o la programación del mantenimiento y haz clic en Aceptar.
3.- Selecciona como se realizará la optimización (personalizada) y haz clic en Siguiente.
4.- Selecciona la hora más adecuada para el mantenimiento y haz clic en Siguiente.
5.- Desmarca los programas que se abran automáticamente y haz clic en Siguiente.
6.- Selecciona la frecuencia y hora para correr el Desfragmentador de disco usando las opciones Reprogramar y Configurar. Haz clic en Siguiente.
7.- Selecciona la frecuencia y hora para correr el ScanDisk usando las opciones Reprogramar y Configurar. Haz clic en Siguiente.
8.- Selecciona tu opción para eliminar los archivos innecesarios usando las opciones Reprogramar y Configurar. Haz clic en Siguiente.
9.- Comprueba que las tareas se realicen a la hora más conveniente y haz clic en Finalizar.

Nota: Correr el ScanDisk y el Desfragmentador de disco puede tomar varias horas dependiendo del tamaño del disco duro.

Un buen mantenimiento a una computadora no puede estar completo sin una revisión de virus. Puesto que tenemos información valiosa en la computadora que no queremos perder, es recomendable tener instalado un buen programa antivirus, correrlo con frecuencia (según el uso, acceso a Internet, etc.) y mantenerlo actualizado (conectándote a la página del fabricante y bajando las últimas definiciones de virus). Para correr el antivirus:

Activa tu programa antivirus. Selecciona la unidad a revisar. Haz clic en Buscar, Scan o Aceptar.
El programa te indicará cuando haya terminado y los resultados de la búsqueda

Continuar leyendo

Algunos comandos para el server de World of WarCraft

Eduardo Dominguez [eduardo@sicen.ferronet.cu]

Está muy de moda este juego on-line RPG que todavía no ha tenido mucha influencia en nuestro país debido a la velocidad de la red. Pero esto no nos impide que lo juguemos en nuestras casas en nuestras propias computadoras montando el famoso Server, y después ser el cliente en la misma computadora. Como es lógico esto consume mucha memoria RAM debido a la gran cantidad de datos que se cargan, pero créanme, lo he corrido en una PC con 256MB de RAM y 64MB on-board de video y no se ve tan lento…

Eso solo fue un dato adicional, la idea de escribir este artículo es que muchos de los fanáticos a este juego seguro que no tienen idea de cómo hacer una “salva” de sus personajes (characters). Supongamos que por x motivo o razón tienes que borrar el Server pero no quieres perder tu personaje que se encuentran en level 65 o superior. Lo primero que se te ocurre es dejar las bases de datos, que ocupan alrededor de 150MB o un poquito mas. Pero después que copias de nuevo el Server que cargas las bases de datos con la esperanza de que tus personajes se carguen y creas la cuenta con el mismo nombre…

TODO EN BLANCO…

Esto me pasó personalmente y después no me dieron ni ganas de jugar. Pero traté de buscar una solución y vine a encontrarla hasta el otro día. Así que para los fanáticos de este juego comparto mis conocimientos sobre algunos comandos del servidor del World of Warcraft para crear una salva de los characters de una determinada cuenta. Estos comandos se aplican en el servidor Mangos de la versión de julio del 2008, no sé si funcionaran en otras versiones.

Primero que todo, antes de borrar el Server, sigue los siguientes pasos que solo te tomaran unos minutos.
1 – Carga el servidor.
2 – Cuando termine que la PC hace el “beep” escribes lo siguiente en la consola “mangosd.exe”:
writepdump (nombre de archivo) (nombre del personaje)

Ejemplo:
writepdump Moonblade.dmp Moonblade
(comando) (nombre de archivo) (nombre del personaje)

No es necesario especificar la extensión del archivo. En este caso yo le puse *.dmp para saber que es un archivo dump de World of Warcraft. Eso es opcional. Le puede poner como tu quieras *.wow, *.sav, *.char o no poner ninguno.

Pero que siempre te recuerde que es una salva de tu personaje de WoW.

Al escribir todo el comando con sus parámetros correctos la consola del servidor te dice algo como:
CLI command under processing…

Y después vuelve a “mangos>” esperando otro comando. Ahora se preguntaran ¿Dónde demonios esta el archivo que creamos? La respuesta es muy fácil, en la carpeta en donde tenemos el Server donde ejecutamos el “mangosd.exe” y el “realmd.exe” va a aparecer un archivo con el nombre que le pusiste en la consola, en este caso Moonblade.dmp

Bueno. Ya existe tu salva de tu personaje. Ahora el problema es cargarlo de nuevo que necesita varios requisitos:
1 – Tener una cuenta existente en el servidor
2 – Estar deslogueado (no haber entrado en el WOW)
3 – No tener ningún personaje con el mismo nombre que el que vas a restablecer.

Ahora voy a explicarles bien. El comando para cargar los characters es “loadpdump
La sintaxis es:
loadpdump (nombre del archivo) (nombre de la cuenta) (nombre del personaje)
Ejemplo:
loadpdump Moonblade.dmp edr1 Moonblade
(comando) (nombre del archivo) (nombre de la cuenta) (nombre del personaje)

Ahora, les digo que el archivo en este caso (Moonblade.dmp) tiene que encontrarse en la carpeta del servidor, la cuenta (edr1) tiene que existir y el nombre del personaje tiene que ser único, es decir, NO puede existir otro personaje en esa cuenta con el mismo nombre Moonblade (en este caso) porque sino cuando pases el loggin, que entres con tu cuenta que le vayas a decir Moonblade “Enter World” te va a decir que le cambies el nombre y seguro no vas a querer cambiárselo.

Como es lógico, todos estos inventos traen sus consecuencias y la única que he encontrado hasta ahora es que se te borra la lista de los “Friends” en el menú “Social”. Pero claro, si estamos jugando solos seguro que no tenemos a nadie en la lista.

También tiene sus ventajas, el archivo que se crea es de menos de 1MB de capacidad. Hoy por hoy tengo un personaje en el nivel 26 y solo ocupa 42KB.

Continuar leyendo

Modos de usuario y Canales

Ironmaiden [arminjl@iscm.vcl.sld.cu]

MODOS DE USUARIO:

Los cuales se activan: /mode nick +modo
Ej:
/mode ironmaiden +i


+o
- IRCop global. Se activa mediante /oper login pass
+O - IRCop local
+i - Invisible
+w - Recibe wallops
+g - Lee y manda globops y locops
+h - Disponible para ayuda (u Oper)
+s - Recibe noticias del servidor
+k - Recibe los kills que se ponen
+S - Protege los Cservices
+a - Service admin
+A - Server admin
+N - Network admin
+T - Technological admin
+C - Co admin
+c - Recibe los connects/disconnects del servidor local
+f - Recibe alertas de flood del servidor
+r - Identifica el nick como registrado y protegido
+x - Da host virtual
+e - Recibe mensajes del servidor con usuarios de este modo
+b - Lee y manda chatops
+W - Recibe si le hacen un /whois
+q - No puede ser kickeado por Cservices
+B - Es un bot
+F - Recibe los connects/disconnects del servidor remoto
+I - Invisibilidad total
+H - Oculta status de IRCop en un /whois evita que al hacer un /whois a algún IRCop muestre que sea IRCop, también funciona al mirar los IRCop's conectados en la Red.
+d - No recibe mensajes de los canales
+v - No recibe archivos infectados por virus
+t - Usa vhost
+G - Reemplaza palabras prohibidas por <censored>
+y - (Solo IRCOP) Notifica si un usuario le hace un whois
+1 - Es un coder
+z - Usa conexion segura (SSL)

MODOS DE CANAL:

Estos modos se activan con /mode #canal +modo
Ej:
/mode #canal +S

+p - Canal privado
+s - Canal secreto. No aparece en /whois
+i - Solo invitados
+m - Moderado. Solo hablan operadores, halfops y voces (@,% y +)
+n - No se permiten mensajes externos
+t - Solo operadores cambian topic
+r - Canal registrado
+R - Solo entran nicks registrados (+r users)
+c - Bloquea mensajes con colores ANSI
+q - Canal con owner ( founder )
+Q - No se permiten kicks, menos por Cservices
+O - Solo entran IRCops
+A - Solo entran server/network/tech admins
+K - No se permite /knock
+V - No se permite /invite
+S - Bloquea colores, osea... a comparación del +c este convierte loscolores en Negro.
+l - le pones un limite de usuarios en el canal. Ej: /mode #valleviejo +l150
+b - nick!user@host Prohibe la entrada de nicks con esta mask
+k - clave .Canal con clave .Para entrar /join #canal clave
+o - nick .Da status de operador al nick;
+v - nick .Da status de voz al nick;
+L - #canal .Si +l esta lleno, los siguientes users entran en #canal. Ej: /cs set #valleviejo mlock +lL 150 #catamarca
+a - nick .No se puede kickear al nick; ( protect)
+e - nick!user@host .No se puede banear a nicks con esta mask
+h - nick .Da status de halfop al nick;
+f - [*] lines segs .Proteccion flood. El * indica kick/ban, sin el *, solo kick
+H - Solo nicks sin +I --> el +I solo lo pueden utilizar los Net Admin (Invisibilidad total)
+N - No pueden cambiarse de nick cuando estas dentro del canal con dicho modo.
+G - Reemplaza palabras prohibidas por censored;
+u - Muestra operadores en /who o /names
+C - No ctcp's
+z - Solo nicks con conexion segura (SSL) (+z)

Continuar leyendo

Metiéndonos con 0s y 1s

Thunder [yuniet02015@hab.jovenclub.cu]

Un salu2 a todos los fieles lectores de BlackHat, una vez más...aquí estamos, y voy a empezar este articulo con una pregunta:
Al cambiar la extensión de un archivo: ¿el archivo queda inutilizable?

INTRODUCCION

No se a cuantos, cuantas veces, les ha hecho falta cambiarle la extensión a algún archivo, no se, cuantos motivos...desde simple tarequeo a motivos investigativos, escondedera... no se... la cosa es que nuestro querido Windows esta programado para que cada vez que queremos hacer semejante cosa, se nos avise del “peligro” que corre nuestro archivo si hacemos esto:

Cambiar Nombre

Cuando cambiamos la extensión de cualquier archivo, Windows siempre nos alerta de la posibilidad de que el archivo quede inutilizable, lo cual es incierto.

-Como? Me están metiendo mentira?...que pasaje...

Bueno, en verdad esto lo que quiere decir es que el archivo, en este caso un archivo txt, no podrá ser abierto nuevamente con el bloc de notas al hacer doble clic en el, o sea, que dicho archivo se retira de la familia de los ficheros del bloc de notas o otra familia... no se... la que le pongamos. Ahora, al tener texto “corriéndole en las venas”, no importa que lo haya “adoptado” otra “familia”, nuestro archivo siempre será “un txt” (si me entendieron la metáfora). Por lo que si le volvemos a cambiar la extensión a nuestro querido archivo a “.txt”, será reconocido nuevamente como un archivo de bloc de notas y todo estará igual que siempre, por lo que...nuestro archivo no quedo inutilizable, así que lo que realmente te dice ese mensaje es que al cambiarle la extensión a un archivo por otra, puede quedar inutilizable por el hecho de que al hacer doble clic no abrirá la aplicación correspondiente, solo eso, por lo que no quiere decir que se perderá el archivo o aún que quedara corrupto.

Ahora, si no eres de estas personas que cambian las extensiones de sus archivos frecuentemente, si quieres puedes dejar este escrito aquí y seguir con el otro articulo de la revista..., en cambio, si como yo, eres de los que cambian con bastante frecuencia las extensiones, y no soportas la insistente “advertencia” de Windows al hacerlo, pues esto es para ti. Vamos a ver como podemos, con un poco de Ingeniería Inversa, suprimir el molesto mensajito que nos enseña nuestro queridísimo Win, de manera que nunca más nos vuelva a molestar...jeje.

PRIMERO LO PRIMERO

Lo principal es encontrar el archivo que produce el comportamiento indeseado. Esto se aplica para cualquier comportamiento, aunque en este caso en especial será para el mensaje en cuestión. Al ser un mensaje de la interfaz de Windows, no puede estar muy lejos del grupo de conocidos:
-explorer.exe, shell32.dll y otros personajes más del directorio System32

Lo más simple para encontrar las cadenas de texto, es utilizando una aplicación que pueda realizar búsquedas de cadenas ASCII y Unicode dentro de los archivos como Hex Workshop, WinHex, o cualquier otro editor Hexa. La siguiente imagen corresponde a un fragmento de shell32.dll.

POR DONDE VIENE LA COSA?

Ahora que ya conocemos el archivo, debemos saber como se genera ese comportamiento. Abrimos la librería con un desensamblador como W32Dasm o OllyDbg, aquí con entender un mínimo de lenguaje ensamblador la secuencia es lógica. Primero buscamos la ubicación de la cadena respectiva:

Aunque hay muchas coincidencias que hacen referencia a la cadena buscada, debemos seguir buscando hasta encontrar una que haga un PUSH a la pila del título, mensaje y tipo de ventana de mensaje a la vez, esto significaría algo (aunque probablemente no en el mismo orden) como:

PUSH "Cambiar nombre"
PUSH "Al cambiar la extensión, el archivo puede..."
PUSH <mensaje_aceptar_cancelar>
CALL libreria.mostrar_mensaje

Por ejemplo, para realizar un ciclo FOR desde uno a diez utilizando una variable VAR sería "1 10 FOR VAR" a diferencia de lo que habitualmente conocemos "FOR VAR=1 TO 10" o más tradicionalmente "for (VAR=1;VAR<=10;VAR++)".
Justamente luego de algunas pruebas encontramos un código sospechoso. Este código se visualiza mucho mejor gracias al analizador y debugger de código OllyDbg:

Para verlo de una forma mas “evidente”:

MODIFICANDO CÓDIGO

Entonces, ¿qué pasaría si cambiamos esa CALL por NOP (o sea, no realizar nada). Pues probablemente resolveríamos el problema, sin embargo no sería una solución elegante, pues la pila quedaría con argumentos no utilizados que podrían provocar excepciones luego. Una mejor solución será que busquemos más arriba en el código la parte donde se hace el salto a la dirección 7CAD233A ("la extensión sigue igual") o se sigue al CALL ("se cambió la extensión") en la dirección 7CAD2329, para de esta forma invertir dicho salto y hacer que siempre vaya a la primera respuesta, o sea, que siempre salte a la línea 7CAD233, la línea de la parte “buena”. En la imagen sale resaltada la instrucción que debemos modificar:

O sea, cambiamos JE por JMP. Un salto incondicional JMP que le dice a Windows que la extensión no fue modificada, por lo tanto debe cambiar el nombre de archivo sin advertirnos lo que sucederá si cambiamos la extensión...jeje.

Listo, ahora guardamos los cambios en la dll. Si no hubiéramos usado OllyDbg deberíamos haberlos realizado por medio de un editor hexa, pero en nuestro amigo OllyDbg es de manera directa:

APLICANDO LOS CAMBIOS

Ahora reemplazamos el archivo utilizando alguna utilidad como ERD Commander 2005, HirensBoot, o la que se, luego reiniciamos la PC de manera normal

SE ACABO LA COSA?

Finalmente comprobamos el funcionamiento de los cambios realizados a la librería shell32.dll.

Parece que esto sería la despedida de la advertencia de cambio de extensión, probablemente nunca más la veremos aunque, claro, podría volver en futuras reinstalaciones del sistema.

PALABRAS FINALES

De una forma relativamente simple, logramos modificar el comportamiento en las bases del sistema, sin influir en su estabilidad. La versión utilizada en este artículo fue Windows XP Professional SP2. Las direcciones internas de los archivos como las librerías y otros archivos del sistema cambian entre las versiones de Win, así como en cada PC, aunque las modificaciones pueden aplicarse de igual forma, pero las referencias no serán iguales. Bueno nada, espero que les halla gustado deshacerse de este fatídico mensaje y...en fin...nos vemos en otra.

Continuar leyendo