ic卡读卡器软件源码 ic卡读卡器软件
摘要:编写一个可以写入ic卡的程序,同时可以读入到程序中。ic卡和USB读 可以抵扣。 国税总局《关于增值税税控系统专用设备和技术维护费用抵减增值税税额有关政策的通知》财税[2012]15号,增值税纳税...
发布日期:2020-11-21编写一个可以写入ic卡的程序,同时可以读入到程序中。
ic卡和USB读...
可以抵扣。
国税总局《关于增值税税控系统专用设备和技术维护费用抵减增值税税额有关政策的通知》财税[2012]15号,增值税纳税人2011年12月1日(含,下同)以后初次购买增值税税控系统专用设备(包括分开票机)支付的费用,可凭购买增值税税控系统专用设备取得的增值税专用发票,在增值税应纳税额中全额抵减(抵减额为价税合计额),不足抵减的可结转下期继续抵减。
增值税纳税人非初次购买增值税税控系统专用设备支付的费用,由其自行负担,不得在增值税应纳税额中抵减。
增值税税控系统包括:增值税防伪税控系统、货物运输业增值税专用发票税控系统、机动车销售统一发票税控系统和公路、内河货物运输业发票税控系统。
增值税防伪税控系统的专用设备包括金税卡、IC卡、读卡器或金税盘和报税盘;货物运输业增值税专用发票税控系统专用设备包括税控盘和报税盘;机动车销售统一发票税控系统和公路、内河货物运输业发票税控系统专用设备包括税控盘和传输盘。
p
ic卡如何接入软件?
IC卡WINDOWS驱动程序手册一 、IC卡驱动程序是一32位 Windows应用程序调用的动态链接库,文件名为IC32.DLL。
二、 IC32.DLL提供的函数: 注意:以下函数名的大小写必须严格区分,否则无法调用、通用函数: 1.IC_Status() 返回读写器状态 2.IC_ErrMsg() 将错误码转换为错误信息 3.IC_InitComm() 打开串口 4.IC_ExitComm() 关闭串口 5.IC_InitType () 设置要读卡的类型 6.IC_Read () 读IC卡的内容 7.IC_Write () 写内容到IC卡 8.IC_Erase () 对IC卡擦除操作(写FF) 9.IC_Read_Float() 读IC卡存储的浮点数 10.IC_Write_Float() 写浮点数到IC卡、西门子4432/4442卡专用函数: 1.IC_ReadProtection () 读S4432/S4442卡的保护位 2.IC_WriteProtection () 写S4432/S4442卡的保护位 3.IC_ReadCount_SLE4442 () 读S4442卡的错误计数器 4.IC_CheckPass_SLE4442 () 效验S4442卡的密码 5.IC_ChangePass_SLE4442 () 改变S4442卡的密码、西门子4418/4428卡专用函数: 1.IC_ReadWithProtection () 带保护位读S4418/S4428卡 2.IC_WriteWithProtection () 带保护位写S4418/S4428卡 3.IC_ReadCount_SLE4428 () 读S4428卡的错误计数器 4.IC_CheckPass_SLE4428 () 效验S4428卡的密码 5.IC_ChangePass_SLE4428 () 改变S4428卡的密码、ATMEL AT88SC101/102/103卡专用函数: 1. IC_CheckPass_102() 效验ATMEL101/102/103卡的系统密码 2. IC_ChangePass_102() 改变ATMEL101/102/103卡的密码 3. IC_ReadCount_102 () 读ATMEL101/102/103卡的错误计数器 4. IC_Erase_102() 对ATMEL101/102/103卡的擦除操作 5. IC_CheckAZPass_102() 效验ATMEL102卡的应用区密码 6. IC_ChangeAZPass_102() 改变ATMEL102卡的应用区密码 7. IC_Fuse_102 () 烧断ATMEL102卡的熔丝、西门子4406卡(电话卡)专用函数: 1. IC_RValue () 读S4406卡的值 2. IC_DEValue () 减S4406卡的值、ATMEL AT88SC1604卡专用函数: 1. IC_CheckPass_1604() 效验AT88SC1604卡的系统密码 2. IC_ChangePass_1604() 改变AT88SC1604卡的密码 3. IC_ReadCount_1604 () 读AT88SC1604卡的错误计数器 4. IC_Fuse_1604 () 烧断AT88SC1604卡的熔丝、ATMEL AT24C系列卡(非加密卡)专用函数: 1. IC_Write24() 写AT24C卡(用法见IC_Write()函数)三 函数说明 、通用函数: 1. __int16 IC_Status(HANDLE ICDev) 说明:返回当前状态* 调用:HANDLE ICDev ---- InitComm返回的设备描述符 返回:=0 ErrMsg的有效长度 举例:IC_ErrMsg(0xee,errmsg) 将0XEE表示的错误信息存入errmsg指定的数据缓冲区。
3. __int16 InitComm(__int16 Port) 说明:打开通讯设备 调用:__int16 Port ---- 通讯口号,整数0,1,2,3 返回:=0 通讯设备标识符 举例:ICDev=InitComm(0) 打开串口一。
4. __int16 ExitComm(HANDLE ICDev) 说明:关闭通讯设备 调用:HANDLE ICDev ---- InitComm返回的设备描述符 返回:=0 通讯设备正常关闭 举例:ExitComm(ICDev) 关闭ICDev指定的串口。
5. __int16 IC_InitType (HANDLE ICDev,__int16 TypeNo) 说明:设置卡类型 调用:HANDLE ICDev ---- InitComm返回的设备描述符 __int16 TypeNo ---- 卡类型号 返回:=0 操作正确 举例:IC_InitType(HANDLE ICDev,0x20) 设置卡类型为ATMEL102型 6. __int16 IC_Read (HANDLE ICDev,__int16 Offset,__int16 len, unsigned char * DataBuffer) 说明:读取IC卡数据 调用:HANDLE ICDev ---- InitComm返回的设备描述符 __int16 Offset ---- 读数据IC卡起始地址 __int16 Len ---- 数据长度 unsigned char * Databuffer ---- 存放数据的缓冲区 返回:=0 有效数据长度。
表示DataBuffer数据的有效字节数。
举例:IC_Read(ICDev,16,64,DataBuffer) 读取16至79的数据到DataBuffer,正确返回64。
7 __int16 IC_Write (HANDLE ICDev, __int16 Offset,__int16 length, unsigned char* DataBuffer) 说明:写数据到IC卡 调用:HANDLE ICDev ---- InitComm返回的设备描述符 __int16 Offset ---- 写IC卡起始地址 __int16 length ---- 数据的长度 unsigned char * Databuffer ---- 即将写入IC卡的数据 并存放返回数据 返回:=0 写入数据长度 举例:IC_Write(ICDev,32,14,"IcCard Message") 将IcCard Message写入从32地址开始的数据区。
8. __int16 IC_Erase(HANDLE ICDev,__int16 Offset,__int16 len) 说明:擦除数据,即写十六进制的FF、十进制的255。
调用:HANDLE ICDev ---- InitComm返回的设备描述符 __int16 Offset ---- 擦除的起始地址 __int16 len ---- 擦除字节数 返回:=0 写入数据长度 举例:IC_Erase(ICDev,24,32) 擦除从绝对偏移址开始的32个字节。
9. __int16 IC_Read_Float(HANDLE ICDev,__int16 Offset,float& fdata) 说明:读一个浮点数,并返回到fdata中。
调用: HANDLE ICDev ---- InitComm返回的设备描述符 __int16 Offset ---- 要读的起始地址 float& fdata ----返回浮点数的地址 返回:=0 读入数据长度(应该为4) 举例:IC_Read_Float(ICDev,24,&...