|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Выполняю такой код в WinForm-приложении: Код: c# 1. 2. 3.
Все хорошо! Запускаю этот же код в отдельном потоке - подключения не получается. Чем можно помочь этому коду? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:14 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Прошу прощения! Видимо поток не при делах. Есть клиентская WinForm-программа, которая вызывает некоторый метод, некоторого WCF-контракта. Этот метод создает отдельный поток, в котором находится подобный код (который в этом месте не работает). Я сейчас перенес этот код из отдельного потока в сам WCF-метод. Здесь этот код тоже не работает. (error в attach) А если поместить этот код в самом клиенте, то все замечательно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:27 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXЧем можно помочь этому коду? Не завершать этот поток сразу после подключения ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:31 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Поток, в моем случае не завершался. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:40 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Уточняю: Ошибка появляется на вызове метода server.Connect() (спустя некоторое время пока Connect "думает") ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:43 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательX, у вас сумбурно описано. Смешались потоки, wcf, OPC ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:44 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXПрошу прощения! Видимо поток не при делах. Есть клиентская WinForm-программа, которая вызывает некоторый метод, некоторого WCF-контракта. Этот метод создает отдельный поток, в котором находится подобный код (который в этом месте не работает). Я сейчас перенес этот код из отдельного потока в сам WCF-метод. Здесь этот код тоже не работает. (error в attach) А если поместить этот код в самом клиенте, то все замечательно. Пробовали кликать по ссылке View Detail? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:45 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXУточняю: Ошибка появляется на вызове метода server.Connect() (спустя некоторое время пока Connect "думает") поток зачем? Если для разморозки ГУИ, то по современному - await ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:52 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Сумбурно это точно. Но пришлось на ходу менять описание ситуации, так как выяснилось, что и без потока проблема есть. Итак проблема: Подключение из клиентской программы работает. Клиентская программа вызывает WCF-метод, в котором это же подключение не работает. Ссылка View Detail ничего дополнительного не сообщает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:53 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123поток зачем? Если для разморозки ГУИ, то по современному - await Можно и await. Это сейчас не самое главное ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:55 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXКлиентская программа вызывает WCF-метод, в котором это же подключение не работает. покажи оба вызова - рабочий и не рабочий ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:57 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательX, с клиента вызвать wcf метод - это значит код исполняется на wcf сервере. Совсем другие помидоры. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 12:59 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3.
Этот код вставляю под кнопку в клиентской WinForm-программе. Точно этот же код вставляю в WCF-методе, который вызывается этой же программой. В первом случае подключение проходит, во втором случае нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:01 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательX, смотрите в отладке, пишите логи ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:06 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXWCF-методев третий раз - код давай ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:08 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123с клиента вызвать wcf метод - это значит код исполняется на wcf сервере. Совсем другие помидоры. Хотелось бы понять чем отличаются эти "помидоры". В URL используются настройки связанные с провайдером Код: c# 1.
Но, я пока работаю в среде VisualStudio и провайдер и алиас на моей машине присутствует как для клиента, так и для WCF-сервиса. То что нужно для подключения, это заложено в явных атрибутах login/password. Чего не достает WCF-методу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:10 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXPetro123с клиента вызвать wcf метод - это значит код исполняется на wcf сервере. Совсем другие помидоры. Хотелось бы понять чем отличаются эти "помидоры". В URL используются настройки связанные с провайдером Код: c# 1.
Но, я пока работаю в среде VisualStudio и провайдер и алиас на моей машине присутствует как для клиента, так и для WCF-сервиса. То что нужно для подключения, это заложено в явных атрибутах login/password. Чего не достает WCF-методу. Отладка тебе поможет ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:12 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXХотелось бы понять чем отличаются эти "помидоры". ты код дашь или будем описывать все случаи жизни? Первый случай - ловишь исключение на клиенте, а на сервере оно другое. Нафига гадать? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:19 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательX, DCOM настройки ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:19 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательX, ну и код в WCF сервере просто пишут другой. Не такой как на клиенте. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:20 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Весь солюшен вывалить не могу. Но, вот основные "тезисы": Код: c# 1. 2. 3. 4. 5. 6.
Вот вариант с сервисом: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:23 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123ну и код в WCF сервере просто пишут другой. Не такой как на клиенте. А вот с этого места прошу по подробнее! skyANAОтладка тебе поможет Эти com-объекты ничего о себе отладчику не показывают. Единственное сообщение - это "CoCreateInstanceEx: Ошибка при выполнении приложения-сервера". Как хочешь так и понимай. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:29 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательX Код: c# 1.
В WCF 4.5 это устарело, поэтому сам разбирайся. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:31 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123MyCallbackClass - В WCF 4.5 это устарелоМожет и устарело, но ведь не запрещено. К тому же это часть callback-механизма, который может работать дальше если его использовать в коде. Но, в данном случае все это отброшено и все внимание сведено к трем строчкам кода которые вызываются при вход в метод. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:37 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXМожет и устарело, но ведь не запрещено. странный ты. Зачем писать 25 строк, если в 4.5 будет одна строка? Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:45 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123Зачем писать 25 строк, если в 4.5 будет одна строка?Да черт с ними с этими самыми современными методами писанины. Конечно посмотрю как "сегодня" "по современному" нужно программировать. Меня-то интересует другой вопрос: почему OPC-подключение в этой среде перестает работать! А мне-то это нужно! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:52 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXДа черт с ними с этими самыми современными методами писанины.ну дык завтра приходи. Раз одну строку лень написать сегодня. Тем более мы оффтопим, т.к. WCF в другой ветке. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 13:59 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXPetro123ну и код в WCF сервере просто пишут другой. Не такой как на клиенте. А вот с этого места прошу по подробнее! skyANAОтладка тебе поможет Эти com-объекты ничего о себе отладчику не показывают. Единственное сообщение - это "CoCreateInstanceEx: Ошибка при выполнении приложения-сервера". Как хочешь так и понимай. попо дробнее! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 14:28 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
256kпопо дробнее!мне вопрос? Ты же профи! - например, исключение проглатывается и не передаётся на клиента если его не обернуть типом для сериализации. Достаточно? )) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2018, 14:40 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123Ты же профи! - например, исключение проглатывается и не передаётся на клиента если его не обернуть типом для сериализации. Достаточно? )) Был бы я профи, то эту проблему решил бы сам. А насчет исключения, так зачем его передавать на сторону клиента, когда Visual Studio его прекрасно показывает на стороне сервиса (в точке server.Connect()). Только толку от этого мало - это сообщение абсолютно не информативно. "Ошибка при выполнении приложения-сервера" - что с этим делать? Ну передам его на сторону клиента - радости от этого не добавится. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2018, 05:08 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXБыл бы я профи, то эту проблему решил бы сам.это я ему говорил. И контекст был когда ты код упрямо не показывал. ЧитательXА насчет исключения, так зачем его передавать на сторону клиента, когда Visual Studio его прекрасно показывает на стороне сервиса (в точке server.Connect()).да ЧитательXТолько толку от этого мало - это сообщение абсолютно не информативно.если у тебя код сервера, то почему у тебя там buttons_click? На сервере нет ГУИ. Сделай hello world wcf 4.5 за пол часа и разберем ошибку. Лень? IMHO ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2018, 11:01 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Прилагаю максимально "обезжиренный" солюшен, где есть тупой клиент и не менее тупой wcf-сервис. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 06:10 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
P.S. Petro123у вас сумбурно описано. Смешались потоки, wcf, OPC Если пытаться подключиться к OPC не в WCF, а в просто в отдельном потоке, то результат тот же (т.е. все хреново) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 06:22 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXПрилагаю максимально "обезжиренный" солюшен, где есть тупой клиент и не менее тупой wcf-сервис. http://www.sql.ru/forum/actualfile.aspx?id=21690685] Приложенный файл (TestPrj.rar - 67Kb) Теперь Петро тебе точно поможет, подожди немного. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 09:33 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Запуск в отдельном потоке или в WCF, по умолчанию, происходит в MTA-Apartment. Есть подозрение, что библиотека OpcNetApi не желает работать в MTA. А как переключить сервис или поток в STA я не знаю. То, что предлагается в разной документации не работает: Код: c# 1. 2. 3.
или для потока: Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 12:19 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Нет. Похоже MTA здесь не виноват. В клиенте создаю простенький поток (по умолчанию получается MTA) - все работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 12:44 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
skyANAЧитательXПрилагаю максимально "обезжиренный" солюшен, где есть тупой клиент и не менее тупой wcf-сервис. http://www.sql.ru/forum/actualfile.aspx?id=21690685] Приложенный файл (TestPrj.rar - 67Kb) Теперь Петро тебе точно поможет, подожди немного. ты за мной лет 10 тенью ходить будешь милый)). Продолжай. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 12:58 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXЕсли пытаться подключиться к OPC не в WCF, а в просто в отдельном потоке, то результат тот же (т.е. все хреново) в новом WCF не нужны потоки. Так что разберись таки что тебе нужно из: WCF+OPC+3 строчки кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 13:00 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123в новом WCF не нужны потоки. Так что разберись таки что тебе нужно из: WCF+OPC+3 строчки кода.Я думаю, что все что нужно я тебе показал - прислал минимальный проект, который должен заработать. Не хочешь помочь, так не мути воду. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 13:11 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXЯ думаю, что все что нужно я тебе показал - прислал минимальный проект, который должен заработать. Всё что нужно тебе или всё что я просил? Версия 4.5. Компилируется? Минимальная? Тогда позже посмотрю. Не будем делать вид, что просьба минимальной демки в ветке программистов это моветон. ЧитательXНе хочешь помочь, так не мути воду. без комментов... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 13:48 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123skyANAпропущено... Теперь Петро тебе точно поможет, подожди немного. ты за мной лет 10 тенью ходить будешь милый)). Продолжай.Почему тенью? Я открыто жду, когда ты, дорогуша, поможешь ТСу решить его проблему. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 15:49 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
ЧитательXЯ думаю, что все что нужно я тебе показал - прислал минимальный проект, который должен заработать. Не хочешь помочь, так не мути воду.Но походу опять не дождусь... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 15:50 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
skyANAЯ открыто жду, когда ты, skyANA, дорогой Сашенька! Вы мне много внимания уделяете. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2018, 15:54 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
skyANAНо походу опять не дождусь... Сто пудов... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.10.2018, 10:07 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Shocker.Pro, Вычищаем топик без резолюции красным причины - теряем лицо. Вычищаем топик за двоих и баня при этом одного - теряем лицо. .... Оставляем при этом странный вопрос про какие то ожидания в конце топика? Вдвойне странно, т.к. вопрос топика давно решён автором переходом на новую версию WCF. Старую версию тут знает только один мембер на всю ветку. Если он промолчал, значит у автора только один путь - переписать на новую)). Ваш капитан очевидность. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2018, 12:46 |
|
OPC в отдельном потоке
|
|||
---|---|---|---|
#18+
Petro123Shocker.Pro, Вычищаем топик без резолюции красным причины - теряем лицо. Вычищаем топик за двоих и баня при этом одного - теряем лицо. За обсуждение действий модератора не в ОНС могут повторно в баню отправить. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2018, 12:57 |
|
|
start [/forum/topic.php?all=1&fid=20&tid=1399206]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
others: | 288ms |
total: | 438ms |
0 / 0 |