private string FSP11CheckCert(string original) { var count = fsPKI.FSXP11GetObjectList(0); if (fsPKI.GetErrorCode() != 0) { fsPKI.FSXP11Logout(); fsPKI.FSXP11SessionClose(); fsPKI.FSXP11Final(); return("Error on funtcion FSXP11GetObjectList, error code=" + fsPKI.GetErrorCode()); } var CertLabel = ""; for (var i = 0; i < count; i++) { if (fsPKI.FSXP11GetObjectListObjectType(i) == 0x00000011) { CertLabel = fsPKI.FSXP11GetObjectListLabel(i); if (CertLabel == "PlaySAFE") { break; } else { CertLabel = ""; } } if (fsPKI.GetErrorCode() != 0) { fsPKI.FSXP11Logout(); fsPKI.FSXP11SessionClose(); fsPKI.FSXP11Final(); return("憑證存取失敗,請您關閉程式後重新再試(" + fsPKI.GetErrorCode() + ")"); } } if (CertLabel != "PlaySAFE") { fsPKI.FSXP11Logout(); fsPKI.FSXP11SessionClose(); fsPKI.FSXP11Final(); return("找不到指定物件 Label[PlaySAFE]"); } return(SignatureData(original)); }