📄 index1.txt
字号:
1,Winsock如何接收二进制数据
使用winsock API编写网络通讯程序时,由于对方发送过来的数据经过加密,数据包中含有C语言中的字符串结束符和一些不可见字符(VB收到后表现为乱码)。由于VB字符集的原因,按照字符串方式接收数据,解密时发生错误。请问有没有一种方法,直接从Socket套接字中,把数据读到Byte数组中.
注:
使用winsock控件可以实现读数据到字节数组中,但,使用winsock控件我发送数据时,对方Unix通讯程序接收不到我发送的数据,所以使用winsock Api函数。
<END>
2,在Internet Transfer Control中,如何设置代理服务器
请问在VB的网络控件Microsoft Internet Transfer Control中,如何设置代理服务器的参数,使之可以通过代理服务器访问个人网页?
<END>
3,用vb作Asp开发,和用专门的工具各有什么优缺点
我想知道用vb作Asp开发,和用专门的工具如(InterDev)各有什么优缺点。
<END>
4,如何能够判断网络已经断线
请问专家有没有WIN32API函数能够判断网络已经断线,若没有,有可其它方法?谢谢!!!
<END>
5,用Winsock控件发送文件可是文本文件则不全
我参照一份资料编了一个用Winsock控件发送文件的程序,可是有一点问题:(关于文件读取后再写入文件这个问题我上次已经问过了所以程序也改了)就是如果是文本文件则不全,如果是程序则打不开,我发现接收的数组和发送的不一样,该怎么办,程序如下:
客户端:
Private Sub Form_Load()
Winsock1.LocalPort = 1001
Winsock1.Listen
End Sub
Dim a() As Byte
Private Sub Command1_Click()
Winsock1.Connect
End Sub
Private Sub Command2_Click()
Winsock1.SendData a
End Sub
Private Sub Form_Load()
Form2.Show
Winsock1.RemoteHost = "C3Y0V3"
Winsock1.RemotePort = 1001
Open "d:\B.DAT" For Binary As #1
I = 0
Do While Not EOF(1)
I = I + 1
ReDim Preserve a(1 To I)
Get #1, , a(I)
Loop
Reset
Debug.Print I
End Sub
服务器端:
如何才能接收全呢???
Private Sub Form_Load()
Winsock1.LocalPort = 1001
Winsock1.Listen
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept requestID
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim B() As Byte
ReDim Preserve B(1 To bytesTotal)
Open "C:\WINDOWS\DESKTOP\C.DAT" For Binary As #2
Winsock1.GetData B, vbByte + vbArray
For I = 1 To bytesTotal - 1 '
Put #2, , B(I)
Next
Reset
End Sub
<END>
6,对方的TCPIP要求由我先发送一个数据包然后他再提出连接请求
如果是这样的一种情况,对方的TCP/IP要求由我先发送一个数据包,然后他再提出连接请求,我该怎么设定我的WINSOCK呢,我是UDP还是TCP,或者,我设为服务端以后,怎么给一个远方的端口发数据?我能自己设REQUEST ID吗?
<END>
7, 设计FTP传送程序时,删除文件函数返回的值是FALSE
问 题 :API设 计 FTP传 送 程 序 时 ,上 载 和 下 载 操 作 都 很 正 常 ,但 删 除 文 件 不 正 常 。当 调 用 删 除 文 件 函 数 ,如 果 返 回 的 值 是 FALSE, 这 个 文 件 就 再 也 删 不 掉 了 直 到 重 启 服 务 器 才 能 删 掉 。( 用 Internet transsfer 控 件 也 遇 到 这 种 情 况 ) 。这 个 问 题 怎 么 解 决 ?
<END>
8,Winsock控件的客户端退出后最后一条信息无法被服务器端捕获
Winsock 控 件 的 应 用 : Client 端 的 form_Unload 事 件 中 , winsock senddata 表 示 自 己 退 出 , 可 sever 端 没 收 到 消 息 , client 端 就 退 出 了 , 造 成 sever 端 无 法 知 道 , 只 能 靠 检 测 winsock 的 state 来 处 理 , 有 没 有 更 好 的 办 法 ?
<END>
9,怎么知道用winsock控件传文件,什么时候传完
用 winsock控 件 传 文 件 ,可 我 不 知 道 什 么 时 候 传 完 ,自 己 设 结 尾 又 怕 文 件 中 会 出 现 和 我 设 定 结 尾 一 样 的 码 。
<END>
10,在浏览器的右键功能中加一些自己的操作
我 想 在 浏 览 器 的 右 键 功 能 中 加 一 些 自 己 的 操 作 , 比 如 把 选 择 的 内 容 送 到 服 务 器 端 或 把 选 择 的 内 容 做 一 些 本 地 操 作 , 就 象 网 络 蚂 蚁 做 的 那 样 , 不 知 道 注 册 表 要 怎 样 修 改 , 编 程 时 要 怎 么 做 。
<END>
11,如何限制连接的时间
请 问 VB中 的 DoEvents 该 怎 样 用 呀 ?我 编 了 一 个 抓 网 页 的 程 序 , 但 是 有 的 时 候 网 络 太 慢 或 者 服 务 器 太 慢 , 程 序 就 会
进 入 无 响 应 状 态 。 我 想 给 它 限 制 连 接 的 时 间 , 超 过 时 间 就 转 向 下 一 个 URL
<END>
12,如何用vb实现手机短讯的发送
请 教 如 何 用 vb实 现 手 机 短 讯 的 发 送 CGI
<form action="http://www.mmailto.com/SendMessage.asp" method="Post">
接 收 方 的 手 机 号 码 :
<input NAME="PgNo" SIZE="15" maxlength="15">
( 11位 ) 类 型 :
<input type="radio" id="radio1" checked name="Type" value="C">
<input type="radio" name="Type" value="E">
您 的 姓 名 :
<input SIZE="10" maxlength="10" NAME="Name">
<select name="Sex" size="1">
<option value="G" selected>先 生 </option>
<option value="M">女 士 </option>
</select>
发 送 的 短 讯 内 容 ( 英 文 手 机 最 大 120个 字 符 , 中 文 手 机 最 大 60个
<textarea cols="50" name="Msg" rows="4">
<END>
13,利用Winsock控件下载ZIP文件,为什么下载后的文件大小不一致
请 问 利 用 Winsock控 件 下 载 ZIP文 件 , 为 什 么 下 载 后 的 文 件 大 小 不 一 致 ?
部 分 源 码 如 下 :
Private Sub wscHttp_Close(Index As Integer)
If Not m_bResponseReceived(Index) Then
m_strHttpResponse(Index) = Mid(m_strHttpResponse(Index), _
InStr(1, m_strHttpResponse(Index), _
vbCrLf & vbCrLf) + 4)
m_bResponseReceived(Index) = True
Open FileName(Index) For Binary Access Write Lock Read Write As #1
Put #1, , m_strHttpResponse(Index)
Close #1
AddItemInListBox Index, "下 载 完 毕 ! "
wscHttp(Index).Tag = ""
End If
End Sub
Private Sub wscHttp_Connect(Index As Integer)
Dim strHttpRequest As String
strHttpRequest = "GET " & m_strFilePath(Index) & " HTTP/1.1" & vbCrLf
strHttpRequest = strHttpRequest & "Host: " & m_strRemoteHost(Index) & vbCrLf
strHttpRequest = strHttpRequest & "Accept: */*" & vbCrLf
strHttpRequest = strHttpRequest & "Connection: close" & vbCrLf
strHttpRequest = strHttpRequest & vbCrLf
wscHttp(Index).SendData strHttpRequest
End Sub
Private Sub wscHttp_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim strData As String
Dim intBreakePosition As Integer
Dim vHeaders As Variant
Dim vHeader As Variant
On Error Resume Next
'
AddItemInListBox Index, "正 在 接 收 数 据 ..."
wscHttp(Index).GetData strData, vbString
m_strHttpResponse(Index) = m_strHttpResponse(Index) & strData
m_lDownloadedBytes(Index) = m_lDownloadedBytes(Index) + bytesTotal
If Not m_bHeaderReceived(Index) Then
intBreakePosition = InStr(1, m_strHttpResponse(Index), vbCrLf & vbCrLf)
If intBreakePosition Then
m_bHeaderReceived(Index) = True
m_lDownloadedBytes(Index) = m_lDownloadedBytes(Index) - intBreakePosition - 3
vHeaders = Split(Left(m_strHttpResponse(Index), intBreakePosition - 1), vbCrLf)
For Each vHeader In vHeaders
If InStr(1, vHeader, "Content-Length") Then
m_lContentLength(Index) = CLng(Mid(vHeader, InStr(1, vHeader, " ") + 1))
lvItem(Index).SubItems(3) = CInt(m_lContentLength(Index) / 1024) & " KB"
Exit For
End If
Next
End If
Else
If m_lContentLength(Index) > 0 Then
lvItem(Index).SubItems(2) = CInt(m_lDownloadedBytes(Index) / (m_lContentLength(Index) / 100)) & "%"
lvItem(Index).SubItems(4) = CInt(m_lDownloadedBytes(Index) / 1024) & " KB"
Else
lvItem(Index).SubItems(4) = CInt(m_lDownloadedBytes(Index) / 1024) & " KB"
End If
End If
'
End Sub
<END>
15,如何在上网状态下向手机发送短信息
请 教 如 何 在 上 网 状 态 下 向 手 机 发 送 短 信 息 ? 是 否 要 通 过 代 理 服 务 器 ? 望 各 位 高 手 指 点 !
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -