Ruby win32ole возвращает список, необходимо преобразовать в массив

Я использую otalclient.dll для HP Quality Center Automation, чтобы определить список тестовых наборов Root. Метод ole возвращает List (в частности IFactoryList), и мне интересно, что мне нужно сделать или прочитать, чтобы узнать, как преобразовать список в массив.

Код:

qc_connection = WIN32OLE.new('tdapiole80.TDConnection')
qc_connection.InitConnectionEx connection_url
qc_connection.login connection_name, connection_pwd
qc_connection.Connect qcDomain, qcProject
tree_manager = qc_connection.TestSetTreeManager
test_set_factory = qc_connection.TestSetFactory
test_set_list = test_set_factory.NewList("")

1 ответ

Решение

Похоже, список нельзя преобразовать в массив напрямую. .each работает, хотя и так, если бы я был склонен, я мог бы сделать:

list_to_array = Array.new

<List>.each do |list_item|
  list_to_array << list_item
end

Однако, просмотрев список в Visual Studio, я понял, что просто ищу члена элемента списка, и вместо этого схватил его.

list_to_array = Array.new

<List>.each do |list_item|
  list_to_array << list_item.Name
end
Другие вопросы по тегам