廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 13020 個閱讀者
 
<< 上頁  1   2  >>(共 2 頁)
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
overing 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x0 鮮花 x55
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用w791212w於2008-09-20 20:28發表的 :
我又有1個疑問耶
關於VB6的Winsock元件
好像沒裝VB6的人打不開內涵Winsock元件的EXE檔
請問要怎麼處理??

連同執行檔附上Winsock的來源物件檔 mswinsck.ocx 給對方
通常在 %SystemRoot%\system32\mswinsck.ocx


Zippy G2 600W
Intel C2Q Q9550
Gigabyte GA-X48-DQ6
Gigabyte GV-NX96T512H-B
G-skill pi 1100MHz 2Gx4
ACARD ANS-9010 32GB (Windows7 10sec boot!!)
WD 150GB(WD1500ADFD)/640GB(6400AASK)
獻花 x0 回到頂端 [10 樓] From:未知地址 | Posted:2008-09-20 20:31 |
w791212w
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x4 鮮花 x1
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

圖 1.



我給了對方"MSWINSCK.OCX"
但是卻出現下面著個問題


執行階段錯誤'400060'
對所要求的交易或要求而言,通訊協定(procol)不適合或連線狀態有誤


請問我程式碼哪裡出錯了??

sever
--------------------------------------------------------------------------------
Dim wk(1000) As Integer
Dim win As Integer
Dim tempne As Integer
Dim tempstr As String
Dim account, account_sever As String
Dim password, password_sever As String


Private Sub Form_Load()
win = 0
  Winsock1(win).LocalPort = 1024
  Label1(win).Caption = "已斷開連線!"
  Winsock1(win).Listen
End Sub

Private Sub Winsock1_Close(Index As Integer)
Winsock1(Index).Close
Label1(Index).Caption = "已斷開連線!"
wk(Index) = 0
End Sub

Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
For i = 0 To win
If wk(i) = 0 Then
  Winsock1(i).Close
  Label1(i).Caption = "已經連線 !"
  wk(i) = 1
  Winsock1(i).Accept requestID
 
  wink = 0
  For k = 0 To 1000
    If wk(k) = 1 Then wink = wink + 1
  Next k
 
  If wink = win + 1 Then
    win = win + 1
    Load Winsock1(win)
    Load Label1(win)
    Load Label2(win)
    Label1(win).Visible = True
    Label2(win).Visible = True
    Label1(win).Caption = ""
    Label2(win).Caption = ""
    Label1(win).Left = Label1(win - 1).Left
    Label1(win).Top = Label1(win - 1).Top + 240
    Label2(win).Left = Label2(win - 1).Left
    Label2(win).Top = Label2(win - 1).Top + 240
    Winsock1(win).LocalPort = 1024
    Winsock1(win).Listen
   
  End If
  Exit For
End If
Next i
End Sub

Private Sub Winsock1_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Winsock1(Index).GetData tempstr
Label2(Index).Caption = tempstr
tempne = Index
find = Mid(tempstr, 1, 2)
If find = "ap" Then Call test_ap

End Sub

Private Sub Winsock1_Error(Index As Integer, ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
Winsock1(Index).Close
Label1(Index).Caption = "已斷開連線!"
wk(Index) = 0
End Sub

Sub test_ap()
Dim result_end As String

find_a = InStr(tempstr, "a=")
find_p = InStr(tempstr, "p=")
account = Mid(tempstr, find_a + 2, Len(tempstr) - find_p - 1)
password = Mid(tempstr, find_p + 2, Len(tempstr))
Print account
Print password
Open "at&pd\player.ap" For Input As #1
Do While Not EOF(1)
  Input #1, account_sever
  Input #1, password_sever
  If account_sever = account Then
    If password_sever = password Then
        result_end = "test_ap_OK"
        Exit Do
    End If
  End If
  result_end = "test_ap_NO"
Loop
Winsock1(tempne).SendData result_end
Close #1
End Sub


用戶端
------------------------------------------------------------------------------------------------

Private Sub Command1_Click()
  ww = "ap" & "a=" & Text1.Text & "p=" & Text2.Text
  Winsock1.SendData ww
End Sub

Private Sub Form_Load()
  Winsock1.Close
  Label3.Caption = "已斷開連線!"
  If Text3.Text = "" Then
    Label3.Caption = "請輸入主機名稱!"
    Exit Sub
  End If
  Winsock1.RemoteHost = Text3.Text
  Winsock1.RemotePort = 1024
  Winsock1.Connect
End Sub

Private Sub Timer1_Timer()
  Winsock1.Close
  Label3.Caption = "已斷開連線!"
  If Text3.Text = "" Then
    Label3.Caption = "請輸入主機名稱!"
    Exit Sub
  End If
  Winsock1.RemoteHost = Text3.Text
  Winsock1.RemotePort = 1024
  Winsock1.Connect
End Sub

Private Sub Winsock1_Close()
  Winsock1.Close
  Timer1.Enabled = True
  Label3.Caption = "已斷開連線!"
End Sub

Private Sub Winsock1_Connect()
Label3.Caption = "連線中 ..."
Timer1.Enabled = False
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
Winsock1.GetData strData
If strData = "test_ap_OK" Then Label3.Caption = "登入成功!"
If strData = "test_ap_NO" Then Label3.Caption = "登入失敗!"
End Sub

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
  Label3.Caption = "已斷開連線!"
  Label3.Caption = Description
  Winsock1.Close
End Sub


獻花 x0 回到頂端 [11 樓] From:臺灣中華HiNet | Posted:2008-09-21 18:35 |
三仙 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
頭銜:以馬內利 以馬內利
版主
級別: 版主 該用戶目前不上站
版區: 程式設計
推文 x17 鮮花 x370
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用w791212w於2008-09-21 18:35發表的 :
我給了對方"MSWINSCK.OCX"
但是卻出現下面著個問題

執行階段錯誤'400060'
對所要求的交易或要求而言,通訊協定(procol)不適合或連線狀態有誤
.......


40006的錯誤通常是程式碼在實際連線至通訊埠之前
Connect 沒有同步就試圖呼叫 SendData  或 GetData
建議你多寫一段等候 Connect 事件觸發之後
才進行呼叫SendData 或 GetData


挖出答案的難度,取決提問的深度!
獻花 x0 回到頂端 [12 樓] From:臺灣臺北市亞太線上公司 | Posted:2008-09-21 22:48 |
三仙 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
頭銜:以馬內利 以馬內利
版主
級別: 版主 該用戶目前不上站
版區: 程式設計
推文 x17 鮮花 x370
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用w791212w於2008-09-20 15:55發表的 :



1.所以不同的電腦連進來要用不同的PORT了喔??
  就是說對方使用的都是PORT 1024
  而我這邊要都不同是嗎??
  每一個人連進來我的PORT都要設定不同嗎??(如:第1個為1024.第2為1025.....以此類堆)
2.新增後的Winsock元件不要用的該怎麼移除??


port 的 range 102465535


挖出答案的難度,取決提問的深度!
獻花 x0 回到頂端 [13 樓] From:臺灣臺北市亞太線上公司 | Posted:2008-09-21 22:58 |
w791212w
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x4 鮮花 x1
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

這個問題我處理好嚕 表情
結果是他沒連到我...


獻花 x0 回到頂端 [14 樓] From:臺灣中華HiNet | Posted:2008-09-23 20:06 |
三仙 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
頭銜:以馬內利 以馬內利
版主
級別: 版主 該用戶目前不上站
版區: 程式設計
推文 x17 鮮花 x370
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用w791212w於2008-09-23 20:06發表的 :
這個問題我處理好嚕 表情
結果是他沒連到我...


其實從40006的錯誤提示
應該就可以知道方向
那是實際連線至通訊埠之前
Connect 沒有同步
所以只要改善此點
問題就可以解決了


挖出答案的難度,取決提問的深度!
獻花 x0 回到頂端 [15 樓] From:臺灣臺北市亞太線上公司 | Posted:2008-09-24 00:19 |

<< 上頁  1   2  >>(共 2 頁)
首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.016342 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言