Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Передача массива из 1С в COM объект, как ? / 5 сообщений из 5, страница 1 из 1
09.12.2004, 12:58
    #32820572
vashkovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача массива из 1С в COM объект, как ?
Необходимо передать массив параметров из 1С в COM объект
в интерфейсе определил
автор
private object[] __arg1C = null ;
public object[] _arg1C
{
[return:MarshalAs(UnmanagedType.SafeArray, SafeArraySubType=VarEnum.VT_ARRAY)]
get{ return __arg1C;}
set{ __arg1C = (object[])value;}
}


В тестовом приложении (на С#)
вызываю
автор
Ole1C_Server._arg1C = new object[]{1};

все работает

в 1С хочется :
автор
ClientService1._arg1C = 1 ;


да колется т.к. возникнет ошибка
Cannot implicitly convert type 'int' to 'object[]'

Можно ли решить данную проблему ?
Или придется дополнить интерфейс методами по заполнению массива ?
...
Рейтинг: 0 / 0
09.12.2004, 14:10
    #32820802
AiSK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача массива из 1С в COM объект, как ?
...
Рейтинг: 0 / 0
09.12.2004, 14:15
    #32820827
vashkovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача массива из 1С в COM объект, как ?
Честно говоря не хочется на пустом месте городить такой огород :((
...
Рейтинг: 0 / 0
09.12.2004, 14:19
    #32820849
Стр
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача массива из 1С в COM объект, как ?
финт, конечно, но попробуй заменить массив объектов на скаляр
Код: plaintext
1.
2.
3.
4.
5.
6.
private object[] __arg1C = null ;
public  object _arg1C // заменить массив на скаляр
{
  [return:MarshalAs(UnmanagedType.SafeArray, SafeArraySubType=VarEnum.VT_ARRAY)]
  get{ return __arg1C;}
  set{ __arg1C = (value is System.Array) ? (object[])value : new object[]{value}; }
}
...
Рейтинг: 0 / 0
09.12.2004, 14:37
    #32820961
vashkovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача массива из 1С в COM объект, как ?
Отличный финт ! заработало, сейчас буду пробовать для нескольких параметров
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Передача массива из 1С в COM объект, как ? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]