首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在C#.NET中实现CopyMemory (VB6)?

如何在C#.NET中实现CopyMemory (VB6)?
EN

Stack Overflow用户
提问于 2014-01-20 20:24:37
回答 2查看 643关注 0票数 1

我有一行代码:

代码语言:javascript
复制
Dim buf(1 To 255) As Byte

          a$ = "hello"   

Call CopyMemory(buf(1), ByVal a$, Len(a$))

我想在C#.NET中执行它。在C#.NET中,上面这行代码的替代方案是什么?

EN

回答 2

Stack Overflow用户

发布于 2014-01-21 04:45:46

代码语言:javascript
复制
string aString = "hello";
byte[] theBytes = Encoding.Default.GetBytes(aString);

请参阅Encoding.GetBytesEncoding.Default

票数 1
EN

Stack Overflow用户

发布于 2014-01-22 19:31:49

我设法解决了这个问题:

代码语言:javascript
复制
string aString = text;
            byte[] theBytes = System.Text.Encoding.Default.GetBytes(aString);
//to copy to memory use the following:-
            // Marshal the managed struct to a native block of memory.
            int myStructSize = theBytes.Length;
            IntPtr pMyStruct = Marshal.AllocHGlobal(myStructSize);
            try
            {
                Marshal.Copy(theBytes, 0, pMyStruct, myStructSize);

...........
}

然后,其他应用程序可以从内存中提取此信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21234058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档