当前位置: 首页 > news >正文

网站友情链接怎么样做老王传奇新开网站

网站友情链接怎么样做,老王传奇新开网站,100个销售技巧和话术,seo搜索优化培训这里是CIP资料的协议层级图,讲解协议构造。 ODVA(www.ODVA.org)成立于1995年,是一个全球性协会,其成员包括世界领先的自动化公司。结合其成员的支持,ODVA的使命是在工业自动化中推进开放、可互操作的信息和…

这里是CIP资料的协议层级图,讲解协议构造。

ODVA(www.ODVA.org)成立于1995年,是一个全球性协会,其成员包括世界领先的自动化公司。结合其成员的支持,ODVA的使命是在工业自动化中推进开放、可互操作的信息和通信技术。成员团体的基础是其在制定标准和促进通过《共同工业议定书》方面的主要共同利益™), ODVA的媒体独立网络协议,以及CIP–EtherNet/IP的网络适配™, DeviceNet™, CompoNet™ 和ControlNet™. ODVA管理这些技术,并在一个通用结构中开发和分发这四个网络的规范,以帮助确保一致性和准确性。下图说明了由四个网络组成的库的组织结构。

中文总线资料和方案 www.jngbus.com

广州金南瓜科技

我们可以看到,其中一个EtherNet/IP是基于TCP/UDP之上。

那么我们就可以理解为,基于socket应用之上就可以了。

如果只是纯应用角度去开发EtherNet/IP,可以借助一些成熟的socket库。奈何我们早期学C++的人,没有那么多成熟模块,都是靠自己撸出来。

把TCP/IP通讯单独做成一个dll

① 目的是后续我们讲解开发modbus tcp、profinet等这些以太网协议时候,就不需要每种协议都单独写一次TCP/UDP通讯了

头文件代码// 用于TCP/IP通讯
class CTcpCommunication : public CTcpCommExport
{
public:CTcpCommunication();virtual ~CTcpCommunication();// 释放void Release();    void SetCallback(OnCommDataHandle* pDataCallback, OnCommEventNotify* pEventCallback, void* pObject);CResult Connect(const char* pIP, __int32 nPort);        // 连接void Disconnect();                                        // 关闭连接CResult SendData(const char* pData, __int32 nSize);        // 数据发读void SetLanguage(__int32 nType);protected:// 数据接收    
private:void InitSockWSA();void ReleaseSockWSA();// 接收数据线程void CreateRecvThread();        // 创建接收线程void ExitRecvThread();            // 退出接收线程static void RunRecvThread(void* lp);void RecvHandle();bool IsExitThread();void OneRecvData();                // 一次接收数据void StartRecvData();            // 开始接收数据void StopRecvData();            void CloseConnect();            // 关闭通讯private:CData m_pData;};

② socket处理很简单,其实就是围绕着收发

connect和send、recv

至于性能问题,就是如何优化在这处理和同步问题了。

程序稳定可靠需要靠自身的积累了。

建立通讯代码。

	if(m_hSock == INVALID_SOCKET){m_hSock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if(m_hSock != INVALID_SOCKET){		if(connect(m_hSock, (struct sockaddr*)&m_pSA, sizeof(m_pSA)) < 0){					closesocket(m_hSock);m_hSock = INVALID_SOCKET;	// MC TCP连接失败,请查看网络是否通讯上、或者端口问题return CResult(TCP_SOCKET_CONNECT_FAIL, GetLanguage(TCP_SOCKET_CONNECT_FAIL));			}	}else{return CResult(TCP_SOCKET_CREATE_FAIL,  GetLanguage(TCP_SOCKET_CREATE_FAIL));				}}return CResult();

发送数据

http://www.yayakq.cn/news/565990/

相关文章:

  • 网站设计版式机构培训班
  • 网站建设产品服务普通话手抄报文字内容
  • 国内一家做国外酒店团购的网站2345网址大全首页
  • 如何建网站保定免费域名注册网站怎么登录
  • 浙江圣大建设集团有限公司网站网站常用的一种js的图片幻灯片特效代码
  • 出国游做的好的网站两学一做知识竞赛试题网站
  • 上海高端网站建设高端网站建设整合营销传播的六种方法
  • 山东川畅科技联系 网站设计合肥网站建设 八八四八
  • 梦幻西游官方网站文昌网站建设
  • 怎样可以免费做网站哈尔滨城乡建设局网站首页
  • 网站建设得花多钱php网站建设的毕设报告
  • 个人网站备案 服务内容怎么写c 网站开发视频教程 高清
  • 网站设计方案图怎样设计网站静态页面
  • 南宁企业网站建站wordpress判断用户是否登录
  • cms网站开发流程百度网站托管
  • 企业网站推广过程厦门网站建设cnmxcm
  • 北京网站关键词优化公北京给网站做系统的公司名称
  • 做网站报价明细表怎样做二维码网站
  • 网站建设文化案例互联网站管理工作细则
  • 门户网站系统源码招聘 网站建设
  • 网站推广公司转型方向怎样查看wordpress用的什么主题
  • 供求网站建设如何提高景区旅游网站建设
  • 做网站可以申请国家补助吗创业论坛网站有哪些
  • 做推广自己找网站aspx网站开发教程
  • 广东网站备案查询友情链接图片
  • 文件外链网站wordpress精简代码
  • 建湖专业做网站的公司响应式网站发展
  • 企业网站的域名是该企业的建筑设计方案大全
  • 好的企业网站建设网站建设 思路
  • 把网站内的文本保存到txt怎么做做网站用的语言