delphi-CharSet = CharSet.Ansi

问题描述

CharSet = CharSet.Ansi

Delphi 7.0的PChar兼容Ansi吧,还需要什么地方更改,怎么样才能在C#中进行调用呢?

解决方案

在C#中用StringBuilder接受看看,PChar相当于字符串的指针。

解决方案二:

保持charset一致,pchar就是指针,涉及指针的,在C#中一般使用stringbuilder

时间: 2024-10-11 20:10:26

delphi-CharSet = CharSet.Ansi的相关文章

StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi, Pack:=1) 中pack的理解

_ Private Structure WAVE_EX .... ....    End Structure StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi )时取到 Marshal.SizeOf的结构会比实际大些,加入我上面的结构实际是46,那么他会是48个. 把pack 改为2就,那么就不会出现这种情况,但是结构里如果有byte这样的成员的话,应该实际3个字节,但是返回4个. 所以,系统默认的pack应该是4   上次碰到没

utf-8-如何把utf_8 声明为Charset对象

问题描述 如何把utf_8 声明为Charset对象 我需要一个Charset对象,我又希望这个charset是utf-8的,请高手指教! 解决方案 Charset charset = Charset.forName("UTF-8") 解决方案二: ageEncoding="utf-8"%和charset="utf-8"Response.Charset="UTF-8"

我的Java开发学习之旅------>Java NIO 报java.nio.charset.MalformedInputException: Input length = 1异常

今天在使用Java NIO的Channel和Buffer进行文件操作时候,报了java.nio.charset.MalformedInputException: Input length = 1异常,具体如下: java.nio.charset.MalformedInputException: Input length = 1 at java.nio.charset.CoderResult.throwException(CoderResult.java:260) at java.nio.char

asp.net webservice调用Delphi的dll

问题描述 asp.net webservice调用Delphi的dll asp.net webservice调用Delphi的dll,执行方法Init(连接Oracle数据库),报错连接超时. 建立个winform程序,调用Init函数可通过,但webservice就是不行. 我是发布在服务器server 2003 32位, IIS发布,发程序发布的文件扔到IIS根目录,dll文件在bin目录下. 调用的这个dll文件又调用了另一个dll,2个dll文件都扔到bin目录下了.不知道是什么原因,w

C# 调用DELPHI 结构体指针数组出现的乱码

问题描述 delphi:TAirc=recordID:array[0..64]ofChar;MC:array[0..128]ofChar;LMAC:Single;XMAC:Single;WTNOL:Single;WTMAX:Single;WTMIN:Single;stdFWD:Single;stdAFT:Single;stdLFT:Single;stdRIT:Single;end;PAirc=^TArrAirc;functionGetAirc(varS:PAirc;aPath:PChar):In

winform-急,求大神帮帮忙,关于C#调用delphi的dll文件抛错问题

问题描述 急,求大神帮帮忙,关于C#调用delphi的dll文件抛错问题 [DllImport(_fileDll EntryPoint = ""JX102R_Read_Card"" CharSet = CharSet.Ansi CallingConvention = CallingConvention.StdCall)] public static extern int JX102R_Read_Card(ref int ReaderNo ref StringBuil

C#调用Delphi写的dll的问题。

问题描述 有这样一个Delphi原型接口.声明如下TArrayOfByte=arrayofByte;functionGetTemplateFromFile(imgPath:PAnsiChar;varATemplate:TArrayOfByte):Integer;stdcall;ATemplate这个参数是一组Byte数组,但这数组的大小是在接口即GetTemplateFromFile函数里分配的.通常情况下返回4096个字节.但我引用C#调用时,发现只返回一个字节.C#声明方式如下.[DllIm

Oralce 调用Delphi写DLL去访问C# WebService的问题

web|访问|问题 我想从Oracle的存储过程通过一个外部dll(Delphi编写)去访问C#写的WebService时,出现了"尚未调用 CoInitialize"不知道是怎么回事,望各位指点一二.1.我在Oracle里写了一个函数AddNumber如下:CREATE OR REPLACE FUNCTION "MY"."ADD" (a in BINARY_INTEGER,b in BINARY_INTEGER) RETURN BINARY_I

【分享】Android Studio专用文件转换工具:把ANSI文件批量另存为无BOM的UTF-8文件

[分享]Android Studio专用文件转换工具:把ANSI文件批量另存为无BOM的UTF-8文件 在Andoird Studio下编译java文件时,经常会出现像下面的错误: Error:(29, 43) 閿欒: 缂栫爜UTF-8鐨勪笉鍙槧灏勫瓧绗? 在这里,分享一个工具:ANSI文件批量另存为无BOM的UTF-8文件: 把下面代码用记事本存为AndroidStudioJava编码.vbs,双击即可使用: on error resume next Set WshShell=WScrip