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 - seba123neo

#1811
aca tenes para cambiarle la escala a una imagen:

Cambiar resolución a imagen
#1812
Muy Linda realmente  ;D. te paso algunas cositas que vi.

1 - cuando eliminas todos los contactos, te sale un error en tiempo de ejecucion no se "encontro el indice" y sale del programa.

2 - fijate el tema de descargar la conexion a la base, porque me parece por lo que vi no se esta haciendo y despues de hacer algunas ediciones y altas, al salir quedo en uso el archivo de bloqueo de access.

3 - el tema de los MsgBox al usuario cada vez que eliminas es medio fastidioso, y de estar haciendo click en uno y apretar el boton de eliminar, podrias hacer un menu popup en en listbox que tenga opcion de eliminar o editar, eso para mi es mucho mas rapido.

pero son tonterias, la idea esta buena y te quedo bien.

saludos.
#1813
al final nadie sabe que queria, pero SI se sabe que ante de que postee LastDragon, eran 3 usuarios que habian entendido lo mismo.

el tipo es novato, mira si se va a estar metiendo en lios como "si es o no PE" en CIL , en framework (capaz que ni sabe lo que es el framework), no hagamos creer que la pregunta fue tal cosa si nadie sabe lo que queria realmente. y si uso "Convertir" en vez de "Generar", puede ser que al ser tan novato no distinge entre esas 2 palabras y le parecen lo mismo.

saludos.
#1814
pues hay que leer 2 minutos el codigo y va sa ver que en KeyHandler es dodne van a parar las teclas, ponele un punto de interrupcion ahi, y apreta una tecla y fijate como entra...yo ahi lo puse para que lo escriba en un textbox, vos agarra y hace un codigo que lo escriba en un txt..es lo mismo, creo que ya tenes lo que necesitabas ahora depende de vos.

saludos.
#1815
haber proba algo asi, empeza un proyecto nuevo y pega todo este codigo en el Form1, y pone un textbox...es solo un ejemplo despues vos ya veras...

Código (csharp) [Seleccionar]
using System;
using System.Diagnostics;
using System.Windows.Forms;
using System.Collections.Generic;
using System.Runtime.InteropServices;

namespace WindowsApplication1
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
           this.textBox1.Multiline = true;
           this.textBox1.SetBounds(0, 0, 1000, 1000);
       }

       private void Form1_Load(object sender, EventArgs e)
       {
           Hook.CreateHook(KeyHandler); // Instala el Hook
       }

       private void Form1_FormClosing(object sender, FormClosingEventArgs e)
       {
           Hook.DestroyHook(); //Descarga el Hook
       }

       public void KeyHandler(IntPtr wParam, IntPtr lParam)
       {
           int key = Marshal.ReadInt32(lParam);

           Hook.VK vk = (Hook.VK)key;

           switch (vk)
           {
               case Hook.VK.VK_F1: ActualizarTextbox(this.textBox1, "F1");
                   break;

               default: break;
           }
       }

       public static void ActualizarTextbox(TextBox txt, string Texto)
       {
           txt.Text += Texto + "\r\n";
       }
   }
}

public class Hook
{
   [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
   public static extern IntPtr SetWindowsHookEx(int idHook, HookDel lpfn, IntPtr hMod, uint dwThreadId);

   [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
   [return: MarshalAs(UnmanagedType.Bool)]
   public static extern bool UnhookWindowsHookEx(IntPtr hhk);

   [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
   public static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, IntPtr wParam, IntPtr lParam);

   [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
   public static extern IntPtr GetModuleHandle(string lpModuleName);

   public enum VK
   {
       VK_LBUTTON = 0X01,
       VK_RBUTTON = 0X02,
       VK_MBUTTON = 0X04,
       VK_BACK = 0X08,
       VK_TAB = 0X09,
       VK_RETURN = 0X0D,
       VK_SHIFT = 0X10,
       VK_CONTROL = 0X11,
       VK_PAUSE = 0X13,
       VK_CAPITAL = 0X14,
       VK_ESCAPE = 0X1B,
       VK_SPACE = 0X20,
       VK_PRIOR = 0X21,
       VK_NEXT = 0X22,
       VK_END = 0X23,
       VK_HOME = 0X24,
       VK_LEFT = 0X25,
       VK_UP = 0X26,
       VK_RIGHT = 0X27,
       VK_DOWN = 0X28,
       VK_SNAPSHOT = 0X2C,
       VK_INSERT = 0X2D,
       VK_DELETE = 0X2E,

       VK_0 = 0X30,
       VK_1 = 0X31,
       VK_2 = 0X32,
       VK_3 = 0X33,
       VK_4 = 0X34,
       VK_5 = 0X35,
       VK_6 = 0X36,
       VK_7 = 0X37,
       VK_8 = 0X38,
       VK_9 = 0X39,

       VK_A = 0X41,
       VK_B = 0X42,
       VK_C = 0X43,
       VK_D = 0X44,
       VK_E = 0X45,
       VK_F = 0X46,
       VK_G = 0X47,
       VK_H = 0X48,
       VK_I = 0X49,
       VK_J = 0X4A,
       VK_K = 0X4B,
       VK_L = 0X4C,
       VK_M = 0X4D,
       VK_N = 0X4E,
       VK_O = 0X4F,
       VK_P = 0X50,
       VK_Q = 0X51,
       VK_R = 0X52,
       VK_S = 0X53,
       VK_T = 0X54,
       VK_U = 0X55,
       VK_V = 0X56,
       VK_W = 0X57,
       VK_X = 0X58,
       VK_Y = 0X59,
       VK_Z = 0X5A,

       VK_NUMPAD0 = 0X60,
       VK_NUMPAD1 = 0X61,
       VK_NUMPAD2 = 0X62,
       VK_NUMPAD3 = 0X63,
       VK_NUMPAD4 = 0X64,
       VK_NUMPAD5 = 0X65,
       VK_NUMPAD6 = 0X66,
       VK_NUMPAD7 = 0X67,
       VK_NUMPAD8 = 0X68,
       VK_NUMPAD9 = 0X69,

       VK_SEPERATOR = 0X6C,
       VK_SUBTRACT = 0X6D,
       VK_DECIMAL = 0X6E,
       VK_DIVIDE = 0X6F,

       VK_F1 = 0X70,
       VK_F2 = 0X71,
       VK_F3 = 0X72,
       VK_F4 = 0X73,
       VK_F5 = 0X74,
       VK_F6 = 0X75,
       VK_F7 = 0X76,
       VK_F8 = 0X77,
       VK_F9 = 0X78,
       VK_F10 = 0X79,
       VK_F11 = 0X7A,
       VK_F12 = 0X7B,

       VK_NUMLOCK = 0X90,
       VK_SCROLL = 0X91,
       VK_LSHIFT = 0XA0,
       VK_RSHIFT = 0XA1,
       VK_LCONTROL = 0XA2,
       VK_RCONTROL = 0XA3,
   }

   public delegate IntPtr HookDel(int nCode, IntPtr wParam, IntPtr lParam);
   public delegate void KeyHandler(IntPtr wParam, IntPtr lParam);

   private static IntPtr hhk = IntPtr.Zero;
   private static HookDel hd;
   private static KeyHandler kh;

   public static void CreateHook(KeyHandler _kh)
   {
       Process _this = Process.GetCurrentProcess();
       ProcessModule mod = _this.MainModule;
       hd = HookFunc;
       kh = _kh;

       hhk = SetWindowsHookEx(13, hd, GetModuleHandle(mod.ModuleName), 0);
   }

   public static bool DestroyHook()
   {
       return UnhookWindowsHookEx(hhk);
   }

   private static IntPtr HookFunc(int nCode, IntPtr wParam, IntPtr lParam)
   {
       int iwParam = wParam.ToInt32();

       if (nCode >= 0 && (iwParam == 0x100 || iwParam == 0x104)) kh(wParam, lParam);

       return CallNextHookEx(hhk, nCode, wParam, lParam);
   }

}


el tema de estar declarando todas las teclas se puede hacer con un For Each a System.Windows.Forms.Keys...

saludos.
#1816
cuando te bajas la libreria tiene la documentación entera, sino para preguntar especificamente de eso, pregunta en el foro mismo de la libreria, porque aca no sabe casi nadie.
#1817
Cita de: sirdarckcat en 29 Enero 2010, 05:19 AM
de que theme hablan? del azul?
http://www.google.com/


del que usa la mayoria... se ve como el mismo texto los links y yo antes sabia que se subrayaban y aparte se les podia cambiar el color, este es el post que hice hace tiempo y me trataron de loco  :xD

http://foro.elhacker.net/foro_libre/color_de_los_links_del_foro-t279680.0.html;msg1377802

ahora sabemos que no estaba loco...

alguien andubo toqueteando el estilo  :P ?
#1818
no eso no te va a servir, porque usa solo los eventos del formulario y tiene que estar activo, por eso te digo que con un Hook...no veas que porque es facil te va a servir...haber si veo algo y lo posteo, pero mientras ponete en la cabeza la palabra HOOK... :P

#1819
como no...la pagina principal http://dxlib32.se32.com/

PD: ya lo veo a [EX3] por aca otra vez... ;D
#1820
por lo que vi sigue andando el tema de que te tira la inforamción del video antes de descargarlo, para eso usa la API de youtube, peor lo del video no nada seguro.