public static EntryID BuildFromPtr(IntPtr ptr, cemapi.IMAPISession owner) { int cbEntryID = Marshal.ReadInt32(ptr); if (!(cbEntryID > 0)) return null; byte[] id = new byte[cbEntryID]; IntPtr lpEntryID = Marshal.ReadIntPtr((IntPtr)((uint)ptr + Marshal.SizeOf(typeof(int)))); for (int i = 0; i < cbEntryID; i++) id[i] = Marshal.ReadByte(lpEntryID, i); return new EntryID(id, owner); }
public MAPIMessage(cemapi.IMessage msg, IMAPIMessageID msgId) : base(msg, (msgId.ParentStore as MAPIMsgStore).Session) { this.msg = msg; this.msgId = msgId; }
public static MAPIMsgStoreID BuildFromID(IEntryID id, MAPI parent, cemapi.IMAPISession session) { if (id == null) return null; return new MAPIMsgStoreID(id, parent, session); }
public MAPIMsgStore(MAPI parent, cemapi.IMsgStore msgStore, cemapi.IMAPISession session) : base(msgStore, session) { this.msgStore = msgStore; this.parent = parent; this.session = session; }
private MAPIMsgStoreID(IEntryID id, MAPI parent, cemapi.IMAPISession session) : base(id, session) { this.parent = parent; this.session = session; }
public MAPIMsgStoreID(byte[] id, MAPI parent, cemapi.IMAPISession session) : base(id, session) { this.parent = parent; this.session = session; }
private IMAPIFolderID GetFolder(cemapi.PropTags tag) { cemapi.IPropValue[] props = this.msgStore.GetProps(new cemapi.PropTags[] { tag }); if (props.Length != 1) throw new Exception("Couldn't get folder prop!"); return new MAPIFolderID(props[0].AsBinary, this); }
private void adviser_ObjectNotification(EEventMask mask, cemapi.OBJECT_NOTIFICATION o) { switch (o.objType) { case cemapi.ObjectType.MAPI_FOLDER: if (this.FolderEvent != null) { this.FolderEvent(MAPIFolderID.BuildFromID(o.entryID, this), MAPIFolderID.BuildFromID(o.oldID, this), mask); } break; case cemapi.ObjectType.MAPI_MESSAGE: if (this.MessageEvent != null) { this.MessageEvent(MAPIMessageID.BuildFromID(o.entryID, MAPIFolderID.BuildFromID(o.parentID, this), this), MAPIMessageID.BuildFromID(o.oldID, MAPIFolderID.BuildFromID(o.oldParentID, this), this), mask); } break; default: throw new Exception("Event type \"" + o.objType.ToString() + "\" not implemented yet"); //break; } }
private void adviser_NewMail(EEventMask mask, cemapi.NEWMAIL_NOTIFICATION o) { if (this.NewMessage == null) return; this.NewMessage(MAPIMessageID.BuildFromID(o.entryID, MAPIFolderID.BuildFromID(o.parentID, this), this), o.flags); }
public MAPIFolder(MAPIMsgStore parentStore, cemapi.IMAPIFolder folder, IMAPIFolderID folderId) : base(folder, parentStore.Session) { this.folder = folder; this.parentStore = parentStore; this.folderId = folderId; }
public MAPIProp(cemapi.IMAPIProp instance, cemapi.IMAPISession parent) { this.instance = instance; this.parent = parent; }
protected EntryID(IEntryID id, cemapi.IMAPISession owner) { this.id = id.AsByteArray; this.owner = owner; }
//public EntryID(IEntryID id, cemapi.IMAPISession owner) { this.owner = owner; this.id = id.AsByteArray; } public EntryID(byte[] id, cemapi.IMAPISession owner) { this.id = id; this.owner = owner; }