Windows Phone 8.1: Cómo usar la cámara, primeros pasos


Hace poco comencé con un proyecto bastante interesante el cual incluía un módulo de reconocer caracteres en una imagen, al lograr eso se podrían desplegar varios tipos de aplicaciones; sin embargo el primer obstaculo que encontré es que controlar la cámara del dispositivo no es como se hacía con sus antecesores (WP7 y WP8), es un poco más cercano a como se maneja en WindowsRT.

Por lo que primero que tenía que hacer era domar este dispositivo que accede a un nivel muy bajo en cuanto a Hardware (se me crasheó el móvil más de 30 veces!!!!), por lo cual decido compartirles esta serie de artículos hasta reconocer caracteres en Windows Phone 8.1, mecanismo que se denomina OCR (Optical Character Recognition).

Como estos artículos son nivel medio supondré que ya tienen creado el proyecto Windows Phone 8.1 XAML con C#.

Declarando los manifiestos

En el manifiesto de la App ir a la sección de Capabilities, seleccionar “Microphone” y “Webcam”

Continue reading “Windows Phone 8.1: Cómo usar la cámara, primeros pasos”

WinAPI en aplicaciones de escritorio


Cuando estamos desarrollando aplicaciones de escritorio con tecnologías Microsoft lo hacemos con WPF o WinForms, pero muchas veces necesitamos acceder a funcionalidades extra que nos proporciona Windows ya que este cuenta con un gran volumen de funciones para los desarrolladores el cual podemos tener acceso desde las entrañas de Windows hasta los más altos niveles como es la interfaz gráfica, ya sea modificandola a nuestro acomodo o simplemente porque el desarrollo lo necesita.

En el desarrollo de Malware es muy común hacer uso de WinAPI porque como ya les comentaba se puede tener acceso a un nivel muy cercano de Kernel de Windows, hacer estos movimientos en aplicaciones con C++ y C es muy sencillo ya que Windows proporciona los headers para usarlos de manera muy cómoda; el problema viene cuando queremos acceder a estas funcionalidades desde C# o Visual Basic ya que por su propia arquitectura no acceder de manera convencional estas API.

Para entrar un poco en detalle, las API de Windows están contenidas en unas DLL ya compiladas ya que casi todas las aplicaciones que ves en la pantalla (si estás en Windows) acceden a estas y para hacer llamados a código nativo desde aplicaciones administradas como es el caso de las aplicaciones de .Net, me explico, acceder a funciones de DLL’s construidas en lenguajes como C++ (No Visual C++)  o C para ser usadas en aplicaciones que funcionan bajo el CLR

Sin ir más allá en teoría ya que si estás en este post es porque algo debes saber de WinAPI, les presento un portal Web donde recopilan todas las funcionalidades y ponen el código en C# y VB de como debe ser usado, en las más comunes ponen ejemplos de uso.

http://www.pinvoke.net/

How To: Escalar imágen manteniendo proporciones – JQuery


La mayoría de veces tenemos que poner un listado imágenes de manera estándar pero la peor práctica es volver todas estas imágenes al mismo tamaño una a una en un editor de imágenes, ya que por lo general estas vendrán de algún servicio web o directamente desde los clientes.

Teniendo esta necesidad me puse a la tarea de buscar en Internet y mejoré un código muy bueno que encontré en la siguiente Web: http://ericjuden.com/2009/07/jquery-image-resize/ Continue reading “How To: Escalar imágen manteniendo proporciones – JQuery”

Primeros pasos en Node.js


Casi siempre que tengo que escribir una nueva App con Node.js me toca buscar los pasos iniciales ya que mi frecuencia de desarrollo en esta tecnología no es alta, por lo que decidí re-copilar todos estos primeros pasos que desde mi perspectiva son los más generales.

¿Cómo instalar Node.js en Ubuntu 14.x?

Desde la consola ya sea directamente o un terminal PuTTY escribir los siguientes comandos:

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm

Cabe aclarar que la máquina virtual debe tener conexión a Internet.

¿Cómo instalar Express?

Continue reading “Primeros pasos en Node.js”

Snippet: storageHelper.js


El día de hoy he creado una pequeña librería que encapsula las funcionalidades para LocalStorage de HTML5, esto se puede usar en cualquier Web App o Mobile App.

Sin más o menos que decir les dejo la librería: Continue reading “Snippet: storageHelper.js”

Día del maestro – FacultyCol, WebGL Demo 2 parte 2


En la primera parte con el demo que se iba a hacer para el evento FacultyCol se hizo un servidor que va a atender todas nuestras peticiones y en si opera como un servidor de chat, recibe y envia a todos sus clientes.

En esta sección será un poco más breve y me concentraré a hacer posible el control de Internet Explorer donde básicamente lo que se hará es un auto-tecleador o un simulador de eventos de teclado, como si fuera alguien quien estuviera físicamente manipulando el teclado.

Lo más básico y sencillo es hacer una aplicación de consola en Visual Studio, para este caso usaré Visual Studio 2013 y compilaré la aplicación con el .NET Framework 4.5.

Continue reading “Día del maestro – FacultyCol, WebGL Demo 2 parte 2”

Día del maestro – FacultyCol, WebGL Demo1


WebGL logo

Lo prometido es deuda y comenzaré a publicar los 4 demo que se tenían preparados para el día del maestro.

La primera demostración es un escenario en 3D donde se controla la posición mediante las teclas de teclado a la cámara y con el mouse se controla la dirección de la misma.

La carpeta contiene un index, la librería de Three.js y PointerLockControls.js:

http://1drv.ms/1n2cBkz

Auto KeyDown y KeyUp en C#


En alguna ocasiones necesitamos desarrollar un programa o aplicación donde simule un evento del teclado para hacer diversas cosas, como por ejemplo controlar un videojuego de manera remota, haciendo spam, usando Kinect para leer los movimientos y controlar el flujo de un programa externo, en fin… para mi caso lo necesito para automatizar el tecleado de la flecha hacia arriba y hacia abajo, en los próximos post explicaré el motivo.

Inicialmente lo iba a hacer en Javascript nativo pero dadas las políticas de seguridad de Internet Explorer 11 me vi obligado a hacer otra solución, lo único que se me ocurrió fue hacerle una trampilla a IE y hacerle creer que el usuario era quien enviaba el comando del teclado, desgraciadamente no soy el único que se le ha ocurrido y no solo con buenas intenciones, averiguando a puro ensayo y error me di cuenta que para llevar a cabo esta acción la aplicación debe estar con permisos administrativos, de lo contrario IE 11 cierra la aplicación al detectar que está siendo aplicada esta técnica que comunmente se usa para generar spam.

Ok, luego entendiendo esos puntos claros no queda más que comenzar con un proyecto nuevo en Visual Studio, para este caso estoy usando el Framework 4.5 pero según la documentación la función que se usará es soportada desde el Framework 2.0.

En esta solución nueva seleccionar un proyecto para consola.

Se y entiendo muy bien que la función keybd_event fue sustituida por SendInput, pero nuevamente entra a jugar la seguridad de IE y es como si no le hiciera nada.

Entonces declararemos el siguiente método:

 

        private static void SendInput(byte key, int time)
        {
            keybd_event(key, 0, KEYEVENTF_EXTENDEDKEY | 0, 0);

            Thread.Sleep(time);

            keybd_event(key, 0, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
        }

Continue reading “Auto KeyDown y KeyUp en C#”

Como hacer un botón para tu Website del Windows Store


En este post mostraré como hacer un botón muy parecido al que tiene el Windows Store en Internet… al menos en funcionalidad; este botón lo que hace es ejecutar la aplicación “Tienda” o “Store” (dependiendo del lenguaje de Windows 8 instalado) y buscar directamente la aplicación que se desea.

Aquí un ejemplo del botón original:

Ejemplo real

Y aquí se muestra como quedaría (Website todavía en contrucción):

Resultado

Continue reading “Como hacer un botón para tu Website del Windows Store”

Como ver código fuente o “Hackear” una aplicación hecha en .Net


Cuando estamos construyendo software es muy sencillo mirar nuestro propio código fuente y recordar que hemos hecho para posteriormente usarlo en un nuevo proyecto u optimizar el código ya creado, el problema viene cuando se quiere dar mantenimiento o crear una nueva aplicación con ensamblados de terceros ya que no se conoce en su totalidad el código.

Pero el verdadero problema viene cuando se desea construir una aplicación que usa ensamblados en DLL’s y no se sabe que puede contener esto, también que puede ser un riesgo para el software ya que muchos ensamblados de terceros vienen con código mal implementado o con backdoors que sus creadores no han detectado. Continue reading “Como ver código fuente o “Hackear” una aplicación hecha en .Net”