如何在Windows调用的DLL和主应用程序之间进行通信
Howto communicate between DLL called by Windows and main application?
我正在尝试将SNMP代理集成到用本机C++编写的Windows应用程序中。
要使此代理成为Windows SNMP代理的子代理,必须编写一个DLL,用于导出由Windows SNMP服务调用的某些例程。到目前为止,一切进展顺利。
现在,此 DLL 需要从应用程序获取实际信息。我的第一个想法是让应用程序和 DLL 使用双方都访问的共享内存块,但这会使信息总是过时,最好运行一些代码来获取最新值当 SNMP 请求进来时。双方将读取和写入信息。
该应用程序已经具有基于 TCP 的控制台接口,但对于来自 SNMP 客户端的非常频繁的请求,连接、查询、断开连接可能有点重。
我可以选择哪些选项让 DLL 直接与应用程序通信?
命名管道非常容易处理,不会干扰防火墙,也不需要额外的同步(就像共享内存那样)。有关详细信息,请参阅 MSDN
相关文章:
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- MSVC 2010 编译应用程序和 MSVC 2019 编译应用程序之间的行为差异
- 使用命名管道在 C# 和C++应用程序之间进行持续通信
- C# 和C++应用程序之间的通信
- Electron应用程序和Win32本机桌面应用程序之间的进程间通信
- 我可以在应用程序之间更改 .proto 文件的命名空间吗?
- 如何在 2 个应用程序之间实现拖放?
- 如何实现MATLAB和单独的C++应用程序之间的通信
- C++在32位应用程序之间传输大量数据以进行视频播放的方法
- VC++和Qt应用程序之间使用共享内存进行通信
- C 和现有PHP应用程序之间的通信
- 如何通过套接字在PHP和C++应用程序之间进行通信
- 如何在C++服务器应用程序和django web应用程序之间进行通信
- 在两个单独的应用程序之间共享 dll 中的堆内存
- 通过网络在应用程序之间进行通信
- 我可以在mac命令行应用程序和mac应用程序之间进行通信吗
- 在到应用程序之间的消息中重复WaitForSingleObject
- 如何在本机C++(Windows 7及以前版本)和通用C++(Windows 8及以后版本)应用程序之间共享代码
- windows中java应用程序和C++应用程序之间的同步
- dll和应用程序之间的C++外部使用