與此類似How do I return an array of strings from an ActiveX object to JScript但在C#中。傳遞數組從C#COM對象到JavaScript?
我有一個COM控件,將字符串數組傳回給javascript。它似乎是JavaScript不知道它是什麼,我回傳和JavaScript中的數組始終未定義。
的Javascript:
try
{
keystore.openKeyStore("MY", true, false);
var fNames = new Array();
fNames = keystore.getAllFriendlyNames();
document.getElementById('par').innerHTML = fNames[0];
}
catch(err)
{
document.getElementById('err').innerHTML = err.description;
}
輸出 '不確定' 的fNames[0];
C#:
public object[] getAllFriendlyNames()
{
if (!keystoreInitialized)
throw new Exception("Key store has not been initialized");
X509Certificate2Collection allCerts = certificateStore.Certificates;
int storeSize = allCerts.Count;
if (storeSize == 0)
throw new Exception("Empty Key Store, could have opened using the wrong keystore name.");
object[] friendlyNames = new object[storeSize];
for (int i = 0; i < storeSize; i++)
{
string friendlyName = allCerts[i].FriendlyName;
if (friendlyName == "")
friendlyName = allCerts[i].Subject;
friendlyNames[i] = (object) friendlyName;
}
return friendlyNames;
}
我試圖返回兩個對象數組和字符串數組無濟於事。