我正在尝试开发一个名为nsIX509CertDB.nsIX509CertDB的FF扩展。从xpcshell调用此函数时,我总是收到错误0x80004005 (NS_ERROR_FAILURE)。我怀疑它失败了,因为在xpcshell环境中,系统不会提示我输入密码。有没有从命令行提供它的方法?
我的代码:
if(nsIFile != null && nsIFile.exists()) {
var certDB = Cc["@mozilla.org/security/x509certdb;1"]
.getService(Ci.nsIX509CertDB);
certDB.importPKCS12File(null, nsIFile);
}发布于 2012-05-17 02:33:05
这很可能涉及到编写代码来替换@mozilla.org/nsCertificateDialogs;1组件(实现nsICertificateDialogs interface)。然后,您可以以任何您喜欢的方式实现getPKCS12FilePassword方法。
更简单的方法是使用NSS中包含的pk12util tool。当然,除非真的需要通过xpcshell来完成。
https://stackoverflow.com/questions/10613562
复制相似问题