Hello,
Does Email have DataRecoveryMode in LoadOptions so can be set like this (Very easy to use!):
Thanks
Hello,
Does Email have DataRecoveryMode in LoadOptions so can be set like this (Very easy to use!):
Thanks
Hello,
Aspose.Email does not have a DataRecoveryMode
property in the LoadOptions
class.
However, we appreciate your suggestion and will consider adding this feature.
Thank you.
Thanks, I’ve asked this because if my memory serves me, I’ve seen some similar behavior for some storage files, not sure if it was Pst or Mbox, or maybe something else.
Currently Email support the recovery of which corrupted file formats?
Thanks.
Thanks,
When opened in traverse mode, it will take longer to read pst items, even for healthy pst/ost files?
Please share a sample corrupted pst/ost file to test against with, or advise how to make one
And finally, please be kind and confirm this in VB.net with .net Framework 4.0?
Using MyStorage As New PersonalStorage(Function(exception, itemId) As PersonalStorage
'Exception handling code here?
MsgBox("Item ID: " + itemId + vbNewLine + exception.Message)
End Function)
If MyStorage.Load(MyStream) = True Then blah blah
End Using
Warning 3 Function ‘’ doesn’t return a value on all code paths.
A null reference exception could occur at run time when the result is used.
Best
Opening PST or OST files in traverse mode can indeed result in longer read times, even for healthy files. This is because traverse mode involves deeper scanning and traversal of the file structure, which can be more time-consuming compared to regular read operations.
Unfortunately, we don’t provide or endorse sharing corrupted files, as they may contain sensitive data. We test on resouces that users provide, so we have no idea how pst can be corrupted intentionally.
To confirm VB.NET code snippet with .NET Framework 4.0, you can adjust it as follows to handle exceptions:
Dim callback As New TraversalExceptionsCallback(AddressOf OnTraversalException)
Using pst As New PersonalStorage(callback)
If pst IsNot Nothing AndAlso pst.Load("test.pst") Then
GetAllMessages(pst, pst.RootFolder)
End If
End Using
Sub OnTraversalException(exception As Exception, itemId As String)
Console.WriteLine(String.Format("{0}: {1}", itemId, exception.Message))
End Sub
Hello,
When using PersonalStorage constructor and Load method to traverse Pst, the PersonalStorageLoadOptions is not available?
How do you think about:
PersonalStorageLoadOptions.DataRecoveryMode enum?
0 None
1 Traverse
So will continue to use FromFile / FromStream with the above option.
Much easier and straightforward IMO, kindly share it as a consideration
Thanks, we can consider such suggestion.
Thank you, for the exception, it can have a separate one like TraverseException etc…
And is this available for both Pst and Ost?
Not for Olm and Mbox?
OnTraversalException(exception As Exception, itemId As String)
When reading Ost PersonalStorage, all itemIds are blank, same for here?
And how to catch the TraversalAsposeException instead of TraversalExceptionsCallback?
Best
The OnTraversalException callback should work for both PST and OST files and OLM.
If you’re encountering blank itemIds when reading OST files, it could be due to how the items are being processed or extracted. Maybe, the nature of the corruption makes it impossible to identify the affected item, or the corruption may not be tied to any specific item.
To catch ‘TraversalAsposeException’:
Sub OnTraversalException(exception As TraversalAsposeException, itemId As String)
Console.WriteLine(String.Format("{0}: {1}", itemId, exception.Message))
End Sub
oh thanks, and the VB.net code for Olm is the same, like below?
Dim callback As New TraversalExceptionsCallback(AddressOf OnTraversalException)
Using olm As New OlmStorage(callback)
If olm IsNot Nothing AndAlso olm.Load("test.olm") Then
GetAllMessages(.. .. ..)
End If
End Using
Sub OnTraversalException(exception As Exception, itemId As String)
Console.WriteLine(String.Format("{0}: {1}", itemId, exception.Message))
End Sub
Yes, that’s right.