在c++程序和.net程序之间进行远程调用的最简单方法
Easiest way to do remote calls between a C++ program and a .NET program
我有一个。net程序在后台运行,需要创建一个可以与该程序通信的Windows Shell扩展。起初,我想我会在。net中创建我的Shell扩展,并使用IpcServerChannel和IpcClientChannel在服务器之间进行远程调用。. NET程序)和客户端(。. NET Shell扩展)。这真的很简单,而且工作得很快。
现在我意识到在。net中创建Shell扩展并不是一个好主意,因为在某些情况下它可能无法加载(例如,如果一个。net 1.0 Shell扩展将首先加载)。我想我可能会走c++路线,然后,但在这种情况下,有一个简单的方法,使我的c++外壳扩展做远程调用到我的。net程序?或者你有任何其他的想法,使我的两个程序通信(我宁愿如果我不需要设计一个通信协议,可以直接在一个库)。
谢谢!
嗯,你可以试试SendMessage(WM_COPYDATA)
。
但是,如果你对它感兴趣,它会更容易扩展(和可维护),只是做一个命名管道或本地inet套接字。实际上,设计通信协议并不像听起来那么困难:只需发送带有参数的序列化结构体,然后等待序列化的回复即可。然后处理超时和格式错误,完成!
相关文章:
- C# DLL 从C++应用程序调用 SOAP Web 服务
- 从C++程序调用 git 克隆
- 使用另一个程序调用正在运行的 C++ 程序中的函数
- C++控制台应用程序调用C++/CLI静态库
- 从 C# Windows 应用程序调用 C dll 会导致 svchost.exe 崩溃
- LoadLibray FileNotFound 取决于哪个应用程序调用
- 为什么无法在 Cocoa 应用程序调用的 C++ func 中嵌入自定义 Python 模块
- 使用模拟器C++从RISC-V裸机程序调用printf系统调用时失败
- C++程序调用 C 函数 在 g++ 链接期间获取未定义的引用
- 使用 gtest 和 gmock 验证程序调用
- 从 Qt 小部件应用程序调用 pyqt widget
- 如何使用Mono / C#程序调用Linux / C ++函数?
- 是否可以通过另一个程序调用程序
- 从应用程序调用静态库时,QT创建者什么都不会发生
- 如何知道库的哪些功能是由程序调用的
- OpenCV 函数在由C++线程程序调用的 Python 脚本本身调用时锁定
- numpy.core.multiarray在通过Xcode中开发的C 应用程序调用Python模块时未能导入
- 如何使用 lamba 作为连接处理程序调用 boost async_connect 作为成员函数
- 如何调试由另一个程序调用的程序
- 从C 程序调用FFMPEG