Lotus Notes Mail Exporting – add a feature, add a bug!

Lotus-Notes-Mail_exporter-v9 With v0.8, I added the feature “don’t create the same attachment, in the same attachment folder, if it already exists.”

And I added a bug.  The bug would crash LNME when this happened:

  1. Find duplicate attachment file name
  2. Extract the new attachment to the %temp% directory.

It would crash if the “new” attachment was corrupted.  And here’s the irony, the old section of code had a trap for exactly this sort of behaviour.  When I coded the new section, I forgot to put in the error trapping.

Doh!

Like I said for v0.8, the next version (v0.91 maybe) will use a list table, which is a better way of detecting duplicate files/attachments across directories.

Other changes for the future:

  • Export task entries
  • Export to Outlook
    (unlikely to happen until Microsoft publishes the PST file format)
  • Rich Text Export(?)
    An example of an Rich Text object is a picture which has been pasted into the message body.
  • Appointments & Meetings are missing the body of the meeting/attachment.
  • Tasks

You may download LNME v0.9 here.

Bookmark and Share

Lotus Notes Shell links

The user reported

In Lotus Notes, when I create an attachment, I click on "My Documents" shortcut, and it should take me to My Documents folder.
BUT Lotus Notes is adding it as an attachment instead."

Create Attachments Lotus Notes links issue

Indeed it is.

Fixed in Lotus Notes 6.5.1, with a setting added to the Notes.INI, FIRE PHASERS SHELL_LINKS=1.

SHELL_Links=1 will cause Lotus Notes to treat the shortcut as a link.

Here’s a summary of how Lotus Notes client behave:

Notes version Change type Change
6.0.4 Notes.ini SHELL_LINKS=1
6.5.1 Notes.ini SHELL_LINKS=1
7.x / 8.x fixed by default, changeable via GUI and Notes.ini NO_SHELL_LINKS=1
8.5.x fixed by default, changeable via GUI and Notes.ini NO_SHELL_LINKS=1 
GUI  change is in File / Preferences / Basic Notes Configuration

About FIRE PHASERS: While I was typing this out, I suddenly remembered the FIRE PHASERS Novell login script command.  I was thinking it would make a good age test for any of your Novell techs.

Bookmark and Share

Lotus Notes Mail Exporter v0.8

Lotus-Notes-Mail_exporter-v8

Yesterday, I talked about file hashing in Visual Basic.  There was a reason, and that was that I updated my Lotus Notes Mail Exporter program with some limited duplicate attachment checking.

Limited because it’s simple.  Simple as in:

  • check to see if a file attachment with the same name already exists.
  • if it doesn’t, save it to disk.
  • if it does, check to see if it is a duplicate.  If it is, don’t save the “new” attachment.

Can you see the flaw in my thinking?

No???

Well the BIG FLAW is that if the file attachment we’re trying to save has a unique name, we don’t check it to see if there any duplicates of it already.

The next version of LNME will fix that by using a list table (see yesterday’s post – it’s the second detection method).

The other change in LNME is that the saved message file will have it’s message creation/modified/last access date set to the actual email send date.

You can download LNME here.

Bookmark and Share

Duplicate files and hashing in Visual Basic.

Duplicate file detection is fairly easy to do, as it turns out, and it goes like this.

  1. Read first file.
  2. Calculate a unique fingerprint, and store the fingerprint.
  3. Read second file.
  4. Calculate a unique fingerprint, and compare the fingerprint to the first files’ fingerprint.
  5. If they equal, the two files are duplicate files.

One way of doing this fingerprinting is to use a hashing algorithm, such as MD5 or SHA-1.  A hashing algorithm should give you a unique fingerprint for each file.  The snippet of code to do that, which I borrowed from the Visual Basic Knowledgebase is below the fold.

Now there are applications, such as DiskState, which scan your hard disk for duplicates by using MD5 hashing.  But they do this:

  1. Read first file.
  2. Do While we have a file to read
       Calculate a MD5 Hash, and store that value in a list, alone with the filename and location
  3. If we have another file, go back to 2.
  4. At this point, we’ve checked all the files on hard disk. 
       Now search though the list, and do we have any hashes that are the same?
  5. If we do, we have duplicate files.

Why do I need to know how to detect duplicate files?

Well I was updating the Lotus Notes Mail Exporter program the other day, and decided to implement some duplicate attachment file checking.  I’m not sure if I’m that happy with how I’ve implemented it, time will tell.  It does give me an idea for some other programs …


(more…)

Calendar

March 2010
S M T W T F S
« Feb    
 123456
78910111213
14151617181920
21222324252627
28293031