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