有一个别人用delphi编写的dll:
http://yunpan.cn/cuztvNHZWgRVQ 访问密码 a676
说明如下:
各访问函数的参数表中,valuename为请求的项目名,para为请求的相关参数定义,均为以字节0结束的C字符串。请根据应用程序的开发语言自行在适当的位置写入外部函数定义语句,以下为VB下的说明语句(位于通用代码区):
Private Declare Function A_File_Int Lib "reada.dll" (ByVal valuename As String, ByVal para As String) As Integer
Private Declare Function A_File_Long Lib "reada.dll" (ByVal valuename As String, ByVal para As String) As Long
Private Declare Function A_File_Single Lib "reada.dll" (ByVal valuename As string, ByVal para As String) As Single
Private Declare Function A_File_Str Lib "reada.dll" (ByVal valuename As String, ByVal para As String) As String
Private Declare Function A_File_Value Lib "reada.dll" (ByVal valuename As String, ByVal para As String) As Single
Private Declare Function A_File_S Lib "reada.dll" (ByVal valuename As String, ByVal para As String) As String
Private Declare Function A_File_S0 Lib "reada.dll" (ByVal valuename As String, ByVal para As String) As String
以下为Delphi下的说明语句(位于全局变量区,前面的Var后,紧随主窗体类定义语句):
Function A_File_Int(valuename,para:pchar):smallint; stdcall; external 'ReadA.dll';
Function A_File_Long(valuename,para:pchar):longint; stdcall; external 'ReadA.dll';
Function A_File_Single(valuename,para:pchar):single; stdcall; external 'ReadA.dll';
Function A_File_Str(valuename,para:pchar):pchar; stdcall; external 'ReadA.dll';
Function A_File_Value(valuename,para:pchar):single; stdcall; external 'ReadA.dll';
Function A_File_S (valuename,para:pchar):pchar; stdcall; external 'ReadA.dll';
Function A_File_S0(valuename,para:pchar):pchar; stdcall; external 'ReadA.dll';
我曾在11年的时候,用C#访问成功过。
最近再次用到这个。怎么都成功不了。
有没有大神会delphi和.net的,帮我看下,感谢。
也可以用delphi7什么的,编写成必然可以成功用.net访问的dll也可以。
感谢,感谢。
我不是大神,但是两样都会。看你描述没看明白啊,既然以前访问成功过,现在什么问题呢
就是现在,一访问就错。
之前用C#照着VB那样,用C#语法写的,成功了。
你能否帮我用delphi,这样访问下:string s =A_File_Str(“”,“”);
看看能不能返回,如果能返回,就是正确的。报错就是我现在遇到的情况。
用C++ 是 CString 类型,C# 没试过