• Viernes 3 de Mayo de 2024, 02:12

Mostrar Mensajes

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


Temas - Painkiller

Páginas: [1]
1
C# / Problemas con metodo Save Imagenes.
« en: Sábado 10 de Abril de 2010, 00:24 »
Que tal, pues he estado haciendo una aplicaci÷on que imprime la pantalla y la guarda como imagen png, el problema es que recientemente me empezo a dar problemas debido a que no guarda la extension especificada:
Código: C#
  1. public static byte[] takeScreenShot()
  2. {
  3.    // Set the bitmap object to the size of the screen
  4.    bmpScreenShot = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32bppArgb);
  5.    // Create a graphics object from the bitmap
  6.    gfxScreenShot = Graphics.FromImage(bmpScreenShot);
  7.   // Take the screenshot from the upper left corner to the right bottom corner
  8.   gfxScreenShot.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy);
  9.   // Save the screenshot to the specified path that the user has chosen
  10.   bmpScreenShot.Save("Imagen" + index.ToString(), System.Drawing.Imaging.ImageFormat.Png);
  11.   byte[] size = getFileSize("Imagen" + index.ToString() + ".png") ;
  12.   byte[] name = System.Text.ASCIIEncoding.ASCII.GetBytes("|Imagen" + index.ToString() + ".png");
  13.   index++;
  14.   bmpScreenShot.Dispose();
  15.   gfxScreenShot.Dispose();
  16.   return joinByteArray(size, name);
  17. }
  18.  
Como dije la aplicación no arroja excepción alguna, pero al momento de mandar llamar a la funcion getFileSize arroja la excepción FileNotFoundException, algo que he notado es que esto siempre pasa en la tercera llamada a esta función, es decir el directorio se ve asi:
.
..
CapturaPantalla.exe
Imagen0.png
Imagen1.png
Imagen2
Imagen3

y asi sucesivamente, despues de ese punto, no importa cuantas veces se llame ya no agrega la extension, mas sin embargo los datos están ahi, ya que al agregarse la extension en el nombre se ve perfectamente. ¿Alguien sabe por que puede pasar esto?

2
C# / Funciones delegadas en consola
« en: Miércoles 24 de Marzo de 2010, 20:10 »
Hola que tal estaba desarrollando una aplicacion en la cual tengo una clase static con metodos static. Mas o menos en codigo seria asi:
Código: C#
  1.  
  2. public static class A
  3. {
  4.     public delegate void Handler(parametros..);
  5.     public static void CreateHandler(Handler h)
  6.         {
  7.               ....
  8.         }
  9. }
  10.  
  11.  

El problema es que cuando llamo a esta funcion en el main me da un error de
Error   1   An object reference is required for the non-static field, method, or property 'Namespace.Program.Reader(System.IntPtr, System.IntPtr)'   
y en la clase que contiene el main es de la forma:
Código: C#
  1.  
  2. class Program
  3.     {
  4.         public void Reader(IntPtr wParam, IntPtr lParam)
  5.         {
  6.             ....
  7.         }
  8.  
  9.         static void Main(string[] args)
  10.         {
  11.             A.CreateHandler(Reader)
  12.             ....
  13.         }
  14.  
  15.  
  16.  

Simplemente no se a que se deba el error, ademas el metodo Reader no lo puedo llamar desde el main, de hecho no "veo" ninguna otra funcion desde el main. Hay algo que este haciendo mal?

3
C# / Threads y Textbox
« en: Miércoles 17 de Marzo de 2010, 18:23 »
Hola que tal, pues bien tengo un form donde muestro un textbox, dentro del codigo defini una clase "Server" la cual al recibir un cliente separa esa conexion en un nuevo thread, el problema es que quiero imprimir y/o actualizar el estado de cada conexion en el textbox (a manera de log), como ya sabran no es posible directamente ya que las funciones modificadoras estan en otra clase, y ademas en otros thread. Ya he tratado de hacerlo con delegados y eventos pero al ser diferentes thread me salta una excepcion :argh: . ¿Alguien conoce alguna otra solucion posible?, he leido que se podria usar el BackgroundWorker pero no entiendo de que forma me podria ayudar (entiendo que seria una especie de sustituto de threads) de antemano gracias!

Páginas: [1]