当我使用接口组件的importCertsFromFile()
方法时nsIX509CertDB
,任何失败似乎都会抛出相同的异常:
Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIX509CertDB.importCertsFromFile]
有没有办法确定失败的原因?
有时,它会显示一个带有原因的警报,例如“该证书已安装”。有时它只是在没有任何内置警报的情况下抛出异常,例如选择 word 文档或任何非证书文件。
certdb = components.classes[nsX509CertDB].getService(Components.interfaces.nsIX509CertDB);
try{
certdb.importCertsFromFile(null, fp.file, nsIX509Cert.CA_CERT);
alert('The certificate was added succesfully!');
}catch(e){
alert(e);
}
我想确定失败的原因,因此如果组件在这种情况下还没有错误,我可以显示正确的错误消息。这可能吗?