![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 12.09.2011
Сообщений: 16
|
![]()
Добрый день. Требуется вызвать метод с названием Accept и передать ему переменную ID через InvokeMember.
Вызываю так: Код:
При этом метод вызывается и отрабатывает. Метод Accept ничего не возвращает, он принимает только string ID. Предположительно это и является причиной ошибки так как метод ничего не возвращает. Подскажите пожалуйста как вызвать метод чтобы вызов через InvokeMember ничего не возвращал. Последний раз редактировалось Timer32; 13.09.2011 в 16:33. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 15.12.2010
Сообщений: 398
|
![]()
Type cr = ...;
object instance = Application.CreateInstance(..); cr.InvokeMember("Accept", BindingFlags.InvokeMethod |BindingFlags.Public |BindingFlags.Static , null, instance, new object[] { ID }); |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 15.12.2010
Сообщений: 398
|
![]()
Если хочется красоту то dynamic
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 12.09.2011
Сообщений: 16
|
![]()
У меня не много не так.
Код:
И не понял что здесь указывать object instance = Application.CreateInstance(..); |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 15.12.2010
Сообщений: 398
|
![]()
Не понел.
Я думал в cr у нас СОМ объект созданый через инстанс, и тебе нада в нем вызвать метод. SoapClient30 классе нету метода Accept ? И откуда уверенность что он там есть. Возможно требуется SoapClient10 либо SoapClient какой нить где есть этот метод. |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 12.09.2011
Сообщений: 16
|
![]()
Извеняюсь перепутал метод AcceptRequest
![]() |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 15.12.2010
Сообщений: 398
|
![]()
Ну вот. Все так просто оказалось
![]() |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 12.09.2011
Сообщений: 16
|
![]() ![]() при Код:
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 15.12.2010
Сообщений: 398
|
![]()
А почему не так
SoapClient30 cr = new SoapClient30(); cr.AcceptRequest(ID) Иначе нада так cr.GetType().InvokeMember("AcceptRe quest", BindingFlags.InvokeMethod | BindingFlags.Public, null, cr, new object[1] { ID }); |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 12.09.2011
Сообщений: 16
|
![]()
Вызывать через cr.AcceptRequest(ID) нельзя.
А так cr.GetType().InvokeMember("AcceptRe quest", BindingFlags.InvokeMethod | BindingFlags.Public, null, cr, new object[1] { ID }); "System.Reflection.TargetInvocation Exception". |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Использование WNetAddConnection2 | Lokos | Работа с сетью в Delphi | 2 | 27.12.2013 09:32 |
Использование (...) в с++ | Byurrer | Общие вопросы C/C++ | 12 | 06.04.2011 23:04 |
Использование Indirect | cerberochek | Microsoft Office Excel | 3 | 06.09.2010 17:29 |
Использование idIRC | Ням | Общие вопросы Delphi | 0 | 04.09.2010 15:25 |
Использование while и while do | prikolist | Общие вопросы C/C++ | 20 | 06.04.2009 18:40 |