Параметри для ExecuteScriptMethod()

Для виконання одної із фукції "SearchFor" вибраного вікна SelectWindow не можу виконати метод ExecuteScriptMethod. Пише "Несоответствие типа".
Parameters повинен мати тип SAFEARRAY

var Parameters = new GetNewDictionary();
SelectWindow.ExecuteScriptMethod("SearchFor", Parameters);

дана конструкція не проходить. (

Підскажіть, хто знає вихід.

Нравится

5 комментариев

Ніколи не використовував цей метод.
А SelectWindow.ScriptControl.Run(ім'я_функції, параметри, через, кому) Вам часом не підійде?

Нажаль, не підішло. (
Спробував:

SelectWindow.ScriptControl.Run("SearchFor");
і
var Parameters = new GetNewDictionary();
SelectWindow.ScriptControl.Run("SearchFor", Parameters);

Відповідь однакова: "объект не поддерживает данное свойство или метод".
Мається на увазі Run(). Хоча я пройшовся по дереву параметрів об'єкта і Run()там був.
Думаю, що Parameters для метода Run() повинен бути таким же як і для ExecuteScriptMethod()

Для ScriptControl.Run непотрібно створювати масив параметрів.
Натомість потрібно після назви метода через кому передати всі параметри.
Наприклад:

SelectWindow.ScriptControl.Run(ім'я_функції, параметр1, параметр2, параметр3)

.

Скрипт сервісу вікна точно має метод SearchFor?

Якщо має, то можливо під час виконання методу виникала помилка. Ви не намагались на вході в метод ставити

debugger;

і продебажити ?

Віталій, дякую запрацювало за вашою порадою.

SelectWindow.ScriptControl.Run(ім'я_функції);

Моя помилка дійсно в назві функції.

Нема за що.
Був радий допомогти.
:smile:

Показать все комментарии