Why do I get a SilkCentral Core Components crash when replaying my COM script and how do I resolve this?
COM Support was deprecated in Silk Performer 2011, so this solution is only applicable up until Silk Performer version 2010 R2.
If the COM script passes multi-dimensional arrays with more than three elements then it will be necessary to alter the setting "Max number of table elements" in the COM active profile setting located at: "SETTINGS | ACTIVE PROFILE | COM/ADO | RECORD | SETTINGS".
This setting specifies the maximum number of array elements for which Silk Performer should generate access functions in the test script. These functions are generated whenever an array parameter is passed to or received from a COM object. The default setting is three so may need to increase this value as appropriate.
If the COM script passes multi-dimensional arrays with more elements than specified in this setting then you will also see comments similar to the following in the recorded script:
// ... //ComGetString(hFunc0, "arrSPParams", sValue, STRING_COMPLETE, nTypeCode);
These lines are commented because the Silk Performer recorder does not record array elements of an index higher than the profile setting.
Please note: That if this setting is changed then you will need to record a new BDF script for the settings to take affect.