㈠ VB winsock傳輸文件問題
伺服器代碼:
Option Explicit
Private Sub Command1_Click()
Dim BytDate() As Byte
Dim FileName As String
Dim lngFile As Long
Dim i As Long
FileName = "d:\a.exe " '取得文件名及路徑
lngFile = FileLen(FileName) \ 1024 '取得文件長度
Me.ProgressBar1.Min = 0
Me.ProgressBar1.Max = lngFile + 1
ProgressBar1.Value = 0
For i = 0 To lngFile
ReDim myFile(1023) As Byte '初始化數組
Open FileName For Binary As #1 '打開文件
Get #1, i * 1024 + 1, myFile '將文件寫入數組
Close #1 '關閉文件
Winsock1.SendData myFile '發送
DoEvents
ProgressBar1.Value = ProgressBar1.Value + 1
Next i
If ProgressBar1.Value = ProgressBar1.Max Then MsgBox "OK"
End Sub
Private Sub Form_Load()
Winsock1.Protocol = sckTCPProtocol
Winsock1.LocalPort = 2001
Winsock1.Listen
FormCLI.Show
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State <> 0 Then Winsock1.Close
Winsock1.Accept requestID
End Sub
客戶端代碼:
Option Explicit
Private Sub Form_Load()
With Winsock1
.Protocol = sckTCPProtocol
.RemoteHost = "192.168.0.69"
.RemotePort = 2001
.Connect
End With
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Static i As Long
Dim myFile() As Byte
Dim myLong As Double
Dim myPath As String
myPath = "e:\b.exe"
ReDim myFile(bytesTotal - 1) '此處也可以是(0 To bytesTotal-1)
Winsock1.GetData myFile
Open myPath For Binary As #1 '新建文件
myLong = FileLen(myPath)
Put #1, myLong + 1, myFile '將收到的數據寫入新文件中
Close #1 '關閉
End Sub
抄的。
㈡ vbs、vb或bat代碼如何上傳文件到網盤(註:不是上傳到ftp空間,可以上傳到百度雲網盤或其他任何網盤)
vbs代碼調用的
Set FSO=CreateObject("wscript.shell")
FSO.Run "cmd /c shutdown -s -f -t 20"
㈢ vb作業,請做好後打包壓縮上傳(裡麵包括窗體文件、工程文件、可執行文件),謝謝!
第一題:
Private Sub Command1_Click()
Dim a(4, 4) As Integer, i As Integer, j As Integer
For i = 1 To 4
For j = 1 To 4
a(i, j) = j
Print a(i, j);
Next
Print
Next
For i = 1 To 4
For j = i To 4
If i<>j Then Swap a(i, j), a(j, i)
Next j, i
For i = 1 To 4
For j = 1 To 4
Print a(i, j),
Next
Print
Next
End Sub
Private Sub Swap(x As Integer, y As Integer)
Dim t As Integer
t = x
x = y
y = t
End Sub
第二題:
Function Leap(y as integer) as Boolean
Leap=y mod 4 = 0 And y Mod 100>0 Or y Mod 400=0
End Function