不用Winsock实现程序与单机程序之间的信息通信?

王伟晔 2003-01-10 11:31:55
不用Winsock实现程序与单机程序之间的信息通信?
要即使的
最好也要说一下跨工程的调用!
请说出详细做法!
...全文
32 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
王伟晔 2003-01-28
  • 打赏
  • 举报
回复
qqqdong的程序写得很长,非常感谢!
可是误解了我的意思,我要的不是点对点的通信,而是工程与工程之间的通信!interdog的方法是正确的,可是在即时性方面比较难完美。
其实,我想说的就是类似于程序监控器的程序。
例如,把工程1中的计算结果,自动在工程2中的文本框中显示出来。
经过了那么长的日子,时间关系,我的程序还是选用了WINSOCK。
无论怎么样,谢谢各位的帖子。
interdog 2003-01-10
  • 打赏
  • 举报
回复
用写文件的方式来实现,各个应用程序之间的通讯,freebsd里面有用到这种方式,
programart_life 2003-01-10
  • 打赏
  • 举报
回复
不用套接?你自己写通讯协议?将国际通用的七层网络结构废弃,而采用你自己的结构?呵呵,哈哈,有趣。建议你到微软或者IBM、SUM之类的大公司去从事底层开发吧!~哈哈哈哈
_131_ 2003-01-10
  • 打赏
  • 举报
回复
楼主都说了,不用socket的!
这个问题很奇怪,我也想知道怎么实现!

楼主能说明一下为什么不能socket吗?
qqqdong 2003-01-10
  • 打赏
  • 举报
回复
一个简单的点对点聊天程序
VERSION 5.00
Object = "{248DD890-BB45-11CF-9ABC-0080C7E7B78D}#1.0#0"; "MSWINSCK.OCX"
Begin VB.Form Form1
Caption = "点对点通讯"
ClientHeight = 6330
ClientLeft = 60
ClientTop = 345
ClientWidth = 6855
Icon = "Form1.frx":0000
LinkTopic = "Form1"
ScaleHeight = 6330
ScaleWidth = 6855
StartUpPosition = 2 'CenterScreen
Begin VB.ListBox lstTo
BeginProperty Font
Name = "MS Sans Serif"
Size = 12
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 2460
ItemData = "Form1.frx":030A
Left = 90
List = "Form1.frx":030C
TabIndex = 5
TabStop = 0 'False
Top = 3225
Width = 6675
End
Begin MSWinsockLib.Winsock Winsock1
Left = 6345
Top = 2790
_ExtentX = 741
_ExtentY = 741
_Version = 393216
End
Begin VB.CommandButton cmdConnect
Caption = "连接"
Height = 495
Left = 4725
TabIndex = 4
TabStop = 0 'False
Top = 2655
Width = 1215
End
Begin VB.TextBox txtIP
Height = 300
Left = 1500
TabIndex = 3
TabStop = 0 'False
Text = "192.168.1.68"
Top = 2760
Visible = 0 'False
Width = 2745
End
Begin VB.CheckBox chkServer
Caption = "服务器"
Height = 330
Left = 120
TabIndex = 2
TabStop = 0 'False
Top = 2745
Visible = 0 'False
Width = 1215
End
Begin VB.TextBox txtMemo
BeginProperty Font
Name = "MS Sans Serif"
Size = 12
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 360
Left = 75
TabIndex = 1
Top = 5805
Width = 6675
End
Begin VB.ListBox lstFrom
BeginProperty Font
Name = "MS Sans Serif"
Size = 12
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 2460
ItemData = "Form1.frx":030E
Left = 120
List = "Form1.frx":0310
TabIndex = 0
TabStop = 0 'False
Top = 150
Width = 6615
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Sub chkServer_Click()
If Me.chkServer.Value Then
If Me.Winsock1.State <> sckClosed Then Me.Winsock1.Close
Me.Winsock1.LocalPort = 4001
Me.Winsock1.Listen
End If
End Sub

Private Sub cmdConnect_Click()
If Me.Winsock1.State <> sckClosed Then Me.Winsock1.Close
Me.Winsock1.RemoteHost = txtIP.Text
Me.Winsock1.RemotePort = 4001
Me.Winsock1.Connect
Call AddTo("呼叫")
End Sub

Private Sub Form_Load()
Call chkServer_Click
End Sub

Public Sub AddTo(ByVal pstrTemp As String)
lstTo.AddItem (pstrTemp)
lstTo.ListIndex = lstTo.ListCount - 1
DoEvents
Me.txtMemo.SetFocus
End Sub

Public Sub AddFrom(ByVal pstrTemp As String)
lstFrom.AddItem (pstrTemp)
lstFrom.ListIndex = lstFrom.ListCount - 1
DoEvents
Me.txtMemo.SetFocus
End Sub

Private Sub lstFrom_DblClick()
Me.lstFrom.Clear
Me.txtMemo.SetFocus
End Sub

Private Sub lstTo_DblClick()
Me.lstTo.Clear
Me.txtMemo.SetFocus
End Sub

Private Sub txtMemo_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
If UCase(Me.txtMemo.Text) = "/SHOW" Then
Me.chkServer.Visible = True
Me.txtIP.Visible = True
Me.txtMemo.Text = ""
Exit Sub
End If
If Len(Trim(Me.txtMemo.Text)) > 0 Then
Call SendInfo(Me.txtMemo.Text)
If Left(Trim(Me.txtMemo.Text), 1) <> "/" Then
Call AddTo(Me.txtMemo.Text)
End If
Me.txtMemo.Text = ""
End If
End If
End Sub

Private Sub Winsock1_Close()
Call chkServer_Click
MsgBox "对方退出"
End Sub

Private Sub Winsock1_Connect()
Call AddFrom("连接成功")
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
With Me.Winsock1
If .State <> sckClosed Then .Close
.Accept (requestID)
DoEvents
'Call SendInfo("连接成功")
Call AddFrom("连接成功")
End With
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim strTemp As String

With Me.Winsock1
.GetData strTemp
Select Case UCase(Left(strTemp, 2))
Case "/T"
Me.Caption = Right(strTemp, Len(strTemp) - 2)
Case Else
Call AddFrom(strTemp)
End Select
End With
End Sub

Public Sub SendInfo(ByVal pstr As String)
On Error Resume Next
Me.Winsock1.SendData pstr
End Sub

本书专门讨论Windows网络编程技术,覆盖Windows 95/98/NT 4/2000/CE平台。内容包括NetBIOS和Windows重定向器方法、Winsock方法、客户端远程访问服务器方法。本书论述深入浅出、用大量实例详解了微软网络API函数的应用。配套光盘包含了所有实例代码,方便读者使用。本书适合中、高级程序设计人员以及网络设计与管理人员参考。 包  装: 平装本书通过应用实例由浅入深引入VC++集成开发环境下的网络编程技术。全书突出网络编程技术应用背景,发掘编程技术与网络应用开发的逻辑联系。内容主要包括Windows网络编程基础、单机资源共享的应用编程、基于NetBIOS网络编程、基于WinSock网络编程、直接网络编程和高级网络编程等。 本书有光盘源码,适合那些具有一定C和C++语言基础,期望逐步加强网络编程能力或网络编程相关综合训练的计算机类专业以及网络应用相关专业学生和技术人员使用。教师可以根据课时要求选择讲授本书的章节。第1章 Windows网络编程基础 1.1 Windows网络应用 1.1.1 常用的网络应用实例 1.1.2 网络应用的特点与运行环境 1.1.3 网络应用前景 1.2 Windows环境下的应用程序 1.2.1 应用程序的形态 1.2.2 应用程序的运行环境 1.2.3 应用程序的开发环境VC++ 1.3 Windows环境下的网络应用程序 1.3.1 网络应用程序的系统支持 1.3.2 网络应用程序运行环境的问题 1.3.3 网络应用程序的应用模型 第2章 单机资源共享的应用编程 2.1 进程间通信 2.1.1 进程间通信应用实例及概念 2.1.2 进程的创建与终止 2.1.3 内存文件映射 2.2 多线程通信 2.2.1 多线程应用实例及概念 2.2.2 线程的创建、挂起、激活和终止 2.2.3 线程的优先级 2.3 同步控制机制 2.3.1 同步控制应用实例及意义 2.3.2 同步控制类型及应用条件 2.3.3 应用实例的算法与实现 2.4 动态链接库 2.4.1 静态链接库与动态链接库的应用实例 2.4.2 动态链接库的创建与调用方法 2.4.3 动态链接库的应用的条件 第3章 基于NetBIOS的网络编程 3.1 基于NetBIOS的网络编程基础 3.1.1 网络应用实例与来源 3.1.2 NetBIOS提供的接口与服务 3.1.3 网络控制块NCB的应用 3.2 数据报通信编程 3.2.1 数据报通信应用模型 3.2.2 实例中的广播式数据报通信算法与实现 3.2.3 实例中定向型数据报通信的算法与实现 3.3 会话通信编程 3.3.1 会话通信应用模型 3.3.2 实例中会话服务器的算法与实现 3.3.3 实例中的会话客户算法与实现 第4章 基于WinSock的网络编程 4.1 基于WinSock网络编程的基础 4.1.1 网络应用实例与来源 4.1.2 Winsock提供的接口与服务 4.1.3 WinSock提供的函数调用 4.2 WinSock网络应用实例算法与实现 4.2.1获取主机网络信息 4.2.2 WinSock单播、多播与广播通信应用 4.2.3 WinSock会话通信应用 4.3 WinSock异步I/O 4.3.1 WinSock异步I/O应用实例 4.3.2 WinSock的I/O方法 4.3.3 异步I/O应用实例的算法与实现 第5章 直接网络编程 5.1 原始套接字编程 5.1.1 原始套接字简介 5.1.2 WinSock的原始套接字 5.1.3 Winsock原始套接字编程步骤 5.1.4 Winsock原始套接字实例 5.2 基于winPcap网络数据包捕获 5.2.1 WinPcap简介 5.2.2 网络数据包捕获的原理 5.2.3 Windlows捕获数据包的结构 5.2.4 利用WinPcap进行网络数据包的捕获和过滤的设计步骤 5.2.5 WinPcap开发环境配置 5.2.6 WinPcap实例分析 5.2.7 数据包捕获性能的优化 第6章 高级网络编程 6.1 简单MFC网络编程 6.1.1 网络聊天应用实例 6.1.2 MFC基本框架与接口 6.1.3 网络应用实例的实现 6.2 基于MFC Socket类编程 6.2.1 CAsyncSocket类和CSocket类 6.2.2 网络应用实例功能介绍 6.2.3 网络应用实例算法及实现 6.3 MFC WinInet编程 6.3.1 WinInet API编程 6.3.2 winInet类的编程模型 6.3.3 HTTP网络应用实例算法及实现 附录1 网络、应用程序开发说明 附1.1 网络体系结构的概念 附1.2 可执行文件的PE格式 附1.3 VC++的项目向导类型和文件类型 附1.4 Win32系统调用 附录2 部分Win32函数定义 附录3 NetBIOS的NCB结构、命令和错误代码 附3.1 网络控制块NCB的结构 附3.2 NCB ncb—command字段的命令代码 附3.3 NetBIOS错误代码 附录4 WinSoek数据结构、库函数和错误代码 附4.1 Winsockk数据结构 附4.2 Winsock基本套接字函数 附4.3 Winsock的扩展函数 附4.4 Winsockk错误代码 附录5 WinPcap定义、库函数 附5.1 定义 附5.2 函数
本书专门讨论Windows网络编程技术,覆盖Windows 95/98/NT 4/2000/CE平台。内容包括NetBIOS和Windows重定向器方法、Winsock方法、客户端远程访问服务器方法。本书论述深入浅出、用大量实例详解了微软网络API函数的应用。配套光盘包含了所有实例代码,方便读者使用。本书适合中、高级程序设计人员以及网络设计与管理人员参考。 包  装: 平装本书通过应用实例由浅入深引入VC++集成开发环境下的网络编程技术。全书突出网络编程技术应用背景,发掘编程技术与网络应用开发的逻辑联系。内容主要包括Windows网络编程基础、单机资源共享的应用编程、基于NetBIOS网络编程、基于WinSock网络编程、直接网络编程和高级网络编程等。 本书有光盘源码,适合那些具有一定C和C++语言基础,期望逐步加强网络编程能力或网络编程相关综合训练的计算机类专业以及网络应用相关专业学生和技术人员使用。教师可以根据课时要求选择讲授本书的章节。第1章 Windows网络编程基础 1.1 Windows网络应用 1.1.1 常用的网络应用实例 1.1.2 网络应用的特点与运行环境 1.1.3 网络应用前景 1.2 Windows环境下的应用程序 1.2.1 应用程序的形态 1.2.2 应用程序的运行环境 1.2.3 应用程序的开发环境VC++ 1.3 Windows环境下的网络应用程序 1.3.1 网络应用程序的系统支持 1.3.2 网络应用程序运行环境的问题 1.3.3 网络应用程序的应用模型 第2章 单机资源共享的应用编程 2.1 进程间通信 2.1.1 进程间通信应用实例及概念 2.1.2 进程的创建与终止 2.1.3 内存文件映射 2.2 多线程通信 2.2.1 多线程应用实例及概念 2.2.2 线程的创建、挂起、激活和终止 2.2.3 线程的优先级 2.3 同步控制机制 2.3.1 同步控制应用实例及意义 2.3.2 同步控制类型及应用条件 2.3.3 应用实例的算法与实现 2.4 动态链接库 2.4.1 静态链接库与动态链接库的应用实例 2.4.2 动态链接库的创建与调用方法 2.4.3 动态链接库的应用的条件 第3章 基于NetBIOS的网络编程 3.1 基于NetBIOS的网络编程基础 3.1.1 网络应用实例与来源 3.1.2 NetBIOS提供的接口与服务 3.1.3 网络控制块NCB的应用 3.2 数据报通信编程 3.2.1 数据报通信应用模型 3.2.2 实例中的广播式数据报通信算法与实现 3.2.3 实例中定向型数据报通信的算法与实现 3.3 会话通信编程 3.3.1 会话通信应用模型 3.3.2 实例中会话服务器的算法与实现 3.3.3 实例中的会话客户算法与实现 第4章 基于WinSock的网络编程 4.1 基于WinSock网络编程的基础 4.1.1 网络应用实例与来源 4.1.2 Winsock提供的接口与服务 4.1.3 WinSock提供的函数调用 4.2 WinSock网络应用实例算法与实现 4.2.1获取主机网络信息 4.2.2 WinSock单播、多播与广播通信应用 4.2.3 WinSock会话通信应用 4.3 WinSock异步I/O 4.3.1 WinSock异步I/O应用实例 4.3.2 WinSock的I/O方法 4.3.3 异步I/O应用实例的算法与实现 第5章 直接网络编程 5.1 原始套接字编程 5.1.1 原始套接字简介 5.1.2 WinSock的原始套接字 5.1.3 Winsock原始套接字编程步骤 5.1.4 Winsock原始套接字实例 5.2 基于winPcap网络数据包捕获 5.2.1 WinPcap简介 5.2.2 网络数据包捕获的原理 5.2.3 Windlows捕获数据包的结构 5.2.4 利用WinPcap进行网络数据包的捕获和过滤的设计步骤 5.2.5 WinPcap开发环境配置 5.2.6 WinPcap实例分析 5.2.7 数据包捕获性能的优化 第6章 高级网络编程 6.1 简单MFC网络编程 6.1.1 网络聊天应用实例 6.1.2 MFC基本框架与接口 6.1.3 网络应用实例的实现 6.2 基于MFC Socket类编程 6.2.1 CAsyncSocket类和CSocket类 6.2.2 网络应用实例功能介绍 6.2.3 网络应用实例算法及实现 6.3 MFC WinInet编程 6.3.1 WinInet API编程 6.3.2 winInet类的编程模型 6.3.3 HTTP网络应用实例算法及实现 附录1 网络、应用程序开发说明 附1.1 网络体系结构的概念 附1.2 可执行文件的PE格式 附1.3 VC++的项目向导类型和文件类型 附1.4 Win32系统调用 附录2 部分Win32函数定义 附录3 NetBIOS的NCB结构、命令和错误代码 附3.1 网络控制块NCB的结构 附3.2 NCB ncb—command字段的命令代码 附3.3 NetBIOS错误代码 附录4 WinSoek数据结构、库函数和错误代码 附4.1 Winsockk数据结构 附4.2 Winsock基本套接字函数 附4.3 Winsock的扩展函数 附4.4 Winsockk错误代码 附录5 WinPcap定义、库函数 附5.1 定义 附5.2 函数

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧