求助:
邮件系统中,可以将邮件项目拖放到桌面,自动保存为文件。
问题:
通过vb.net,也实现同样的操作:
将邮件项目拖放到winform桌面(开发程序窗体),自动保存为指定目录下面的文件。
试了一下,代码如下,问题出在ms对象为nothing,无法获取对象。
对如何处理流数据,不太懂。
请高手帮忙、指导一下?[玫瑰][玫瑰]
Private Sub 文件名称_DragDrop(sender As Object, e As DragEventArgs) Handles Me.DragDrop
If e.Data.GetDataPresent("FileGroupDescriptor") Then
Dim theStream As Stream = DirectCast(e.Data.GetData("FileGroupDescriptor"), Stream)
Dim fileGroupDescriptor As Byte() = New Byte(512) {}
theStream.Read(fileGroupDescriptor, 0, 512)
Dim objFileName As New StringBuilder()
Dim i As Integer = 76
While fileGroupDescriptor(i) <> 0
objFileName.Append(Convert.ToChar(fileGroupDescriptor(i)))
i += 1
End While
Dim strSaveFileName As String = "D:\" + objFileName.ToString()
Dim ms As System.IO.MemoryStream
ms = e.Data.GetData("FileContents", True)
Dim fs As FileStream
fs = New FileStream(strSaveFileName, FileMode.Create)
fs.CopyTo(ms)
fs.Close()
theStream.Close()
End If
End Sub