Hello everyone,
I am attempting to extract some header information from typical Microsoft
Outlook MSG files in VB.NET. I am not after a complete message or
attachments that may be enclosed. I am particularly interested in the
Message ID field. I have examined MSG files in notepad and hex editors. I
can see that the Internet Headers are there and present. I can do a search
for Message-ID and locate it without any problems in notepad. The only
display issue I have seen so far is that each letter is separated by hex
character 00. Thus the Message-ID string would actually be, M e s s a g e -
I D.
I don't want to use Outlook automation. I have found it to be cumbersome
and slow. I also don't want to be reliant on an installation of Office.
Since the file is binary, I have attempted to use the System.IO.Strea mFile
object to read the file. However, I have
not been able successfully walk through the file and obtain any readable
text. I have played around with various encodings, such as ASCII and
Unicode. I think that MSG files are BASE64/Mime encoded though. Perhaps
that could be part of my trouble.
I have downloaded several example applications that mimic Notepad. However,
none of them have been able to read the encoding of MSG files. I have
gained a new level of appreciation for Notepad :). I wander what it is that
notepad uses to detect the file encoding and display it in such a readable
way.
Does anyone have any experience with reading Outlook data? Again, I am not
after pretty formatting, I just want to extract certain text fragments from
these binary files. Can someone point me in the right direction? I would
think that I just need to be able to read Byte Sream from the file with the
correct encoding and convert it to ASCII text. I have been totally
unsuccessful so far.
Thanks,
Dmitry 7 5036
"Dmitry Akselrod" <dm****@nospam. com> wrote in message
news:hK******** ************@co mcast.com... Does anyone have any experience with reading Outlook data? Again, I am not after pretty formatting, I just want to extract certain text fragments from these binary files. Can someone point me in the right direction? I would think that I just need to be able to read Byte Sream from the file with the correct encoding and convert it to ASCII text. I have been totally unsuccessful so far.
Outlook can be automated, just like Word, Excel etc. It's a bit cranky, but
I have done it. Have you tried adding a reference to it?
Hi,
That's my whole thing is that I don't want to automate Outlook. It's very
clunky. I need to be able to process millions of MSG files and Office
products (i.e. Access) suck with that many files.
Thank you though.
dmitry
"Homer J Simpson" <no****@nowhere .com> wrote in message
news:QkW%f.8941 3$%H.47856@clgr ps13... "Dmitry Akselrod" <dm****@nospam. com> wrote in message news:hK******** ************@co mcast.com...
Does anyone have any experience with reading Outlook data? Again, I am not after pretty formatting, I just want to extract certain text fragments from these binary files. Can someone point me in the right direction? I would think that I just need to be able to read Byte Sream from the file with the correct encoding and convert it to ASCII text. I have been totally unsuccessful so far.
Outlook can be automated, just like Word, Excel etc. It's a bit cranky, but I have done it. Have you tried adding a reference to it?
"Dmitry Akselrod" <dm****@nospam. com> wrote in message
news:27******** *************** *******@comcast .com... That's my whole thing is that I don't want to automate Outlook. It's very clunky. I need to be able to process millions of MSG files and Office products (i.e. Access) suck with that many files.
In that case I'd start searching for third party tools. I assume that MSFT
aren't offering to divulge the details of the format.
Check out the Redemption COM object: http://www.dimastr.com/redemption/
Dmitry Akselrod wrote: Hello everyone,
I am attempting to extract some header information from typical Microsoft Outlook MSG files in VB.NET. I am not after a complete message or attachments that may be enclosed. I am particularly interested in the Message ID field. I have examined MSG files in notepad and hex editors. I can see that the Internet Headers are there and present. I can do a search for Message-ID and locate it without any problems in notepad. The only display issue I have seen so far is that each letter is separated by hex character 00. Thus the Message-ID string would actually be, M e s s a g e - I D.
I don't want to use Outlook automation. I have found it to be cumbersome and slow. I also don't want to be reliant on an installation of Office.
Since the file is binary, I have attempted to use the System.IO.Strea mFile object to read the file. However, I have not been able successfully walk through the file and obtain any readable text. I have played around with various encodings, such as ASCII and Unicode. I think that MSG files are BASE64/Mime encoded though. Perhaps that could be part of my trouble.
I have downloaded several example applications that mimic Notepad. However, none of them have been able to read the encoding of MSG files. I have gained a new level of appreciation for Notepad :). I wander what it is that notepad uses to detect the file encoding and display it in such a readable way.
Does anyone have any experience with reading Outlook data? Again, I am not after pretty formatting, I just want to extract certain text fragments from these binary files. Can someone point me in the right direction? I would think that I just need to be able to read Byte Sream from the file with the correct encoding and convert it to ASCII text. I have been totally unsuccessful so far.
Thanks, Dmitry
--
Texeme Textcasting powers http://www.you-read-it-here-first.com
No, MS is definitely not documenting their MSG format. I did find this
article: http://www.msusenet.com/archive/topic.php/t-288764.html
A gentleman, named Eduardo A. Morcillo has developed some .NET classes that
wrap the Office OLE storage. They are pretty good so far. The classes are
here: http://www.mvps.org/emorcillo/en/code/grl/storage.shtml
I have been able to take a couple of MSG files and obtain a list of streams
(properties) and their values. However, I am still missing the Internet
Headers. They must lie somewhere else in the file. All of this is quite
annoying, thanks to Microsoft.
The only known working API I have seen so far (used by many forensic
applications) is from Fookes software. These guys are great and their tools
are phenomenal, but the API is a little outside my price range.
Being able to obtain the Sender, Recipient, Subject, etc. is definitely a
plus, but I need the Message ID. I guess it's back to more research.
Dmitry
Basically, the MSG file format is a series of binary streams.
"Homer J Simpson" <no****@nowhere .com> wrote in message
news:UsX%f.8956 9$%H.59346@clgr ps13... "Dmitry Akselrod" <dm****@nospam. com> wrote in message news:27******** *************** *******@comcast .com...
That's my whole thing is that I don't want to automate Outlook. It's very clunky. I need to be able to process millions of MSG files and Office products (i.e. Access) suck with that many files.
In that case I'd start searching for third party tools. I assume that MSFT aren't offering to divulge the details of the format.
Actually, never mind on the Internet Headers, they are there. They happen
to be stream, __substg1.0_007 D001F. I just had some issues with data
formatting and conversion. I think that my problem is solved, thanks to Mr.
Morcillo.
dmitry
"Dmitry Akselrod" <dm****@nospam. com> wrote in message
news:Sc******** *************** *******@comcast .com... No, MS is definitely not documenting their MSG format. I did find this article:
http://www.msusenet.com/archive/topic.php/t-288764.html
A gentleman, named Eduardo A. Morcillo has developed some .NET classes that wrap the Office OLE storage. They are pretty good so far. The classes are here:
http://www.mvps.org/emorcillo/en/code/grl/storage.shtml
I have been able to take a couple of MSG files and obtain a list of streams (properties) and their values. However, I am still missing the Internet Headers. They must lie somewhere else in the file. All of this is quite annoying, thanks to Microsoft.
The only known working API I have seen so far (used by many forensic applications) is from Fookes software. These guys are great and their tools are phenomenal, but the API is a little outside my price range.
Being able to obtain the Sender, Recipient, Subject, etc. is definitely a plus, but I need the Message ID. I guess it's back to more research.
Dmitry
Basically, the MSG file format is a series of binary streams. "Homer J Simpson" <no****@nowhere .com> wrote in message news:UsX%f.8956 9$%H.59346@clgr ps13... "Dmitry Akselrod" <dm****@nospam. com> wrote in message news:27******** *************** *******@comcast .com...
That's my whole thing is that I don't want to automate Outlook. It's very clunky. I need to be able to process millions of MSG files and Office products (i.e. Access) suck with that many files.
In that case I'd start searching for third party tools. I assume that MSFT aren't offering to divulge the details of the format.
MSG Files:
Priasoft has several MSG related products. http://www.priasoft.com
In particular, they have a MSG file parsing library that gives
developers access to all the properties of a .msg file, without
outlook.
They also have a viewer product that looks very similar to outlook 2003
with regards to the User Interface. The viewer can view, search, print,
and export msg files.
Regards,
the MSG Guru, Eriq VanBibber This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: pcouas |
last post by:
Hi,
Anyone know how reading Outlook or Outlook express contact File from Javamail ?
It seems theses files are named .dbx and .vba
Thanks
Philippe
|
by: John |
last post by:
Hi
I am using the latest redemption. I am using the below code in vb.net to
send mail in html format. The problem is that text does not get sent as html
and html tags appear as they are in the message like '<HTML>' etc. Any idea
what I am doing wrong?
Thanks
Regards
|
by: Graham F French |
last post by:
Hello,
I can read text files into my application, but I cannot read in msg files as
they seem to be in a proprietry format.
Is there anyway of converting it on the fly or is there an interpretation
method?
Thanks
|
by: Karen Grube |
last post by:
Hi!
I hate to bother you all with this, but I don't know how best to approach
a particular task.
Here's the deal:
Once a month I receive in my own inbox on my company's Outlook Exchange
email server an email from one of our vendors to which is attached a text
file (a comma-delimited data file containing the details of our monthly
|
by: Qwert |
last post by:
Hello,
I would like to read the contents ( mail ) of my outlook program. I assume
these messages are kept in the files "Inbox.dbx" and
"microsoft.public.dotnet.languages.vb.dbx".
Is there anyway to do this in VB.NET. Something like:
MyMessageCollection = OpenDBX( "c:\Inbox.dbx")
For Each Item in MyMessageCollection
| |
by: rcoutts |
last post by:
I have a custom Access database that is a bulk mailing program for my
small business to send emails to my customers (not spam!). Before
sending mail, I export a folder in Outlook to an Access MDB file and
then open the custom database which runs a VB subroutine that iterates
through the exported MDB file and loads in new Senders of email. I'd
like to automate this further by eliminating the need to open Outlook
and export the folder...
|
by: Dmitry Akselrod |
last post by:
Hello everyone,
I am attempting to extract some header information from typical Microsoft
Outlook MSG files in VB.NET. I am not after a complete message or
attachments that may be enclosed. I am particularly interested in the
Message ID field. I have examined MSG files in notepad and hex editors. I
can see that the Internet Headers are there and present. I can do a search
for Message-ID and locate it without any problems in notepad....
|
by: Siv |
last post by:
Hi,
A little while ago I wrote a small program that allowed the user to view
products from a database. The database holds the details of the products
which can be viewed via a form and additionally pictures of the product are
stored in an images subfolder and the database holds the file name of the
relevant picture. The user can then click a button to display the picture in
a pop-up window and also another button to email the potential...
|
by: tshad |
last post by:
I have a program that is reading one of my mailboxes.
It is polling the mailboxes ever 5 minutes to see if there is a message or
not.
Is this how Outlook does it (using Exchange as the server)? It doesn't seem
to. When a message gets to Exchange, it seems to do some type of Push to
Outlook as Outlook has it immediately.
If so, ss there a way to make my program do that in VS. We are getting
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look !
Part I. Meaning of...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
| |
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it.
Here is my compilation command:
g++-12 -std=c++20 -Wnarrowing bit_field.cpp
Here is the code in...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth.
The Art of Business Website Design
Your website is...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
| |
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
| |