首页 > TAG信息列表 > Marshalling

20220507 7. Data Access - Marshalling XML by Using Object-XML Mappers

前言 文档地址 相关依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-oxm</artifactId> </dependency> 介绍 本章描述了 Spring 的 Object-XML 映射支持。Object-XML 映射(简称 OX 映射)是将 XML 文档与对象相互转换的行为。此转换过程也称为

netty系列之:netty对marshalling的支持

目录简介netty中的marshalling providerMarshalling编码器Marshalling编码的另外一种实现总结 简介 在之前的文章中我们讲过了,jboss marshalling是一种非常优秀的java对象序列化的方式,它可以兼容JDK自带的序列化,同时也提供了性能和使用上的优化。 那么这么优秀的序列化工具可不可

【C# 线程】RPC中常见的Stub| marshalling怎么理解

      RPC服务的基本架构图如上,可以很清楚地看到,一个完整的RPC架构里面包含了四个核心的组件,分别是Client ,Server,Client Stub以及Server Stub,这个Stub大家可以理解为存根。分别说说这几个组件: 客户端(Client): 服务的调用方。 服务端(Server):真正的服务提供者。 客户端存根:存

# 2021-01-03 #「Jenkins Pipeline」- java.io.NotSerializableException: java.util.regex.Matcher

在 09/11/2020 时,我们再次遇到该错误 问题描述 我们再次遇到该问题,发现导致异常的原因并不是 Matcher 没有匹配到内容。如下代码可以重现错误: pipeline { agent any stages { stage('xterm testing') { steps { script {

从C#传递到C代码的结构数组

我已经将结构数组从C#(托管代码)传递到C(非托管代码). struct的内存分配在C#端.该数组用C代码填充.我的代码是多线程的.数组的填充由一个线程完成,另一个线程从struct数组中读取已填充的项目.但是我无法从第二个线程读取数据,直到第一个线程退出,但是两者共享内存. 样例代码 C#结构

具有从C#到非托管驱动程序的嵌入式指针的编组结构

我正在尝试使用P / Invoked DeviceIoControl()调用将C#(.NET Compact Framework 3.5)与Windows CE 6 R2流驱动程序接口.对于IOCTL代码之一,驱动程序需要一个DeviceIoControl输入缓冲区,该缓冲区是以下包含嵌入式指针的非托管结构: typedef struct { DWORD address; const v

NET中有人使用Win32 API函数CredWrite吗?

我正在尝试使用CredWrite,但收到ERROR_INVALID_PARAMETER 87(0x57)错误.目的是要有一个安全的位置来保存我的.net WPF应用程序的用户密码. 而我的代码: public class CredMan { private const string TARGET_PREFIX = "myappname:"; public static void SavePassword(stri

如何将C数组映射到C#?

我的问题与尝试从C#调用用C编写的函数有关.我查看了C库附带的头文件,以了解C dll中存在的功能.这是我看到的: C代码(用于名为“ LocGetLocations”的函数): typedef enum { eLocNoError, eLocInvalidCriteria, eLocNoMatch, eLocNoMoreLocations, eLocConnecti

如何从C#转换(和马歇尔)CityHash std :: pair到C,反之亦然

CityHash允许我们生成128位哈希,但是将整数的128位表示形式定义为一对uint64(如header of CityHash.h所示): typedef boost::uint64_t uint64; typedef std::pair<uint64, uint64> uint128; 我有一个.NET包装器,它允许我调用64位版本的城市哈希: public ref class CityHashDotNet

是否保证此C#结构具有所需的大小?

我想通过包装IntPtr创建类型安全的指针结构: struct Pointer<T> { private IntPtr ptr; // methods marshalling from and to T } 但是我也希望能够将Pointer< T>实例就像是IntPtrs一样,因此它们需要具有相同的大小和布局.可以保证吗? 如果没有,我是否要添加 [StructLayo

C#-在pInvoke中封送结构数组

我在C#中有这样的结构: [StructLayout(LayoutKind.Sequential, Pack = 8)] public struct MyStruct { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)] public string StringValue; public uint IUintValue; } 以及本机代码中的对应结构 struct MyStruct {

java-当有静态类时,没有带有@XmlElementDecl的ObjectFactory

I am getting below exception, i need some help to resolve the issue. If remove the namespace in the object factory and with out package-info.java class it is working fine. Exception that is throwing now Exception

java-将JAXB编组为复杂类型的布尔值

我是JAXB的新手,我想做一些我不知道它是否可行的事情.我有一个像这样编组的Java类: @XmlAccessorType(XMLAccessType.NONE) public class MyClass { @XmlElement private String a = "x"; @XmlElement private String b = "xx"; @XmlElement private boolean c = true;

C CLI结构到字节数组

我有一个代表有线格式数据包的结构.在这种结构中是其他结构的阵列.我有通用代码可以很好地处理大多数情况,但是这种结构数组的情况是将编组器抛出一个循环. 不安全的代码是行不通的,因为我无法获得带有数组的结构的指针(argh!). 我从this codeproject article可以看到,有一个非常不

C#格式化外部Dll函数参数

我尚未找到有关此主题的良好参考.在这个例子中,我们将使用一些我要移植到C#的C代码. 在C land中,我们具有以下用于外部库功能的原型: extern "C" DWORD EXPORT FILES_GetMemoryMapping( PSTR pPathFile, PWORD Size, PSTR MapName, PWORD PacketSize, PMAPPING pMapping,

编组带有字符串的结构时,PInvoke错误

我有一个C结构 struct UnmanagedStruct { char* s; // Other members }; 和一个C#结构 struct ManagedStruct { [MarshalAs(UnmanagedType.LPStr)] string s; // Other members } C库公开 extern "C" UnmanagedStruct __declspec(dllexport) foo( char* input )

如何将const unsigned char *从c传递给c#

因此,我在非托管c语言中有一个函数,当某些文本碰巧到达时被调用: #using <MyParser.dll> ... void dump_body(const unsigned char *Body, int BodyLen) { // Need to pass the body to DumpBody, but as what type? ... MyParser::Parser::DumpBody(???); } DumpBody是

c#-GetTokenInformation返回的TOKEN_PRIVILEGES.LUID_AND_ATTRIBUTES数组的设置大小

我正在尝试检索特权和它们与C#中的令牌相关联的当前状态,但我不知道如何调整返回的LUID_AND_ATTRIBUTES数组的大小以适合元素的实际数量. 从MSDN When MarshalAsAttribute.Value is set to ByValArray, the SizeConst must be set to indicate the number of elements in the arr

我正在尝试将结构从C编组到C#,不确定从哪里开始

我在C中的结构如下 /* this structure contains the xfoil output parameters vs angle of attack */ typedef struct xfoil_outputdata_struct { double *pAlfa; double *pCL; double *pCM; double *pCDi; double *pCDo; double *pCPmax;

java-如何获取JAXB中的输出(封送处理)?

我从here开始尝试了hello world示例,但在程序中(使用“ java”命令时在控制台中)看不到任何输出.我做错了吗?元帅函数的代码如下所示: public void marshal() { try { JAXBElement<GreetingListType> gl = of.createGreetings( grList ); JAXBConte

来自不受管理的世界的C#结构是否可以“实时”更新?

假设我从非托管库中获得了指向结构的IntPtr指针.在C#中,有什么方法可以从此指针获取“活动”结构,以便如果我进行修改非托管结构的调用,我的“活动”结构会立即反映出来? 我相信标准方法是使用封送处理构造数据的副本,由于各种原因(结构布局,数据类型兼容性,不驻留在.NET受管内存中)

C#联合结构编组

我正在尝试将Video4Linux集成到托管应用程序中.实际上,我已经声明了所有必需的结构和相对的ioctl.在这个问题中,我提出两个ioctl:SetFormat和GetFormat;前者运作良好(就像我实际使用的其他十个一样),而后者则使我记忆力下降. GetFormat ioctl实际上正在执行,但是一旦应用程序访问ioct

c#-无法解释的内存泄漏与Marshal.StructureToPtr

我正在开发一个涉及通过C/C++LR包装器从本机C到C#互操作的应用程序. 我在执行以下操作时遇到了麻烦,这会导致内存泄漏: MyObject data = (MyObject)Marshal.PtrToStructure(ptr, typeof(MyObject)); Marshal.StructureToPtr(data, ptr, false); (注意:我意识到我目前实际上并未在为

将结构传递给非托管代码时C#-System.AccessViolationException

我正在尝试使用来自C#的非托管API,并将头撞墙. (关于PInvoke,我是个初学者.) 头文件的相关部分如下所示: #define CTAPICALL __stdcall #ifdef __cplusplus extern "C" { #endif extern BOOL CTAPICALL ctTagReadEx(HANDLE,LPCSTR,LPSTR,DWORD,CT_TAGVALUE_ITEMS*

结构大小无法反映C#中的正确字节数

我的结构定义如下: public struct champ { public uint mem1; public byte[] mem2; public champ(int x) { mem1 = x; mem2 = new byte[15]; } } 创建对象后 champ sample = new champ (2); 应用Marshal.SizeOf(sample)返回4 4 = 8而不是4