【发布时间】:2015-07-08 04:28:35
【问题描述】:
使用RAPI2 将文件从 PC 发送到远程设备。
当使用没有Threads的线路时,它可以正常工作:
RemoteFile.CopyFileToDevice(PdtRemoteDevice, "C:\sample.txt", "\test\sample.txt", True)
但是当我尝试将上面的那条线放在Thread 中时,它会返回设备未连接的错误。
如何使用 Thread 使用 RAPI2 的 CopyFileToDevice?
不使用Thread 会使应用程序看起来像是挂了。所以,我认为用户不会喜欢一个会说没有响应的应用程序。
我的代码:
Imports System.Devices
Imports System.Devices.RemoteDeviceManager
Public Class FormHome
Dim PdtRemoteDevice As RemoteDevice
Dim Devicemanager As New RemoteDeviceManager
Private Sub ButtonHomeCopyToDevice_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonHomeCopyToDevice.Click
PdtRemoteDevice = Devicemanager.Devices.FirstConnectedDevice
If PdtRemoteDevice Is Nothing Then
MessageBox.Show("No Device Connected, Please Try Again")
Exit Sub
Else
Dim Th As Thread
Th = New Thread(AddressOf UploadDatabase)
Th.IsBackground = True
Th.Start()
End If
End Sub
Private Sub UploadDatabase()
Using PdtRemoteDevice = Devicemanager.Devices.FirstConnectedDevice
If Not (PdtRemoteDevice Is Nothing) Then
RemoteFile.CopyFileToDevice(PdtRemoteDevice, "C:\sample.txt", "\test\sample.txt", True)
End If
End Using
End Sub
End Class
【问题讨论】:
-
您需要发布与此问题相关的其余代码。我们应该有一个最小但完整的代码集来工作。
标签: vb.net multithreading windows-ce rapi