I have discovered there are two separate issues here. The first one is that a change in 3.3 means that we no longer try to determine the local phone number and set the From property on new messages - instead this information is added automatically by Windows Mobile when a message is sent. The reason for this change is that the security policy on some devices resticts access to the local phone number except for privileged code. This means that for messages created locally on the device which are not sent there will be no from recipient by default. You can set this manually using
sms.Properties(MessageProperty.SenderEmailAddress) = "12345"
or to have both name and number
sms.Properties(MessageProperty.SenderEmailAddress) = "John Doe <12345>"
The second issue is a bug with the way the body text is stored. There is however a simple workaround - you can set the property directly:-
sms.Properties(MessageProperty.Subject) = sms.Body
You will then find that after moving the message these properties are set as expected.
Peter