问个关于C# MarshalAs 的问题 很郁闷
这个东西修饰到底修饰的是意思如何控制?我要将结构转换成流
public struct SuitBodyInfo
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] key;
public int imgtype;//
public long suitstaraddress;
public long suitsize; }
比如我修饰这个结构 里面的数组 SizeConst 设置的是不是写入流的字节数?
这个东西修饰到底修饰的是意思如何控制?我要将结构转换成流
public struct SuitBodyInfo
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] key;
public int imgtype;//
public long suitstaraddress;
public long suitsize; }
比如我修饰这个结构 里面的数组 SizeConst 设置的是不是写入流的字节数?
解决方案 »
- winform 程序 System.Diagnostics.Process.Start("Iexplore.exe",fileurl); 异常
- c# 程序传记录集问题,高手点进。
- 求达人解析以下加密代码
- C# wince5.0智能设备程序怎么实现自定义消息啊?
- [没有相关的源行]
- 问下关于窗体显示位置的问题(关键字:topmost,WebBrowser)
- 程序运行在系统进入之前
- 在WINFORM程序中,怎样实现"下一步"("上一步"),就象安装程序一样的"下一步""下一步"模式!请给出思路!
- 将"varchar转换为float失败",怎么搞?
- 如何将图标编辑进Exe文件,并在注册表里设置某个类型的文件与之关联
- 【向高手求解】 弄了半天,如何解决这种ToolTip闪烁问题?
- 如何实现一个数字文本框,并提供指针选择数字!!求助~~~~~~
void
MyMethod([MarshalAs(LPStr)] String s);
某些 UnmanagedType 枚举成员需要附加信息。例如,当 UnmanagedType 为 LPArray 时需要附加信息。有关如何将此属性用于数组的完整说明,请参见 数组的默认封送处理。类型库导入程序 (Tlbimp.exe) 还将此属性应用于参数、字段及返回值,以指示输入类型库中的数据类型不是相应托管数据类型的默认类型。为清楚起见,Tlbimp.exe 始终将 MarshalAsAttribute 应用于 String 和 Object 类型,而不管在输入类型库中指定的是何种类型。注意
MarshalAsAttribute 不支持泛型类型的封送处理。