`
61party
  • 浏览: 1109295 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

在VC中使用ListCtrl保存上线主机SOCKET句柄

阅读更多
在VC中使用ListCtrl保存上线主机SOCKET句柄

我知道在BCB中的列表框有一个DATE项,昨天晚上在群里草草说VC的ListCtrl也可以存入一个
DWORD类型的数据,这让我很高兴因为,当时我正为如何处理上线主机的SOCKET列表而头疼,
而SOCKET是 unsigned long类型的,也就是说可以把上线的主机存在ListCtrl中,而使用这个方法可以搞定了

保存SOCKET数据


int num=m_list.InsertItem(ImageID,szIP,ImageID);
m_list.SetItemData(num,(DWORD)client);//保存服务SOCKET句柄

这样就把SOCKET句柄跟列表项连接到一快了


获取SOCKET数据

为LIST加一个单击鼠标的消息,当收到消息时取出SOCKET值并设置为 当前SOCKET,代码如下

void CMyDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
POSITION pos = m_list.GetFirstSelectedItemPosition();
int currentSelect=m_list.GetNextSelectedItem(pos); //取当前选择项

if(currentSelect>=0)
{
DWORD val;
val=m_list.GetItemData(currentSelect); //得到数据
CurrentServerSocket=(SOCKET)val; //转为SOCKET
}
*pResult = 0;
}
分享到:
评论

相关推荐

    VC中获取窗口句柄的各种方法

    在Microsoft Visual C++ (VC) 开发环境中,窗口句柄(HWND)是Windows API中用于标识应用程序窗口的一个重要标识符。窗口句柄是系统分配的一个唯一整数值,它允许程序与特定窗口进行交互。本篇文章将详细介绍在VC中...

    vc listctrl tooltips

    在Microsoft Visual C++ (VC++) 开发环境中,`ListCtrl` 是一个常用控件,用于显示多列数据,常用于创建类似Windows资源管理器的界面。`Tooltips` 则是提供额外信息的小型文本框,当鼠标悬停在某个元素上时,它会...

    VC socket 服务器编程实例源码

    Socket编程在IT行业中是网络通信的基础,特别是在Windows环境下,Visual C++(简称VC)提供了强大的支持,让开发者能够创建高效且可靠的网络应用。本实例主要关注的是使用VC6.0进行Socket服务器编程,通过理解与实践...

    VC6.0--socket编程服务器通信

    Socket编程是计算机网络编程中的重要组成部分,特别是在Windows环境下,Visual C++ 6.0(简称VC6.0)因其简洁的界面和强大的编程能力,常被用于开发基于Socket的网络应用。本篇将深入探讨如何在VC6.0中进行Socket...

    VC编制Socket客户端

    在VC中创建Socket客户端,我们需要包含以下关键步骤: 1. **包含必要的库文件**:在C++源代码中,我们需要包含如`winsock2.h`和`ws2tcpip.h`这样的头文件,以使用Socket API。同时,需要链接`ws2_32.lib`库。 2. *...

    使用 socket 传递文件句柄源码

     执行 makefile后,会生成两个可执行文件 fdtrans -- unix socket server fdtranc --unix socket client 先运行 fdtrans 建立监听, 然后 运行fdtranc fdtranc 连接fdtrans并得到 文件 fdtrans.cpp的句柄。...

    VC编程之socket

    在VC中,可以使用Windows API函数如`GetDesktopWindow()`获取桌面窗口句柄,然后`GetWindowDC()`获取设备上下文(DC),接着`BitBlt()`函数用于复制屏幕图像到内存位图。这个位图可以通过Socket发送到服务器,服务器...

    改变ListCtrl字体和颜色

    在Windows应用程序开发中,`ListCtrl` 控件是一种非常常见的用户界面组件,用于显示列表形式的数据。然而,默认情况下,`ListCtrl` 的外观相对固定,对于需要个性化UI设计的应用来说,这种限制可能不够灵活。因此,...

    演示ClientSocket反复连接进程句柄数不变

    在IT行业中,网络编程是不可或缺的一部分,特别是在使用像Delphi这样的高级编程语言进行开发时。本文将深入探讨“演示ClientSocket反复连接进程句柄数不变”这个主题,以及如何解决由此引发的问题,如句柄数增加、...

    VCSOCKET操作

    在本主题中,“VCSOCKET操作”指的是使用VC进行Socket编程,主要用于创建网络连接、发送及接收数据。Socket是Internet协议族中的一种基本通信机制,它允许应用程序通过网络发送和接收数据。 首先,我们要理解Socket...

    vc6.0 Socket

    Socket编程在IT领域中是网络通信的基础,尤其在VC6.0这样的老版本开发环境中,它仍然是许多开发者进行网络应用开发的重要工具。本篇将详细阐述VC6.0下的Socket编程,包括服务端和客户端的建立、连接以及通信过程。 ...

    vc ,socket编程含客户端和服务端

    Socket编程是计算机网络通信中的重要技术,特别是在Windows环境下,Visual C++(简称VC)提供了丰富的API函数和类库来支持socket编程。本压缩包包含了客户端(client)和服务端(server)的示例代码,这对于理解和...

    ListCtrl的基本用法

    在Windows编程中,ListCtrl是MFC(Microsoft Foundation Classes)库提供的一种常用控件,用于显示列表形式的数据。ListCtrl通常被用在对话框、视图等界面元素中,能够以多列、可排序的方式展示信息,适用于创建如...

    VC中基于SOCKET的网络编程

    标题提到的“VC中基于SOCKET的网络编程”,指的是在Visual C++(VC)环境下利用Winsock库进行网络编程,其核心在于使用SOCKET来实现网络通信。SOCKET是网络通信的基本单位,它是一个抽象层,用于应用程序和网络协议...

    VC由进程ID获取窗口句柄

    VC由进程ID获取窗口句柄是Windows编程中的一种常见操作。通过获取进程ID,可以获取该进程下的所有窗口句柄,从而实现对该进程的控制和操作。本文将详细介绍如何使用VC++通过进程ID获取窗口句柄的方法和实现步骤。 ...

    自绘ListCtrl窗口

    在提供的文件中,`XUIList.h`和`XUIList.cpp`可能是自定义的ListCtrl类定义和实现,而`MyListCtrl.cpp`可能是具体的使用示例或扩展。这些文件可能包含了上述步骤的代码实现,如自定义消息处理函数和拖放逻辑。 总之...

    win32 ListCtrl控件使用源码

    在Windows编程领域,Win32 SDK...通过这个源码示例,初学者可以了解到如何在实际项目中使用和操作ListCtrl控件,从而提升其在Win32应用开发中的技能。记得仔细阅读和理解每个文件,实践是掌握技术的最佳途径。

    vc窗口 输出 创建窗口句柄 输出窗口

    本文将深入解析如何使用Visual C++(VC)创建窗口句柄、输出窗口,以及这一技术在小游戏基本窗口设计中的应用。通过分析给定代码片段,我们将详细解读其工作原理,并探讨其中涉及的关键概念。 ### 一、窗口句柄的...

    在MFC下利用ListCtrl做一个类似QQ好友的列表

    为了模拟QQ好友列表,我们需要在ListCtrl中添加列,这些列可以包含好友的昵称、在线状态等信息。通过InsertColumn函数插入列,并设置列宽和标题。接下来,使用InsertItem函数插入每一项,每项可以包含多个子项,对应...

    c++ vc6 句柄类

    通过分析`test_0322.cpp`,我们可以看到具体如何在VC6中创建和使用句柄类。可能会涉及到继承自MFC的基类,如`CObject`,并实现上述提到的成员函数。`StdAfx.cpp`和`StdAfx.h`通常用于包含预编译的库头文件,以加快...

Global site tag (gtag.js) - Google Analytics