① 谁知道这个图片是哪个电影里的谢谢~~
电影《黑衣人》第一部
中文名: 黑衣人
外文名: Men in Black(MIB)
其它译名: MIB星际战警,黑超特警组
出品时间: 1997年
出品公司: 哥伦比亚影业
制片地区: 美国
导演: 巴里·索南菲尔德
编剧: Lowell Cunningham,艾迪·所罗门
制片人: 劳里·麦克唐纳
类型: 动作,科幻,喜剧
主演: 汤米·李·琼斯,威尔·史密斯,琳达·弗兰蒂诺,文森特·诺费奥
片长: 98分钟
上映时间: 1997年07月02日(美国)
② C#如何使用GetTcpTable API获取TCP/IP连接信息
IntPtrhTcpTableData=IntPtr.Zero;//声明hTcpTableData指针所指向的内存缓冲区大小intiBufferSize=0;//声明MIB_TCPTABLE对象,作为返回值 MIB_TCPTABLEtcpTable=newMIB_TCPTABLE();//声明一个List对象来临时存放MIB_TCPROW对象List<MIB_TCPROWlstTcpRows=newList<MIB_TCPROW();//调用API来获得真正的缓冲区大小,iBufferSize默认为0,//这时调用APIGetTcpTable会触发一个异常ERROR_INSUFFICIENT_BUFFER//通过这个异常系统会把真正的缓冲长度返回 GetTcpTable(hTcpTableData, refiBufferSize, false);//为托管指针在堆上分配内存 hTcpTableData=Marshal.AllocHGlobal(iBufferSize);//求得MIB_TCPROW对象的内存字节数intiTcpRowLen=Marshal.SizeOf(typeof(MIB_TCPROW));//根据上面得到的缓冲区大小来推算MIB_TCPTABLE里的MIB_TCPROW数组长度//下面用缓冲长度-sizeof(int)也就是去掉MIB_TCPTABLE里的成员dwNumEntries所占用的内存字节数intaryTcpRowLength=(int)Math.Ceiling((double)(iBufferSize-sizeof(int))/iTcpRowLen);//重新取得TcpTable的数据 GetTcpTable(hTcpTableData, refiBufferSize, false);//下面是关键,由于MIB_TCPTABLE里的成员有一个是数组,而这个数组长度起初我们是不能确定的//所以这里我们只能根据分配的指针来进行一些运算来推算出我们所要的数据for(inti=0;i<aryTcpRowLength;i++){//hTcpTableData是指向MIB_TCPTABLE缓冲区的内存起始区域,由于其成员数据在内存中是顺序排列//所以我们可以推断hTcpTableData+4(也就是sizeof(dwNumEntries)的长度)后就是MIB_TCPROW数组的第一个元素 IntPtrhTempTableRow=newIntPtr(hTcpTableData.ToInt32()+4+i*iTcpRowLen); MIB_TCPROWtcpRow=newMIB_TCPROW(); tcpRow.dwLocalAddr=0;tcpRow.dwLocalPort=0;tcpRow.dwRemoteAddr=0;tcpRow.dwRemotePort=0;tcpRow.dwState=0;//把指针数据拷贝到我们的结构对象里。
③ 求助 使用GetTcpTable出错
IntPtrhTcpTableData=IntPtr.Zero;//声明hTcpTableData指针所指向的内存缓冲区大小intiBufferSize=0;//声明MIB_TCPTABLE对象,作为返回值MIB_TCPTABLEtcpTable=newMIB_TCPTABLE();//声明一个List对象来临时存放MIB_TCPROW对象List