2014-02-13 26 views
0

我使用Thunderbird插件工作,並需要發送由插件而不是由用戶寫入的郵件。在Thunderbird插件中自動發送郵件

我嘗試用這樣做,但就是不起作用:

var am = Components.classes["@mozilla.org/messenger/account-manager;1"].getService(Components.interfaces.nsIMsgAccountManager); 
var cf = Components.classes["@mozilla.org/messengercompose/composefields;1"].createInstance(Components.interfaces.nsIMsgCompFields); 
cf.from = "[email protected]"; 
cf.to = "[email protected]"; 
cf.subject = "test"; 
cf.body = "just a test\r\n"; 

var params = Components.classes["@mozilla.org/messengercompose/composeparams;1"].createInstance(Components.interfaces.nsIMsgComposeParams); 
params.composeFields = cf; 

var msgSend = Components.classes["@mozilla.org/messengercompose/send;1"].createInstance(Components.interfaces.nsIMsgSend); 

var msgCompose = Components.classes["@mozilla.org/messengercompose/compose;1"].createInstance(Components.interfaces.nsIMsgCompose); 
msgCompose.compFields = cf; 
msgCompose.initialize(window,params); //[Exception... "Could not convert JavaScript argument arg 0 [nsIMsgCompose.initialize]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: *****" data: no] 

msgCompose.SendMsg(msgSend.nsMsgDeliverNow, am.defaultAccount.defaultIdentity, am.defaultAccount.key, null, null); 

任何人都知道那裏是我的錯誤或一個簡單的方法來做到這一點?

謝謝

回答