我在試圖創建一個Thunderbird擴展,其中一個引導/無重啓類型(我的意思是,JavaScript代碼是而不是從覆蓋層運行。各種活動)。在發送郵件時獲取Thunderbird擴展的發件人和收件人
在某些時候,當用戶決定發送消息時,我想檢查發件人和收件人(收件人,抄送,密送),以便對他們執行一些檢查。
我已經設置和工作的事件監聽器的數量,其中包括一個用於確認發送消息時正確觸發的compose-send-message
事件。
在那裏,我無法找到如何獲取發件人電子郵件地址以及所有收件人的電子郵件地址。我試圖用兩種:
let fields = components.classes["@mozilla.org/messengercompose/composefields;1"].
createInstance(components.interfaces.nsIMsgCompFields)
,並用:
let params = components.classes["@mozilla.org/messengercompose/composeparams;1"].
createInstance(components.interfaces.nsIMsgComposeParams);
let fields = params.composeFields;
但無論如何fields.hasRecipients
返回false,並且如fields.to
爲空(或空,不能完全回憶)。看起來他們沒有被TB設置。
當然,我搜索了周圍,也在TB覆蓋延伸相關的線程,但沒有運氣。有一個SO線程here,似乎不完全回答這個問題,因爲它只是關於發件人。
其他參考文獻:SO again,MozillaZine,TB stdlib。
在此期間,我得到一些提示從這個論壇:https://groups.google.com/forum/#!topic/mozilla.dev.apps.thunderbird/QH39UnH4YlE,https://開頭groups.google.com/forum/#!topic/mozilla.dev.extensions/Lj93jF_2ZNU – superjos 2014-09-26 19:17:14