![]() |
VB.NET 2005 to 2008 but still windows 2.0? Image object problem.
Hi,
I just used VS2008 and migrated a project from 2005 to 2008. The reason is that MSDN docs is saying the Image object in .NET Framework 3.5 has a Finalize method, which i want to try out since my app is processing a few image files and then saying it is running out of memory. I am using the Dispose method of this object to get rid of it and then setting it to Nothing. in any case, when i used VS 2008, intellisense still does not show the Finalize method as one of the methods of the object. Any idea why it is still using the Image object from .net framework 2.0? Please see code below: thanks, Mars Private Function EvaluateTiffImage(ByRef displayObject As ThreadMessageClass, ByVal fileName As String, _ ByVal startingPageNum As String, ByVal fileExt As String) As Boolean Dim result As Boolean = False ' count of images in the tiff file Dim imageIndex As Integer = 0 Dim propertyValues As Byte() = Nothing Dim compressionString As String = "" Dim compressionValue As Int16 = 0 Dim tiffImage As Image = Nothing displayObject.TargetWindow = DISPLAY_ID.LIST_PROGRESS Dim tiffData As TiffProcessingDataClass = displayObject.MessageData Try ' using the Imaging Managed objects tiffImage = Image.FromFile(fileName) If Not (tiffImage Is Nothing) Then Dim propertyItems As System.Drawing.Imaging.PropertyItem() = tiffImage.PropertyItems For propertyIndex As Integer = 0 To propertyItems.Length ' Compression property has an id of 259 If propertyItems(propertyIndex).Id() = 259 Then ' The value of which is mapped to a short type (i.e. Int16) propertyValues = propertyItems(propertyIndex).Value ' most significant bit is at higher index compressionString = propertyValues(1) & propertyValues(0) compressionValue = Convert.ToInt16(compressionString) tiffData.ImageCompression = compressionValue If ((compressionValue = IMAGE_COMPRESSION.COMPRESSION_CCITTFAX4) And (fileExt = ".tif")) Or _ ((compressionValue = IMAGE_COMPRESSION.COMPRESSION_HUFFMAN_CCITTRLE) And (fileExt = ".jpg")) Then result = True displayObject.MessageText = "...Found " & GetCompressionName(compressionValue) & " Compression for: <" & fileName & "." Else displayObject.MessageText = "...Error: " & GetCompressionName(compressionValue) & " Compression: <" & fileName & "." displayObject.IsError = True End If DisplayMessage(displayObject) ' found what we are looking for Exit For End If Next Application.DoEvents() ' release the reference to the image object imageIndex += 1 Else displayObject.MessageText = "...Error: GDI+ error was unable to create a document for <" & fileName & "." displayObject.IsError = True DisplayMessage(displayObject) End If Catch ex As Exception Dim innerExceptionString As String = Nothing If ex.InnerException Is Nothing Then innerExceptionString = "No inner exception" Else innerExceptionString = ex.InnerException.InnerException.Message End If displayObject.MessageText = "An exception occurred: <" & ex.Message & ", this error happened when " & _ "Procedo was trying to process file: <" & fileName & " inner exception: <" & _ innerExceptionString & "." displayObject.IsError = True displayObject.TargetWindow = DISPLAY_ID.LIST_RESULT DisplayMessage(displayObject) Finally If tiffImage IsNot Nothing Then ' tiffImage.Finalize() this line has a syntax error when it is uncommented tiffImage.Dispose() tiffImage = Nothing End If End Try Return result End Function *** Sent via Developersdex http://www.developersdex.com *** |
All times are GMT +1. The time now is 09:43 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com