?? 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 + -