Found a solution, and thought i would post the answer, in case anyone else needs this functionality.
Firstly, i added this VBScript code to change the message class if the class changed during completion:
Sub Item_PropertyChange(ByVal Name)
Select Case Name
Case "MessageClass"
Item.MessageClass = "IPM.Note.<form name>"
End Select
End Sub
Secondly, on the edit compose page, i used this code for the browse button, to complete the textbox with the full filepath:
sub cmdBrowse1_Click
Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "All Files|*.*"
objDialog.FilterIndex = 1
intResult = objDialog.ShowOpen
If intResult = 0 Then
exit sub
Else
Item.UserProperties.Find("txtBrowse1").Value = "file:\\" & objDialog.FileName
End If
end sub
I used a button named cmdBrowse1 with a textbox named txtBrowse1 with a user-defined field name of txtBrowse1 also.
...and lastly, on the read page, i used this code:
sub cmdBrowse1g_Click
dim objShell
set objShell = CreateObject("Shell.Application")
MyValue = Item.UserProperties("txtBrowse1")
str = MyValue
objShell.ShellExecute str, "", "", "open", 1
set objShell = nothing
end sub
...on a button named cmdBrowse1g to open the document file path contained in the textbox txtBrowse1.
Hope this may be of help to someone else.
BR
Neil