厂家提供了两个DLL文件和JAVA程序,我自己写了一个applet和一个html文件,内容如下:请各位大侠们帮帮小弟看看,是错在哪里?谢谢!
我的目录结构是:在bin下面建了一个nhis的文件夹:在下面分别建了一个dcic和一个nhis,文件dcic32.dll,Rd600.dll,Rd600.java存放在dcic下面。myApplet.java放在nhis/nhis下面。test.html放在nhis下面。
一、厂家提供的Rd600.java:
/*
该程序的使用方法:
编译Rd600.java,注意Rd600大小写!
javac Rd600.java
即可生成Rd600.class
*/
package nhis.dcic;
public class Rd600
{
/*一个小例子函数,可以做调试用*/
public int add_s(int i)
{
return i+1;
}
public native int IC_InitComm(int port);
public native int IC_ExitComm(int icdev);
public native int IC_Status(int icdev);
public native int IC_InitType(int icdev,int ctype);
//2003-02-11
public native int IC_Down(int icdev);
//2004-12-8
public native int IC_InitCommAdvanced(int port);
public native int IC_Reset(int idComDev);
public native int IC_DevBeep(int icdev,char beeptime);
public native int IC_ReadVer(int icdev,char[] Ver);
public native int IC_ReadDevice(int idComDev,short offset,short len, char[] databuffer);
public native int IC_WriteDevice(int idComDev,short offset,short len, char[] databuffer);
public native int IC_ReadDevice_Hex(int idComDev,short offset,short len, char[] databuffer);
public native int IC_WriteDevice_Hex(int idComDev,short offset,short len, char[] databuffer);
public native int IC_Encrypt( char[] key,char[] ptrSource, short msgLen, char[] ptrDest);
public native int IC_Decrypt( char[] key,char[] ptrSource, short msgLen, char[] ptrDest);
public native int IC_Encrypt_Hex( char[] key,char[] ptrSource, short msgLen, char[] ptrDest);
public native int IC_Decrypt_Hex( char[] key,char[] ptrSource, short msgLen, char[] ptrDest);
public native int IC_InitComm_Baud(int port,int combaud);
public native int IC_SetCommTimeout(int lTime_ms,int sTime_ms);
//cpu
public native int IC_CpuReset(int idComDev, char[] rlen, char[] databuffer);
public native int IC_CpuApdu(int idComDev, char slen, char[] sendbuffer,char[] rlen, char[] databuffer);
public native int IC_CpuApduSource(int idComDev, char slen, char[] sendbuffer,char[] rlen, char[] databuffer);
public native int IC_CpuReset_Hex(int idComDev, char[] rlen, char[] databuffer);
public native int IC_CpuApdu_Hex(int idComDev, char slen, char[] sendbuffer,char[] rlen, char[] databuffer);
public native int IC_CpuApduSource_Hex(int idComDev, char slen, char[] sendbuffer,char[] rlen, char[] databuffer);
public native int IC_CpuGetProtocol(int idComDev);
public native int IC_CpuApduRespon(int idComDev, char slen, char[] sendbuffer,char[] rlen, char[] databuffer);
public native int IC_CpuSetProtocol(int idComDev,char cardp);
//4442
public native int ReadCount_SLE4442(int icdev);
public native int CheckPass_4442hex(int icdev,char[] data);
public native int ChangePass_4442hex(int icdev,char[] data);
public native int CheckPass_SLE4442(int icdev,char[] data);
public native int ChangePass_SLE4442(int icdev,char[] data);
//2004-12-8
public native int ReadPass_SLE4442(int icdev,char[] data);
public native int ReadPass_4442hex(int icdev,char[] data);
public native int ReadWithProtection_SLE4442(int icdev, short offset,short len,char[] data);
public native int WriteWithProtection_SLE4