Use of SOAP 3 will save you a lot of time. Go MSDN and download the kit, look into the sample. String array can be a comma separated, Recordset, XML format. SAFEARRAY is in fact not more than a struct, why must you stuck with it? Be more creative in solving the problem. :)