Тема: [Проблему вирішено] Виклик метода з іншої програми
Ось є дві програми. Одна повинна викликати метод в інший.
Як це зделать поняття не маю.
Допоможіть будь ласка.
PS: Обидві програми консольні.
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C#, .NET → [Проблему вирішено] Виклик метода з іншої програми
Для відправлення відповіді ви повинні увійти або зареєструватися
Ось є дві програми. Одна повинна викликати метод в інший.
Як це зделать поняття не маю.
Допоможіть будь ласка.
PS: Обидві програми консольні.
якщо проги пишуться з нуля, то я б використовував udp-сокети
якщо проги пишуться з нуля, то я б використовував udp-сокети
Тiльки не це. Я тиждень розбирався с сокетами так і не зрозумів як це все працює.
Можливо звернутися до процесу ??? Проги на 1 пк
FakiNyan написав:якщо проги пишуться з нуля, то я б використовував udp-сокети
Тiльки не це. Я тиждень розбирався с сокетами так і не зрозумів як це все працює.
Можливо звернутися до процесу ??? Проги на 1 пк
з цим я вам не допоможу, а з сокетами можу.
Якось сам розбирався з ними, а зараз можу написати клієнт-сервер з заплющеними очима.
https://en.wikipedia.org/wiki/Remote_procedure_call — для даної задачі трохи краще, ніж UDP
vtorgashov написав:FakiNyan написав:якщо проги пишуться з нуля, то я б використовував udp-сокети
Тiльки не це. Я тиждень розбирався с сокетами так і не зрозумів як це все працює.
Можливо звернутися до процесу ??? Проги на 1 пкз цим я вам не допоможу, а з сокетами можу.
Якось сам розбирався з ними, а зараз можу написати клієнт-сервер з заплющеними очима.
Не підкажете туторіал по взаємодії двох програм на Українській або російській мовi (бажано на Українській)?
І якщо там все детально розписано то це просто супер буде.
Я таке шукав тиждень а потiм перехотiлося сокети вивчати
FakiNyan написав:vtorgashov написав:Тiльки не це. Я тиждень розбирався с сокетами так і не зрозумів як це все працює.
Можливо звернутися до процесу ??? Проги на 1 пкз цим я вам не допоможу, а з сокетами можу.
Якось сам розбирався з ними, а зараз можу написати клієнт-сервер з заплющеними очима.Не підкажете туторіал по взаємодії двох програм на Українській або російській мовi (бажано на Українській)?
І якщо там все детально розписано то це просто супер буде.
Я таке шукав тиждень а потiм перехотiлося сокети вивчати
можете глянути оце
http://fakinyan.blogspot.com/2015/01/c_2.html
http://fakinyan.blogspot.com/2015/01/c.html
якщо щось незрозуміло буде - то запитуйте
https://en.wikipedia.org/wiki/Remote_procedure_call — для даної задачі трохи краще, ніж UDP
ну так це ж теж сокети, нє?
P.Y. написав:https://en.wikipedia.org/wiki/Remote_procedure_call — для даної задачі трохи краще, ніж UDP
ну так це ж теж сокети, нє?
Все одно не дуже розумiю
Обмін повідомленнями (SendMessage/PostMessage) і реєстрація на себе WM_COPYDATA теж ніхто не забороняє, як й зовнiшним файлом, як й Callback-функцiями. Все залежить від необхідної швидкості обміну.
https://msdn.microsoft.com/uk-ua/librar … 85%29.aspx
https://msdn.microsoft.com/uk-ua/librar … 85%29.aspx
FakiNyan написав:P.Y. написав:https://en.wikipedia.org/wiki/Remote_procedure_call — для даної задачі трохи краще, ніж UDP
ну так це ж теж сокети, нє?
Все одно не дуже розумiю
ну то така фігня, коли в одній прозі ви створюєте класс А, а в іншій прозі робите теж класс А, але особливий, ліл. А потім ви зв'язуєте ці дві проги, і коли викликаєте в першій прозі метод класу А, то цей самий метод викликається в іншій прозі, ну таке.
P.Y. написав:https://en.wikipedia.org/wiki/Remote_procedure_call — для даної задачі трохи краще, ніж UDP
ну так це ж теж сокети, нє?
Теж, але не в такому сирому вигляді.
Якщо Вам йдеться про C# то ви мабуть шукаєте .NET Remoting:
https://msdn.microsoft.com/uk-ua/librar … S.85).aspx
https://generally.wordpress.com/2007/05 … mple-in-c/
В першу чергу потрібно розібратися, що вам точно потрібно. Бо я так і не зрозумів, чи треба просто заюзати метод, що знаходиться в іншій програмі (грубо кажучи у файлі на диску) чи вам треба звернутися до іншого працюючого процесу (програми що виконується) і викликати його метод.
В першому випадку, якщо інша програма це .Net збірка, то необхідно приєднати її до проекту, вказавши шлях. Також дивіться що таке GAC (global assembly cache). Якщо інша програма не .Net тоді все залежить від її розробника. Можливо вона підтримує СОM чи ActiveX . Тоді в .Net дивіться на Interop (https://msdn.microsoft.com/uk-ua/library/ms173184.aspx)
В другому випадку , якщо ви розробляєте обидві програми на .Net то куріть мануали по WCF.
@iovchynnikov .Net remouting вже застаріла і в тому лінку що ви дали Microsoft так і пише This topic is specific to a legacy technology that is retained for backward compatibility with existing applications and is not recommended for new development. Distributed applications should now be developed using the Windows Communication Foundation (WCF).
Якщо друга програма від стороннього виробника, то вам допоможе тільки документація від нього
Це якщо розробник дiлиться API для взаэмодiї )
Але з першого поста враження, що э доступ до сирцiв обох програм.
Це якщо розробник дiлиться API для взаэмодiї )
Але з першого поста враження, що э доступ до сирцiв обох програм.
ну тоді WCF і нема чо вигадувати
В першу чергу потрібно розібратися, що вам точно потрібно. Бо я так і не зрозумів, чи треба просто заюзати метод, що знаходиться в іншій програмі (грубо кажучи у файлі на диску) чи вам треба звернутися до іншого працюючого процесу (програми що виконується) і викликати його метод.
В першому випадку, якщо інша програма це .Net збірка, то необхідно приєднати її до проекту, вказавши шлях. Також дивіться що таке GAC (global assembly cache). Якщо інша програма не .Net тоді все залежить від її розробника. Можливо вона підтримує СОM чи ActiveX . Тоді в .Net дивіться на Interop (https://msdn.microsoft.com/uk-ua/library/ms173184.aspx)
В другому випадку , якщо ви розробляєте обидві програми на .Net то куріть мануали по WCF.
@iovchynnikov .Net remouting вже застаріла і в тому лінку що ви дали Microsoft так і пише This topic is specific to a legacy technology that is retained for backward compatibility with existing applications and is not recommended for new development. Distributed applications should now be developed using the Windows Communication Foundation (WCF).
Якщо друга програма від стороннього виробника, то вам допоможе тільки документація від нього
Я маю програму без iнтерфейсу просто процес. Менi треба виводити текст з неЇ, посилати команди.
Я думав зробити це через консоль.
Це я випадково написав. Видалити неможливо :С
...що заважаэ?
Те що я не знаю як передавати даннi через сокет
PS: Я самоучка. Багато що не знаю. Я за весь час не прочитав жодного пiдручника по C#. Але дещо можу зробити
Для відправлення відповіді ви повинні увійти або зареєструватися