vb.net内存拷贝 c#内存拷贝

vb.net copymemory 用法

Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)

创新互联专注于甘肃网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供甘肃营销型网站建设,甘肃网站制作、甘肃网页设计、甘肃网站官网定制、小程序开发服务,打造甘肃网络公司原创品牌,更为您提供甘肃网站排名全网营销落地服务。

参数

Destination 要复制内存块的目的地址。

Source 要复制内存块的源地址。

Length 指定要复制内存块的大小,单位为字节

返回值 该函数为VOID型,没有返回值。

vb.net中如何使用memorycopy

VB.net不支持直接内存操作,你可以选用

1 用Marshal 类,看链接

网页链接

2 拿C#或者C++写一个然后去调用.

如何把VB.NET内部资源文件复制到磁盘上

可以查看附件,或则使用以下代码。应该注释的满全了。

随便建一个窗口工程,窗口代码帖入以下代码。

Imports System.IO

Imports System.Text

Imports System.Reflection

Public Class Form1

Const ResName As String = "123.txt" ' 需要保存的资源名

Const BufferSize As Integer = 4096  ' 复制时缓冲的大小

Private Sub Demo()

' 变量声明

Dim strDisplayText As StringBuilder ' 保存输出信息

Dim strResName As String            ' 保存目标资源的名称

' 变量初始化

strDisplayText = New StringBuilder()

strResName = String.Empty

' 获取所有资源

strDisplayText.AppendLine("文件中存在以下资源:")

For Each strName As String In Assembly.GetExecutingAssembly.GetManifestResourceNames()

strDisplayText.AppendLine("  "  strName)

' 获得目标资源的全名

If strName.EndsWith("."  ResName) Then

strResName = strName

End If

Next

' 目标资源不存在

strDisplayText.AppendLine()

If strResName = String.Empty Then

strDisplayText.AppendLine("抱歉,没有找名为"""  ResName  """的资源")

Else ' 复制资源的代码

' 打开资源文件,在End Using的时候自动关闭。

Using ms As UnmanagedMemoryStream = Assembly.GetExecutingAssembly.GetManifestResourceStream(strResName)

' 打开磁盘文件,在End Using的时候自动关闭。

Using fs As New FileStream("C:\"  ResName, FileMode.Create)

' 变量声明

Dim Buffer(BufferSize - 1) As Byte  ' 复制文件时的缓冲数组

Dim ReadCount As Integer            ' 此次读取数据的数量

' 还有数据可以读取的情况,一直循环

ReadCount = ms.Read(Buffer, 0, BufferSize)

While ReadCount  0

fs.Write(Buffer, 0, ReadCount) ' 写入到磁盘文件

ReadCount = ms.Read(Buffer, 0, BufferSize)

End While

End Using

End Using

strDisplayText.AppendLine("文件已经复制完毕。")

End If

' 显示消息

MessageBox.Show(strDisplayText.ToString())

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Call Demo()

End

End Sub

End Class

VB.NET2010 如何复制指定目录下按类型的所有文件到另一文件夹 复制后再删除原来的文件?

这段代码的问题是:

首先for each循环在files里查找文件对象,但是f变量声明为string了,无法让它获取对象;

然后file.copy的变量file没有任何声明,也没有初始化赋值等;

最后,整个for each循环里查找集合files的文件,由于初始化的循环计数器仍然按照最初设定的文件数目向后递增(文件地址),但是实际文件删除一部分,后续的文件位置就不能跟循环计数指针匹配了,所以默认为查找不到文件,将会报错。一般的做法时把复制和删除分别放在2次循环里,第一次只复制文件,第二次才去删除。


本文名称:vb.net内存拷贝 c#内存拷贝
当前链接:http://ybzwz.com/article/hpodio.html