我需要在Delphi XE中访问来自Delphi Prism类库的“Auth”方法:
namespace ClassLibrary1;
interface
uses
System,
System.IO,
System.Security.Cryptography,
System.Runtime.InteropServices,
System.Text;
type
ConsoleApp = public class
private
class method hashMe(input: string): string;
class method Encrypt(clearText: string; Password: string; Salt: array of byte; iteration: Integer): string;
class method Encrypt(clearData: array of byte; Key: array of byte; IV: array of byte): array of byte;
class method Encrypt(clearData: array of byte; Password: string; Salt: array of byte; iteration: integer): array of byte;
class method Decrypt(cipherText: string; Password: string; Salt: array of byte; iterations: Integer): string;
class method Decrypt(cipherData: array of byte; Password: string; Salt: array of byte; iterations: integer): array of byte;
class method Decrypt(cipherData: array of byte; Key: array of byte; IV: array of byte): array of byte;
protected
public
[UnmanagedExport('Auth')]
class method Auth(userName: String; userPassword: String): String;
end;
implementation
[...]
这很容易使用CrossTalk实现,但CrossTalk非常昂贵,而且这段代码是为了一个宠物项目。有没有更简单的方法来做到这一点呢?
谢谢提前回答。
function Auth(userName: PAnsiChar; userPassword: PAnsiChar):PAnsiChar; stdcall; external 'ClassLibrary1.dll';
。 - RRUZ