RtTool/Delphi7/开发档案/马国钢开发代码/ThreeFun/dllPas/dsr.pas
2025-01-08 11:55:07 +08:00

146 lines
4.7 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit dsr;
interface
uses
SysUtils, StrUtils;
function FTConSvr(hWnd: THandle;
hostAddress: PChar;
Server, User, Pswd, DTBase: PChar): Integer; stdcall; external 'FTClient.dll';
{
FTConSvr 参数说明hWnd-调用程序主窗口句柄(输入)
hostAddress-通讯服务器IP地址(输入)
Server-数据库服务器(输出)
User-数据库登录名(输出)
Pswd-数据库登录密码(输出)
DTBase-数据库名(输出)。
调用前请先为每个输出参数分配至少16字节的存储空间。
返回值:-1表示连接服务器失败(调用程序无需显示原因),调用程序关闭;
0表示本次连接成功1表示已有连接调用程序请继续运行。
}
//function PBDecode(Strin, StrOut: PAnsiChar; nInLen, nOutLen: Integer): Integer; stdcall; external 'FUTONGDLL.DLL';
function ft001():Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数Ini:
//目的:初步检查是否存在用户锁,如果有存在,提示用户插入用户锁。在程序初始化时,一定要使用这段代码
function ft002():Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数CheckKey
//目的:用狗中特定的算法验证当前的加密狗是否为授权的正确狗
//返回结果:要进行设置的值
function ft003(a :longint):longint; stdcall; external 'FUTONGDLL.DLL';
//输出函数SetValue
//目的:用来对变量进行值的设置
//参数a要进行设置的值
//返回结果:要进行设置的值
//例:对于原来如 x1 = x2; 的赋值方式,可改用 x1 = ft003(x2)的方式
function ft004(s1,s2 :PAnsiChar; len :Integer) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数CompareString
//目的:用来对两个字符串进行比较
//参数s1要比较的两个字符串之一
//参数s2要比较的两个字符串之一
//参数len要比较的长度
//返回结果如果为0两个字符串相等如果为正数s1>s2,如果为负数,s1<s2
function ft005(s1,s2 :PAnsiChar; len :Integer) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数CompareStringNoCase
//目的:用来对两个字符串进行比较(忽略大小写)
//参数s1要比较的两个字符串之一
//参数s2要比较的两个字符串之一
//参数len要比较的长度
//返回结果如果为0两个字符串相等如果为正数s1>s2,如果为负数,s1<s2
function ft006(s1,s2 :PAnsiChar) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数Strcat
//目的:用来对两个字符串进行连接
//参数s1要连接的两个字符串之一
//参数s2要连接的两个字符串之一
//返回结果:返回目的字符串的长度, s1 为连接后的字符串
//相当于 s1 = s1 + s2, s2加在s1的后面 返回。
function ft007(sd,s :PAnsiChar) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数Strcpy
//目的:对字符串进行复制
//参数sd目的字符串
//参数s:源字符串
//返回结果:返回目的字符串的长度
//相当于 sd = s
function ft008(p1,p2 :LongInt; exp :PAnsiChar) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数:Compare
//目的:用来比较两个数的大小,相当于?a>b,a<b,a=b
//参数p1要比较的第一个数
//参数p2要比较的第二个数
//参数c是大于小于或等于即">","<","="
//返回结果:
//如果返回0表示表达式为假返回1表示表达式为真
//获取设置加密狗中的参数
//对加密狗的存储区进行操作时,耗时时间较长,应注意!!!!
//加密狗中存储位置说明
//允许使用的总空间160字节其中64字节存放数据库连接信息分别是
//标识 对应参数 允许存放的最大字符串长度
// 5 IP地址 15
// 6 用户名 15
// 7 用户口令 15
// 8 DataBase 15
// 9 标识 可用来进行特别标识,如本加密狗的信息,本机硬件信息等
// 0-4 自定义 共80字节空间每个数字表示1节(16字节),递增
// 注意空间不能溢出,否则引起未知错误;
// 0-4标识使用的是连续空间当0位置的长度超过15时
// 将覆盖1号位置的存储区域。
// 使用 0 可用空间 80 - 1
// 1 64 - 1
// 2 48 - 1
//........
//[out, retval] BSTR * Value
function ft011(outstr :PAnsiChar; Ord :Integer) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数GetParm
//目的:获取加密狗指定位置的字符串
//参数outstr目的字符串
//参数Ord:标识加密狗特定地点的标志值0-9
//返回结果:返回目的字符串的长度
function ft012(var instr :PAnsiChar; Ord :Integer) :Integer; stdcall; external 'FUTONGDLL.DLL';
//输出函数SetParm
//目的:在加密狗的指定位置存放字符串
//参数instr需存放的字符串
//参数Ord:标识加密狗特定地点的标志值0-9
//返回结果:返回写入字符串的长度
//加解密函数
function ft021(var instr :PAnsiChar; outstr :PAnsiChar) :Integer; stdcall; external 'FUTONGDLL.DLL';
//说明本函数单向加密字符串instr不能逆向解密
//目的获取输入字符串instr的单向加密字符串outstr
//参数instr需加密的字符串
//参数outStr:单向加密后的密文
//返回结果:返回密文的长度
function ft022(source,dest,key :PAnsiChar; flg :Integer) :Integer; stdcall; external 'FUTONGDLL.DLL';
function ft023(source,dest,key :PAnsiChar; flg :Integer) :Integer; stdcall; external 'FUTONGDLL.DLL';
//说明:均为字符串加解密函数,可加解密
//目的用指定的Key对输入字符串source进行置换dest为置换后的字符串
//参数source需置换的字符串源文
//参数dest:置换后后的字符串密文
//参数key置换采用的key,字符串
//参数flg: 为1时进行加密为0时进行解密
//返回结果:返回置换后字符串的长度
implementation
end.