Hola, perdón por la extensión pero quise ser clara en la pregunta.
En una aplicación Win Forms con vb 2003 usé el siguiente código para tomar un 
gráfico de un form y guardarlo en disco:Me.chrtPLT.EditCopy()Me
PrivateSubGrabarBitmap(ByValpArchivo AsString)  DimoDataObj AsIDataObject = 
Clipboard.GetDataObject()  
IfoDataObj.GetDataPresent(System.Windows.Forms.DataFormats.Bitmap) Then     
Thread.Sleep(300)
     oImgObj.Save(pArchivo, System.Drawing.Imaging.ImageFormat.Bmp)     
DimoImgObj AsSystem.Drawing.Image = CType(oDataObj.GetData(DataFormats.Bitmap, 
True), Image) EndIf
EndSubEl thread.sleep(300) lo puse para evitar un error de CLR que daba 
aleatoriamente (año 2006) pero no sabía por qué se arreglaba con eso (lo copié 
de la web).
Pasé la aplicación a VB 2005 y cuando trata de hacer el GetDataObject da 
siempre el siguiente error:
El tiempo de ejecución detectó un error grave. La dirección del error fue 
0x7a005c3d, en el subproceso 0x174. El código de error es 0xc0000005. Es 
posible que este error sea un error de CLR o de partes no seguras y no 
verificables de código de usuario. Entre los orígenes más habituales de este 
error se encuentran los errores de referencias calculadas para la 
interoperabilidad COM o PInvoke, que pueden dañar la pila.Intenté usar el 
siguiente código pero da el mismo error en el .ContainsImageDimImg 
AsImageIfClipboard.ContainsImage() ThenImg = Clipboard.GetImage()EndIfAlguna 
sugerencia ?.GrabarBitmap(Ruta & "PLT.BMP")


      
____________________________________________________________________________________
¡Buscá desde tu celular!

Yahoo! oneSEARCH ahora está en Claro

http://ar.mobile.yahoo.com/onesearch

Responder a