⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 index1.txt

📁 VB技巧问答10000例,是一个教程
💻 TXT
📖 第 1 页 / 共 3 页
字号:
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 + -