1 Star 0 Fork 1

wwkkww/pinvokeDemo

forked from nuanyang/pinvokeDemo 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
Helper.cs 1.03 KB
一键复制 编辑 原始数据 按行查看 历史
nuanyang 提交于 2021-04-14 16:30 . 初始化项目
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp12
{
/// <summary>
/// 指针帮助类
/// </summary>
public static class IntPtrHelper
{
/// <summary>
/// 将指针转化成对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="intPtr"></param>
/// <returns></returns>
public static T ToModel<T>(this IntPtr intPtr)
{
return Marshal.PtrToStructure<T>(intPtr);
}
/// <summary>
/// 将指针转化成对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="model"></param>
/// <returns></returns>
public static IntPtr ToIntPtr<T>(this T model)
{
IntPtr intPtr = Marshal.AllocHGlobal(Marshal.SizeOf(model));
Marshal.StructureToPtr(model, intPtr, true);
return intPtr;
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/wwkkww1983/pinvoke-demo.git
git@gitee.com:wwkkww1983/pinvoke-demo.git
wwkkww1983
pinvoke-demo
pinvokeDemo
master

搜索帮助