第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

未始終觸發(fā) Outlook ItemAdd 事件

未始終觸發(fā) Outlook ItemAdd 事件

C#
慕慕森 2022-12-24 12:13:06
我正在嘗試確定收到的郵件是否是垃圾郵件。Itemadd 事件只工作一次。它不會持續(xù)觸發(fā)。我該如何解決這個問題?我做以下事情:public partial class ThisAddIn{    private void ThisAddIn_Startup(object sender, System.EventArgs e)    {        Outlook.MAPIFolder inbox = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);        inbox.ItemAdd += new Outlook.ItemsEvents_ItemAddEventHandler(InboxFolderItemAdded);    }    private void InboxFolderItemAdded(object Item)    {        if (Item is Outlook.MailItem)        {            Debug.WriteLine("I'm in!");            Outlook.MailItem mail = (Outlook.MailItem)Item;            int[] answer = Predict(mail);            if(answer[0] == 0) // Not spam            {                Outlook.MAPIFolder inboxFolder = ((Outlook.MAPIFolder)this.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox));                mail.Move(inboxFolder);            }            else if(answer[0] == 1) // Spam            {                Outlook.MAPIFolder junkFolder = ((Outlook.MAPIFolder)this.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderJunk));                mail.Move(junkFolder);            }        }    }    private int[] Predict(Outlook.MailItem mailBody)    {        Debug.WriteLine("I'm inside in predict function");        double[]feature = featureExtraction.findFeatureIncomingMail(mailBody.Body);        int[] answer = tree.Decide(feature);        return answer;    }}當我給自己發(fā)送郵件時,“我在”和“我在預測函數中”只在調試控制臺中顯示一次。
查看完整描述

2 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

首先,您的代碼無法編譯——對象上沒有ItemAdd事件MAPIFolder。它由Items對象公開(從MAPIFolder.Items屬性返回)。

其次,引發(fā)事件 ( Items) 的對象必須保持活動狀態(tài) - 在類級別聲明它,而不是作為局部變量,在ThisAddIn_Startup方法退出時由垃圾收集器釋放。


查看完整回答
反對 回復 2022-12-24
?
開心每一天1111

TA貢獻1836條經驗 獲得超13個贊

工作代碼就像


 public partial class ThisAddIn

 {

    Outlook.Items items=null;

private void ThisAddIn_Startup(object sender, System.EventArgs e)

{

     Outlook.MAPIFolder inbox = 

    Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);

    items=inbox.Items;

    items.ItemAdd += new 

    Outlook.ItemsEvents_ItemAddEventHandler(InboxFolderItemAdded);

}


private void InboxFolderItemAdded(object Item)

{

    if (Item is Outlook.MailItem)

    {

        Debug.WriteLine("I'm in!");

        Outlook.MailItem mail = (Outlook.MailItem)Item;

        int[] answer = Predict(mail);


        if(answer[0] == 0) // Not spam

        {

            Outlook.MAPIFolder inboxFolder = ((Outlook.MAPIFolder)this.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox));

            mail.Move(inboxFolder);

        }


        else if(answer[0] == 1) // Spam

        {

            Outlook.MAPIFolder junkFolder = ((Outlook.MAPIFolder)this.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderJunk));

            mail.Move(junkFolder);

        }

    }

}


private int[] Predict(Outlook.MailItem mailBody)

{

    Debug.WriteLine("I'm inside in predict function");

    double[]feature = featureExtraction.findFeatureIncomingMail(mailBody.Body);

    int[] answer = tree.Decide(feature);

    return answer;

 }

}


查看完整回答
反對 回復 2022-12-24
  • 2 回答
  • 0 關注
  • 107 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號