Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Eleкtro

#5321
Cita de: kondrag_X1 en 12 Abril 2015, 19:09 PMen concreto estoy utilizando el evento Keypress.

Puedes hacerlo mediante la detección genérica de la entrada del teclado (RAW Input), pero requiere la implementación de una lógica algo tediosa (o aburrida), primero debes documentarme bastante (sobre todos los conceptos, mensajes, y estructuras que no mencionaré aquí abajo) y realizar mucho P/Invoking en tu código.

1) Obten los dispositivos de teclado/usb con la función GetRawInputDeviceList:
https://msdn.microsoft.com/es-es/library/windows/desktop/ms645598%28v=vs.85%29.aspx

2) Registra los dispositivos obtenidos, con la función RegisterRawInputDevices:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms645600%28v=vs.85%29.aspx

3) Intercepta los mensajes de la ventana (WndProc):
https://msdn.microsoft.com/en-us/library/system.windows.forms.control.wndproc%28v=vs.110%29.aspx

4) Espera a que se reciba el mensaje WM_INPUT (0x00FF):
https://msdn.microsoft.com/en-us/library/windows/desktop/ms645590%28v=vs.85%29.aspx

5) Examina el parámetro lParam del mensaje filtrado, el cual contiene una dirección de memoria hacia una estructura RAWKEYBOARD ...debes asignar los datos del bloque de la memoria no administrada hacia una instancia de esa estructura (lo haces con la Class Marshal) para determinar de que teclado proviene la entrada (el input) además de la tecla virtual (vKey) y el tipo de mensaje (WM_KEYDOWN, WM_KEYUP, etc):
https://msdn.microsoft.com/en-us/library/windows/desktop/ms645575%28v=vs.85%29.aspx

6) Evaluas si es el teclado que quieres que sea, y activas un flag booleano en cualquier parte (Dim isPrimaryKeyboard = True), o guardas los datos que quieras para hacer otro tipo de evaluaciones...

7) Cuando se dispare el evento KeyPress en tu event-handler, determinas la cancelación del evento (e.Handled) dependiendo del valor de ese flag, o de dicha evaluación.

8) Vuelta a empezar desde el punto nº4.

Aquí tienes un ejemplo (no lo he probado):
http://www.codeproject.com/Articles/17123/Using-Raw-Input-from-C-to-handle-multiple-keyboard

Saludos
#5323
Scripting / Re: ¿Qué significa este error?
16 Abril 2015, 20:16 PM
Deberia(mos) eliminar todas las preguntas que no indiquen el lenguaje de programación que se está usando.

Esto me mosquea aun más cuando son usuarios veteranos.

Saludos
#5324
Programación General / Re: Proyecto Instituto
16 Abril 2015, 19:25 PM
Cita de: kub0x en 16 Abril 2015, 16:23 PM¿Elektro has probado si tu code es capaz de resolver captchas?

ReCaptchas de Google seguro que no, otro tipo de Capcthas pues... no lo he probado.

Cita de: kub0x en 16 Abril 2015, 16:23 PMSin embargo es de pago y no estoy yo para pagar licencias.

¿pagar licencia?, ¡no hay problema con eso! (¿cuantas veces lo voy a tener que linkear? :P)

Microsoft Visual Studio 2013 Ultimate + Resource Pack (Actualizado 09-Oct-2014)

PD: Revisa también la librería ABC OCR.Net que incluye el pack.
Pd2: Recuerda, puedes desempaquetar el instalador con InnoUnp.

Saludos!
#5325
Pues nada, ya hay "ganador", enhorabuena.
#5326
Buenas!!!

Cómo ya hice alguna que otra vez aquí mismo, publico este mensaje para mostrar mi agradecimiento a todos los que me ayudaron en el pasado...y a todos los que forman "elhacker.net" y su foro, aunque no puedo hacerle un regalo a todos, pero si puedo sortearlo de esta manera al que esté más espavilado :P

Así que, una vez más vengo a regalar un código/cupón para una cuenta premium de 48 horas en Uploaded.Net a la primera persona que deje su comentario en este post.

Las únicas condiciones son que esa persona debe tener al menos 500 mensajes publicados, y debe estar registrado desde hace más de un año.
( tampoco pido mucho, solo que hayan colaborado lo suficiente en el foro ::) )

Saludos!
#5328
Programación General / Re: Proyecto Instituto
16 Abril 2015, 09:47 AM
¿Qué lenguaje?, el que prefieras que esté capacitado para el desarrollo iOS.

Por ejemplo, C# o VB.Net, utilizando Xamarin + Visual Studio para extender las capacidades de éste al desarrollo de aplicaciones para Android (aunque no necesitas VS, pero bueno, es lo que a mi me gusta).

¿Complicado?, pues depende, si no existen herramientas avanzadas para el lenguaje que escojas entonces significa que deberías desarrollar por ti mismo el algoritmo OCR, por ende... una completa locura.
En este caso, en la plataforma .Net, existen muchas herramientas (al igual que para C++ y Java por ejemplo, son lenguajes muy demandados y explotados, librerías inteligenes de OCR debe haberlas, pero las desconozco)

Cita de: engel lex en 15 Abril 2015, 16:36 PMyo creo que librerías ocr listas deben haber bastantes, pero no creo que sea tan simple

Para .Net conozco varias librerías pero la que considero más útil es la librería de pago Aspose.OCR de Aspose.Net (es un conjunto de librerías), además de ser sencilla de utilizar, es bastante "lista", se puede aplicar distintas configuraciones de reconocimiento de idioma y se le puede "entrenar".

La he utilizado poco en el pasado pero guardé un ejemplo de uso, lo comparto por si sirve para esta duda:

Código (vbnet) [Seleccionar]
Imports Aspose.OCR

Public Class Form1

   Private Sub Form1_Shown() Handles MyBase.Shown

       ' Resource file
       Dim resourceFilePath As String = IO.Path.GetFullPath("C:\Aspose.OCR.Resources.zip")

       ' Source file: the file on which OCR will be performed
       Dim imageFile As String = "C:\Sampleocr.bmp"

       Console.WriteLine("Performing OCR on " & imageFile & "....")

       ' Initialize OcrEngine
       Dim ocr As New OcrEngine()

       ' Set the image
       ocr.Image = ImageStream.FromFile(imageFile)

       ' Add language
       ocr.Languages.AddLanguage(Language.Load("english"))

       ' Load the resource file
       ocr.Resource = New IO.FileStream(resourceFilePath, IO.FileMode.Open)

       Try
           ' Process the whole image
           If ocr.Process() Then

               ' Get the complete recognized text found from the image
               Console.WriteLine("Text recognized: " & ocr.Text.ToString())
               IO.File.WriteAllText("C:\Output.txt", CType(ocr.Text, Object).ToString())

           End If

       Catch ex As Exception
           Console.WriteLine("Exception: " & ex.ToString())

       End Try

   End Sub

End Class
#5329
Interfáz ...de?.

...aplicación de escritorio?, aplicación web?, un juego?, un sistema operativo?.

¿Qué lenguaje, tecnología, y framework?.

¿La aplicación debe tener alguna funcionalidad en concreto?, es decir, ¿para que debe servir esa aplicación?.

No somos magos, especifica los detalles necesarios al formular una pregunta de programación!.




De todas formas por tus posts, intuyo que te refieres a una aplicación de escritorio en C# bajo tecnología WindowsForms y los controles de Microsoft .Net Framework, aunque sigo desconociendo la funcionalidad de dicha app.

Trata de diseñar una interfáz amigable, sencilla de entender, en ingles (¡NO EN ESPAÑOL!) o multi-idioma,
ponte en la piel del end-user, utiliza mensajes de ayuda (tooltips) para facilitarle el manejo por tu aplicación, si tienes textboxes u otros controles de edición entonces no te olvides de añadir text-hints (tips de ayuda que aparecen en controles vacíos para indicar de que manera se debe rellenar el texto),
y a menos que sea un programa muy simple con "un botón" entonces nunca metas toda la lógica del programa en un solo form, divide el programa en "secciones", el form principal con la funcionalidad principal, el form de opciones con la configuración del programa, etc...

Puedes utilizar pestañas (tabs) verticales o laterales, o un menú, entre otras técnicas.

También podrías implementar un menú Ribbon
Easily Add a Ribbon into a WinForms Application (C#)

Si te está permitido usar cualquier cosa para el diseño de la interfáz, entonces indiscutiblemente debes utilizar un set de controles de terceros (o también podrías personalizar por ti mismo los controles de Microsoft), sin duda alguna yo te recomiendo los controles de Telerik para permitirte desarrollar una aplicación con una interfáz única y espléndida:
Telerik for WinForms

Otros controles muy buenos son:
Krypton
DotNetBar

Si prefieres algún recurso gratuito (no te lo recmiendo) siempre hay muchos controles gratuitos en la página CodeProject, además de tutoriales, etc...

Cómo este, lo saqué de dicha página (para que te hagas una idea):
[APORTE] Amazing ProgressBar

El compañero @Doddy compartió unos themes bastante interesantes:
[Tutorial] Skins para C#

Yo compartí el source de algunos user-control que desarrollé cómo este:
[SOURCE] ElektroListBox v2.1

Por último, si quieres intentar impresionar a tu profesor/a para ganar "puntos" entonces esta vez intenta trabajar de una manera profesional, trata de diseñar un mockup (una especie de Sketch de aplicaciones) y enséñale eso antes de implementar el diseño en la aplicación.

Yo te recomiendo esta aplicación:
Balsamiq Mockups

Pero también podrías usar:
PowerMockup
WireframeSketcher Studio

Saludos!
#5330
Software / Re: kgb archiver
15 Abril 2015, 16:35 PM
Cita de: JavierJV en 15 Abril 2015, 14:34 PMPense que desarrollaban su propio algoritmo je

no, pero para que todo quede dicho, supuestamente mejoraban algún aspecto del algoritmo original (no se que aspectos, ni tampoco lo que considerarán "mejora").

saludos