Private Declare Function InitIDCard Lib "IDCard.dll" (ByRef lpUserId As Byte, ByVal nType As Integer, ByVal lpDirectory As String) As Integer
'加载识别核心
Private Sub BtnLoadKernal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnLoadKernal.Click
If m_bIsInitSuccess = True Then
ResultTextBox.Text = "识别核心已成功加载"
Exit Sub
End If
Dim nRet As Integer
Dim strTmp As Byte()
strTmp = System.Text.Encoding.Unicode.GetBytes(UserID.Text)
'初始化识别核心 nRet = InitIDCard(strTmp(0), 0, vbNullString)
If nRet = 0 Then
ResultTextBox.Text = "加载识别核心成功"
m_bIsInitSuccess = True
Else
ResultTextBox.Text = "初始化识别核心失败" & Str(nRet) m_bIsInitSuccess = False
End If
End Sub
'加载识别核心
Private Sub BtnLoadKernal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnLoadKernal.Click
If m_bIsInitSuccess = True Then
ResultTextBox.Text = "识别核心已成功加载"
Exit Sub
End If
Dim nRet As Integer
Dim strTmp As Byte()
strTmp = System.Text.Encoding.Unicode.GetBytes(UserID.Text)
'初始化识别核心 nRet = InitIDCard(strTmp(0), 0, vbNullString)
If nRet = 0 Then
ResultTextBox.Text = "加载识别核心成功"
m_bIsInitSuccess = True
Else
ResultTextBox.Text = "初始化识别核心失败" & Str(nRet) m_bIsInitSuccess = False
End If
End Sub
function InitIDCard(var lpUserId:byte;nType:integer;lpDirectory:pchar):integer
>>这个是关键性一句,如何转为delphi
var
Len: integer;
begin
Len := Length(Str) + 1;
SetLength(Result, Len);
Len := MultiByteToWideChar(CodePage, 0, PChar(Str), -1, PWideChar(Result), Len);
SetLength(Result, Len - 1); //end is #0
end;
function UnicodeDecode(Str: WideString; CodePage: integer): string;
var
Len: integer;
begin
Len := Length(Str) * 2 + 1; //one for #0
SetLength(Result, Len);
Len := WideCharToMultiByte(CodePage, 0, PWideChar(Str), -1, PChar(Result), Len, nil, nil);
SetLength(Result, Len - 1);
end
看这个行吗?
http://www.hotelb2c.com/Samples.rar这家公司的东西就是没delphi