SafeArrays. Some of the methods take safe arrays as parameters. According to documentation safe arrays are zero-based, one-dimensional arrays (zero-based vectors). For UI Automation client methods apparently only three data types are used in safe arrays: integers, pointers and strings (BSTR). In case of pointers it seems to be only IUIAutomationCondition interface pointers. This UDF implements five functions under these conditions: SafeArrayCreateVector, SafeArrayGetElement, SafeArrayPutElemen