要做一个IC一卡通的项目。
IC一卡通的系统是之前别的公司做的。
现在要2次开发。不知道如何调用这个DLL?
还有I4是什么类型?//ICC 1.0 Type Library
//Version: 1.0
ICCLib;
GUID = {59E19961-ED1A-4912-9ACC-39B88BAA3E84};
//ApICC Class
CoClass ApICC;
GUID = {14D341D4-581F-445E-A5AB-D600A04FA2A2};//IApICC Interface
Dispatch IApICC;
GUID = {DB2ECCCB-D321-4061-B10D-498AAFFCC519};
function QueryInterface(riid: ^GUID; out ppvObj: ^^VOID); stdcall;
function AddRef: UI4; stdcall;
function Release: UI4; stdcall;
function GetTypeInfoCount(out pctinfo: ^UINT); stdcall;
function GetTypeInfo(itinfo: UINT; lcid: UI4; out pptinfo: ^^VOID); stdcall;
function GetIDsOfNames(riid: ^GUID; rgszNames: ^^I1; cNames: UINT; lcid: UI4; out rgdispid: ^I4); stdcall;
function Invoke(dispidMember: I4; riid: ^GUID; lcid: UI4; wFlags: UI2; pdispparams: ^DISPPARAMS; out pvarResult: ^Variant; out pexcepinfo: ^EXCEPINFO; out puArgErr: ^UINT); stdcall;
//method Init
function Init(nComPort: INT; nBTS: INT; nAddr: INT; szPKeyA: BSTR; szPKeyB: BSTR; szCardKey: BSTR; nTraceType: INT; szLogFileName: BSTR): I4; stdcall;
//method APP_GetRetCode
function APP_GetRetCode: I4; stdcall;
//method APP_GetRetData
function APP_GetRetData(out pBuff: ^I4): I4; stdcall;
//method APP_GetRetFrame
function APP_GetRetFrame: BSTR; stdcall;
//method APP_SendCmd
function APP_SendCmd(pData: I4; nDataLen: INT): I4; stdcall;
//method WriteCard
function WriteCard(nSection: INT; nBlock: INT; szWriteData: BSTR; nTimeOut: INT; nHaltFlag: INT; nKeyType: INT): I4; stdcall;
//method Beep
function Beep: I4; stdcall;
//method ReadCard
function ReadCard(nSection: INT; nBlock: INT; out pReadBuff: ^BSTR; nTimeOut: INT; nHaltFlag: INT; nKeyType: INT): I4; stdcall;
//method SetAccessControl
function SetAccessControl(nSection: INT; szNewKeyA: BSTR; szNewKeyB: BSTR; nTimeOut: INT; nHaltFlag: INT; nKeyType: INT; dwAccess: UI4): I4; stdcall;
//method EW_Init
function EW_Init(nComPort: INT): I4; stdcall;
//method EW_WriteCard
function EW_WriteCard(pWriteData: UI4; nDataLen: UI4; nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method EW_ReadCard
function EW_ReadCard(out pReadData: ^UI4; nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method EW_PBCard
function EW_PBCard(nTimeOut: INT): I4; stdcall;
//method EW_UnPBCard
function EW_UnPBCard(nTimeOut: INT): I4; stdcall;
//method EW_RCard
function EW_RCard(nTimeOut: INT; nHaltFlag: INT): BSTR; stdcall;
//method EW_GetSN
function EW_GetSN(nTimeOut: INT): BSTR; stdcall;
//method DB_InitDB
function DB_InitDB(nRecSize: INT; nRecNbr: INT): I4; stdcall;
//method DB_Append
function DB_Append(szWriteData: BSTR; nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method DB_UpdateOneRecord
function DB_UpdateOneRecord(nRecNbr: INT; szWriteData: BSTR; nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method DB_GetOneRecord
function DB_GetOneRecord(nRecNbr: INT; nTimeOut: INT; nHaltFlag: INT): BSTR; stdcall;
//method DB_Find
function DB_Find(nOffset: INT; szFind: BSTR; nLen: INT; nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method DB_Clear
function DB_Clear(nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method DB_GetMaxRecordCount
function DB_GetMaxRecordCount: I4; stdcall;
//method EW_SetFixedData
function EW_SetFixedData(szFixData: BSTR; nDataLen: UI4; nTimeOut: INT; nHaltFlag: INT): I4; stdcall;
//method EW_GetFixedData
function EW_GetFixedData(nTimeOut: INT; nHaltFlag: INT): BSTR; stdcall;
//method EW_LoadKey
function EW_LoadKey(szKeyA: BSTR; szKeyB: BSTR; dwAccess: UI4; nTimeOut: INT; nKeyType: INT): I4; stdcall;
//method ReadCardEx
function ReadCardEx(nSection: INT; nBlock: INT; nTimeOut: INT; nHaltFlag: INT; nKeyType: INT): BSTR; stdcall;
//method GetRecordcount
function DB_GetRecordcount: I4; stdcall;
//method PublicCard
function PublicCard(RawKeyA: ^UI1; RawKeyB: ^UI1; NewKeyA: ^UI1; NewKeyB: ^UI1; Control: ^UI1; nTimeOut: INT): I4; stdcall;
//method UnPublicCard
function UnPublicCard(RawKeyA: ^UI1; RawKeyB: ^UI1; NewKeyA: ^UI1; NewKeyB: ^UI1; nTimeOut: INT): I4; stdcall;
//method PublicCardEx
function PublicCardEx(nFromSec: INT; nToSec: INT; RawKeyA: ^UI1; RawKeyB: ^UI1; NewKeyA: ^UI1; NewKeyB: ^UI1; Control: ^UI1; nTimeOut: INT): I4; stdcall;
//method UnPublicCardEx
function UnPublicCardEx(nFromSec: INT; nToSec: INT; RawKeyA: ^UI1; RawKeyB: ^UI1; NewKeyA: ^UI1; NewKeyB: ^UI1; nTimeOut: INT): I4; stdcall;
//method PublicCardEx2
function PublicCardEx2(nFromSec: INT; nToSec: INT; RawKeyA: BSTR; RawKeyB: BSTR; NewKeyA: BSTR; NewKeyB: BSTR; nTimeOut: INT): I4; stdcall;
//method UnPublicKeyEx2
function UnPublicKeyEx2(nFromSec: INT; nToSec: INT; RawKeyA: BSTR; RawKeyB: BSTR; NewKeyA: BSTR; NewKeyB: BSTR; nTimeOut: INT): I4; stdcall;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货