PCSC4Java
0.2
Library PCSC for Java language.
|
00001 /******************************************************** 00002 * Copyright (c) 2011, REDBILLED All Rights Reserved 00003 * 00004 * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF REDBILLED 00005 * The copyright notice above does not evidence any actual 00006 * or intended publication of such source code. 00007 * ======================================================= 00008 * JNI for the using of PCSC 00009 * ======================================================= 00010 * File : PCSC_Defines.h 00011 * 00012 * 00013 * UPDATE HISTORY 00014 *-------------------------------------------------------- 00015 *Version | Author | Date | 00016 *-------------------------------------------------------- 00017 * 1.0 ML 22/06/2011 00018 **********************************************************/ 00019 00020 #ifndef __PCSC_Defines__H__ 00021 #define __PCSC_Defines__H__ 00022 00023 #if(defined WIN32) || (defined WIN64) 00024 00025 #pragma once 00026 00027 // Modifiez les définitions suivantes si vous devez cibler une plate-forme avant celles spécifiées ci-dessous. 00028 // Reportez-vous à MSDN pour obtenir les dernières informations sur les valeurs correspondantes pour les différentes plates-formes. 00029 #ifndef WINVER // Autorise l'utilisation des fonctionnalités spécifiques à Windows XP ou version ultérieure. 00030 #define WINVER 0x0501 // Attribuez la valeur appropriée à cet élément pour cibler d'autres versions de Windows. 00031 #endif 00032 00033 #ifndef _WIN32_WINNT // Autorise l'utilisation des fonctionnalités spécifiques à Windows XP ou version ultérieure. 00034 #define _WIN32_WINNT 0x0501 // Attribuez la valeur appropriée à cet élément pour cibler d'autres versions de Windows. 00035 #endif 00036 00037 #ifndef _WIN32_WINDOWS // Autorise l'utilisation des fonctionnalités spécifiques à Windows 98 ou version ultérieure. 00038 #define _WIN32_WINDOWS 0x0410 // Attribuez la valeur appropriée à cet élément pour cibler Windows Me ou version ultérieure. 00039 #endif 00040 00041 #ifndef _WIN32_IE // Autorise l'utilisation des fonctionnalités spécifiques à Internet Explorer 6.0 ou version ultérieure. 00042 #define _WIN32_IE 0x0600 // Attribuez la valeur appropriée à cet élément pour cibler d'autres versions d'Internet Explorer. 00043 #endif 00044 00045 #define WIN32_LEAN_AND_MEAN // Exclure les en-têtes Windows rarement utilisés 00046 // Fichiers d'en-tête Windows : 00047 #include <windows.h> 00048 00049 #include <winscard.h> 00050 00051 #endif 00052 00053 #include <stdio.h> 00054 #include <stdlib.h> 00055 #include <time.h> 00056 #include "jni.h" 00057 00058 #define BUFFER_MAX_SZ 300 00059 #define NB_MAX_READERS_SUPPORTED 255 00060 #define READER_NAME_SZ 200 00061 #define ATR_LENGTH 32 00062 #define PCSC_EXCEPTION_CLASS "fr/redbilled/security/pcscforjava/PCSCException" 00063 00064 BOOL g_bPnP = true; 00065 SCARDCONTEXT g_lContextIdForPnPManagement = 0; 00066 long g_lEventOccured = 0; 00067 00068 void printInDebug(const char * format, ...); 00069 void launchException(JNIEnv * env, long lException); 00070 00071 #endif