makeword()】的更多相关文章

先看看Microsoft给出的关于MAKEWORD的参考: 从Microsoft给出的参考可以得知,宏MAKEWORD的作用是用于创建一个由bHigh和bLow组成的WORD类型的值. 其中bLow是构成新值的低字节参数,而bHigh则是构成新值的高字节参数. 返回一个WORD类型的值. 在Windows Data Types中,给出了关于BYTE和WORD的描述: 再看看Microsoft给出的关于函数WSAStartup的第一个参数的描述: 可以得知,类型为WORD的参数wVersionRe…
MAKEWORD(学习之用,转载) MAKEWORD 宏 平台:SDK 这个宏创建一个被指定变量连接而成的WORD变量.返回一个WORD变量. (注:typedef unsigned short WORD;) WORD MAKEWORD( BYTE bLow, //指定新变量的低字节序: BYTE bHigh //指定新变量的高字节序: ); 例如: WORD wVersionRequested; wVersionRequested = MAKEWORD( 2, 2 ); #define MAK…
WORD MAKEWORD(    BYTE bLow,  // low-order byte of short value    BYTE bHigh  // high-order byte of short value );                                                                                      ((WORD) (((BYTE) (a)) | ((WORD) ((BYTE) (b))) <<…
本话题会涉及到: Lo.Hi.HiByte.LoWord.HiWord.MakeWord.MakeLong.Int64Rec 譬如有一个 Cardinal 类型的整数: 1144201745其十六进制的表示是: $44332211其二进制表示是: 01000100 00110011 00100010 00010001我们说 Cardinal 是 32 位的整数, 这里的位是指 "二进制的位数", 不信你数数. 我们需要重点面对的是十六进制, 不管是几进制的数在编译成汇编代码时都是用十六…
Mem pro 是一个主要集成内存泄露检测的工具,其具有自身的源码和GUI,在GUI中利用"Launch" button进行加载自己待检测的application,目前支持的平台为Windows,Unix, Linux, OSX, IOS, GCC:但是按照官网的说法,其虽然只能运行到WIN上,但是根据TCP协议传输dump的方式也可以和其他平台的app进行连接: 关于内存泄露,按照官方文档中的说法,其检测内存泄露的算法主要是两种,一种是在抓取dump时候未被引用的变量会被认定为泄露,…
//网络套接字编程实例,服务器端,TCP通信. #include <WinSock2.h> #pragma comment(lib,"ws2_32.lib") #include <iostream> #include <windows.h> using namespace std; int main() { WSADATA wsaData; WSAStartup(MAKEWORD(,),&wsaData); //初始化版本 SOCKET sL…
windows下获取IP地址的两种方法: 一种可以获取IPv4和IPv6,但是需要WSAStartup: 一种只能取到IPv4,但是不需要WSAStartup: 如下: 方法一:(可以获取IPv4和IPv6) #define _WINSOCK_DEPRECATED_NO_WARNINGS #include <Winsock2.h> #include <stdio.h> #include <iostream> #include <cstring> #inclu…
一.概述 现在来搞定DNS域名解析,其实这是前面一篇文章C++实现Ping里面的遗留问题,要干的活是ping的过程中画红线的部分: cmd下域名解析的命令是nslookup,比如“nslookup www.baidu.com”的结果如下: 其中,Address返回的就是www.baidu.com对应的IP地址,这个可能有多个 Alias指别名,也就是说www.baidu.com是www.a.shifen.com的别名,而www.a.shifen.com则是www.baidu.com的规范名(Ca…
目录 成果 运行效果图 过程 1. 首先的问题是下棋的两端应该是什么样的? 2. 接下来的问题是怎么表示,怎么存储? 3. 然后应该怎么通信呢? 代码 main.cpp chinese_chess.h Server.h Client.h  END 成果 运行效果图 左边是在虚拟机里运行的,右边是在Host机上运行的. 过程 记不起自己为什么要写这个象棋游戏的,大概是因为刚学了点儿Socket ,所以想用用,于是就写个局域网对战的象棋吧... 1. 首先的问题是下棋的两端应该是什么样的? 我希望下…
转自http://www.51cto.com/specbook/17/35216.htm Visual C++实现局域网IP多播 在局域网中,管理员常常需要将某条信息发送给一组用户.如果使用一对一的发送方法,虽然是可行的,但是过于麻烦,也常会出现漏发.错发.为了更有效的解决这种组通信问题,出现了一种多播技术(也常称为组播通信),它是基于IP层的通信技术.为了帮助读者理解,下面将简要的介绍一下多播的概念. 众所周知,普通IP通信是在一个发送者和一个接收者之间进行的,我们常把它称为点对点的通信,但对…
转自https://github.com/EasyDarwin/EasyPusher 本文仅实际体验一下demo,分析一下如何应用. 1)EasyPusher框图预览 2) EasyPusher应用实现 啃代码才是关键,看懂demo才好熟练应用. a. 推送h264文件 /* Copyright (c) 2013-2014 EasyDarwin.ORG. All rights reserved. Github: https://github.com/EasyDarwin WEChat: Easy…
原文地址:C++网络套接字编程TCP和UDP实例作者:xiaojiangjiang 1.       创建一个简单的SOCKET编程流程如下 面向有连接的套接字编程 服务器: 1)  创建套接字(socket) 2)  将套接字绑定到一个本地地址和端口上(bind) 3)  将套接字设定为监听模式,准备接受客户端请求(listen) 4)  等待客户端请求到来,当请求到来后,接受连接请求,返回一个新的对应于此连接的套接字(accept) 5)  用返回的套接字和客户端进行通信(send/recv…
简述 TransmitFile是一个扩展的 API,它允许在套接字连接上发送一个打开的文件.这使得应用程序可以避免亲自打开文件,重复地在文件执行读入操作,再将读入的那块数据写入套接字.相反,已打开的文件的句柄和套接字连接一起给出的,在套接字上,文件数据的读入和发送都在模式下进行.这就避免了多次的用户/内核模式切换.与linux的sendfile函数类似. TransmitFile通过已经连接的SOCKET句柄传输文件,使用操作系统的缓冲管理器来接收数据并提供高质量的文件传输. https://m…
在C++中实现ping功能,并不难.但真正了解ping是需要花费一番功夫的. Ping功能是在ICMP基础上实现的.IP协议并不是一个可靠的协议,它不保证数据被送达,那么,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)协议.ICMP主要是用来实现IP系统间传递差错和管理报文,是任何IP实现必须和要求的组成部分.它是TCP/IP协议族的一个子协议,属于网络层协议.ICMP提供一致易懂的出错报告信息.发送的出错报文返回到发送原数据的设备,因为只有发送设备才是…
网络编程 API ,失败返回 -,错误代码 WSASYSNOTREADY 表示基础网络子系统没有准备好网络通行,WSAVERNOTSUPPORTED 表示 Socket 版本不支持,WSAEINPROGRESS 表示一个阻塞的 Sockets 操作在进程中,WSAEPROCLIM 表示 Sockets 支持的任务数到达上限,WSAEFAULT 表示 lpWSAData 不是一个有效指针 WORD MAKEWORD( X, Y ); 获得 wVersionRequested 正确值,WinSock…
来自: daocaoren0824, 时间: -- ::, ID: 再给你一份 程序员实用函数 {▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎} {▎ ▎} {▎ 大家都是程序员 没有必要重复一些无聊的事情 我的这些函数能给大家带来方便 ▎} {▎ 如果觉得还一般 请关注 WWW.cdsunco.com/www.ccemove.com QQ:35013354 ▎} {▎ 系统公用函数及过程 ▎} {▎ ▎} {▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎▎…
Cardinal 是 4 字节无符号的整型, 先看一个例数: Cardinal 例数: 4277991664 按字节划分: 第四字节 第三字节 第二字节 第一字节 二进制: 11111110 11111100 11111000 11110000 十六进制: FE FC F8 F0 十进制: 254 252 248 240 按双字节划分: 高两位 低两位 二进制: 1111111011111100 1111100011110000 十六进制: FEFC F8F0 十进制: 65276 63728…
消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按下键盘上的一个键都会使Windows发送一个消息给应用程序.消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息.例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标.这个记录类型叫做TMsg, 它在Windows单元中是这样声明的:typeTMsg = packed recordhwnd: HWND; / /窗口句柄message: UINT; / /…
socket学习参考链接,赞一个:http://blog.csdn.net/hguisu/article/details/7445768 sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据包套接字(SOCK_DGRAM),原始套接字(SOCK_RAW):基于TCP的socket编程采用的都是流式套接字. 服务端socket编程步骤: 1.加载套接字库,创建套接字(WSAStartup()/socket()); 2.绑定套接字到一个IP地址和一个端口上(bind());…
这篇文章主要介绍了C++实现邮件群发的方法,较为详细的分析了邮件发送的原理与C++相关实现技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了C++实现邮件群发的方法.分享给大家供大家参考.具体如下:关于生成随机QQ邮箱不精确的问题,在之后版本打算另写一个采集器插件进行帐号采集,所以,这个软件只用来进行内容发送,邮箱进行随机生成 如果你已经有采集来的QQ号,请复制到SendList.txt 替换内容即可可以直接复制HTML代码到邮件内容,保存即可.目前邮件内容最大设置为10000字节,如…
这是一个老话题了,但是我刚学会... 我们的目的是实现这么个东西: 之所以用红框框一下是因为,从baidu.com到123.125.114.144的过程是DNS解析,我们暂时先实现ping的部分. 基础知识 ping的过程是向目的IP发送一个type=8的ICMP响应请求报文,目标主机收到这个报文之后,会向源IP(发送方,我)回复一个type=0的ICMP响应应答报文. 那上面的字节.往访时间.TTL之类的信息又是从哪来的呢?这取决于IP和ICMP的头部. IP头部: 头部内容有点多,我们关心的…
//main.cpp 1 #include "j_socket.h" #include <stdio.h> #include <pthread.h> ; j_server* ser; void* main_listen( void* args) { ser=new j_server(port); ser->j_listen(); } int main() { static pthread_t listen_p; int ret; ret= pthread_…
对于同一个PC机而言,服务器端和客户端在一个PC机上面,端口必须要不一样,不然会冲突. 你总不能自己又当爹又当妈吧. 所以在进行程序设计的时候,需要考虑这一点: 在此接口设计中,C++当作UDP的服务器端 程序设计如下: WSADATA wsaData = {0};       SOCKET socksvr;       int iPort=7900;        //服务器地址长度       int iLen = 0;        //接收数据的缓冲        int iSend =…
简单的Http Server 使用Libevent内置的http相关接口,可以很容易的构建一个Http Server,一个简单的Http Server如下: #include <event2/event.h> #include <event2/buffer.h> #include <event2/http.h> #include <Winsock2.h> #include <stdlib.h> #include <stdio.h> i…
一些概念: 同步和异步 同步和异步是针对应用程序和内核的交互而言的,同步指的是用户进程触发I/O操作并等待或者轮询的去查看I/O操作是否就绪,而异步是指用户进程触发I/O操作以后便开始做自己的事情,而当I/O操作已经完成的时候会得到I/O完成的通知. 阻塞和非阻塞 阻塞和非阻塞是针对于进程在访问数据的时候,根据I/O操作的就绪状态来采取的不同方式,说白了是一种读取或者写入操作函数的实现方式,阻塞方式下读取或者写入函数将一直等待,而非阻塞方式下,读取或者写入函数会立即返回一个状态值. 服务器端几种…
原文链接 原文:http://gafferongames.com/networking-for-game-programmers/sending-and-receiving-packets/ Sending and Receiving Packets 介绍 大家好,我是Glenn Fiedler,欢迎阅读我的网上电子书<游戏程序的网络设计>第二章. 在前一章我们讨论了在电脑之间发送数据的选择,并且决定用UDP而不用TCP.我们选择UDP以便我们的数据能够准时到达而不必等待数据包重发. 现在我将…
#ifndef Arduino_h #define Arduino_h #include <stdlib.h> #include <stdbool.h> #include <string.h> #include <math.h> #include <avr/pgmspace.h> #include <avr/io.h> #include <avr/interrupt.h> #include "binary.h&q…
原文:http://dev.gameres.com/Program/Control/IOCP.htm 另附上:http://stackoverflow.com/questions/5283032/i-o-completion-ports-advantages-and-disadvantages 欢迎阅读此篇IOCP教程.我将先给出IOCP的定义然后给出它的实现方法,最后剖析一个Echo程序来为您拨开IOCP的谜云,除去你心中对IOCP的烦恼.OK,但我不能保证你明白IOCP的一切,但我会尽我最大…
今天在windows平台下,通过socket实现了简单的文件传输.通过实现这一功能,了解基本的windows网络编程和相关函数的使用方法. 在windows平台上进行网络编程,首先都需要调用函数WSAStartup()进行链接库的初始化.如果没有使用该函数进行初始化,则后面会出现10093的错误(可以通过GetLastError()获得错误码). 进行初始化后,客户端和服务器进行不同的工作.但是不管是服务器还是客户端,都需要用到两个最基本的结构体,分别是SOCKET和sockaddr_in.其中…
char szHostName[MAX_PATH + 1]; gethostname(szHostName, MAX_PATH); //得到计算机名 hostent *p = gethostbyname(szHostName); //从计算机名得到主机信息 char *pIP1 = inet_ntoa(*(in_addr *)p->h_addr_list[0]);//将32位IP转化为字符串IP DWORD dwip = inet_addr(pIP1); unsigned char *pIP =…