Lecture carte identité (Belge)
- microdevweb
- Messages : 1802
- Inscription : mer. 29/juin/2011 14:11
- Localisation : Belgique
Lecture carte identité (Belge)
Bonjour à tous,
Et bien voila je doit lire les données d'un carte d'identité Belge (normalement en Windev)
Nom
Prenom
Adresse
N° National
Photo
Si quelqu'un a déjà fait ce genre de chose merci.
Et bien voila je doit lire les données d'un carte d'identité Belge (normalement en Windev)
Nom
Prenom
Adresse
N° National
Photo
Si quelqu'un a déjà fait ce genre de chose merci.
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Work at Centre Spatial de Liège
- Kwai chang caine
- Messages : 6989
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Lecture carte identité (Belge)
Je crois que opencv embarque un ocr, il y a peut être quelque chose à creuser de ce côté là
http://www.purebasic.fr/english/viewtop ... 02#p431302

http://www.purebasic.fr/english/viewtop ... 02#p431302
- microdevweb
- Messages : 1802
- Inscription : mer. 29/juin/2011 14:11
- Localisation : Belgique
Re: Lecture carte identité (Belge)
Bonjour Kwai chang caine,
J'ai trouvé une dll je teste
J'ai trouvé une dll je teste
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Work at Centre Spatial de Liège
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Lecture carte identité (Belge)
@Kwai chang caine: Microdev cherche à lire des informations stockées sur une CNI Belge. Pour Cela il va plutot utiliser swelio une dll dédié à ce type de carte
http://delphi32.blogspot.fr/2013/12/int ... y-for.html
http://delphi32.blogspot.fr/2013/12/int ... y-for.html
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- Kwai chang caine
- Messages : 6989
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Lecture carte identité (Belge)
Ah!!! je croyais qu'il voulait la lire "visuellement" 
C'est une histoire de lecture de puce comme nos permis de conduire, un truc comme ça ?

C'est une histoire de lecture de puce comme nos permis de conduire, un truc comme ça ?
- microdevweb
- Messages : 1802
- Inscription : mer. 29/juin/2011 14:11
- Localisation : Belgique
Re: Lecture carte identité (Belge)
Bon voila tout fonctionne (en windev)... Pour Pb la je sais pas encore comment faire, mais de toute façon je devais le faire en Windev donc youpiiiiiiii
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Work at Centre Spatial de Liège
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Lecture carte identité (Belge)
Content que ton souci soit réglé Microdev et merde pour ton rdv 

Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- microdevweb
- Messages : 1802
- Inscription : mer. 29/juin/2011 14:11
- Localisation : Belgique
Re: Lecture carte identité (Belge)
Bon j'ai essayer de faire la même chose en Pb, et la tout fonctionne sauf l'image
La dll il faut prendre swelio https://onedrive.live.com/?id=B4508367F ... ion=locate
Voici le code
La dll il faut prendre swelio https://onedrive.live.com/?id=B4508367F ... ion=locate
Voici le code
Code : Tout sélectionner
Global gDllName$="Swelio32.dll"
If OpenLibrary(0,gDllName$)=0
MessageRequester("Erreur Dll","Canot open "+gDllName$)
End
EndIf
If Not CallFunction(0,"StartEngine")
MessageRequester("Erreur Dll","Canot run engine "+gDllName$)
End
EndIf
If Not CallFunction(0,"IsCardPresentEx",0)
MessageRequester("Erreur carte","Aucune carte d'indentité n'a été identifiée"+gDllName$)
End
EndIf
Structure Identity
CardNumber.s{13}
ChipNumber.s{33}
BeginValidity.s{11}
EndNalidity.s{11}
Contry.s{81}
NationalNumber.s{12}
Name.s{111}
FirstNameOne.s{96}
FistNameTwice.s{4}
Nationality.s{86}
BirthLocation.s{81}
BirthDate.s{13}
Sex.s{2}
NobleCondition.s{51}
DocumentType.i
WhiteCane.b
YellowCane.b
ExtendMinority.b
EndStructure
Structure Adress
Street.s{81}
zipCode.s{5}
contry.s{68}
EndStructure
Structure Picture
Picture.s{4097}
LenPicture.q
EndStructure
Global myIdentity.Identity,myAdress.Adress,myPicture.Picture
;Global *myPicture
If Not CallCFunction(0,"StartEngine")
MessageRequester("Erreur lecture carte","Impossible de démaré la Dll")
End
EndIf
If Not CallCFunction(0,"IsCardPresent",0)
MessageRequester("Erreur lecture carte","Aucune carte n'a été détéctée")
End
EndIf
If Not CallFunction(0,"ReadIdentityA",@myIdentity)
MessageRequester("Erreur lecture carte","Impossible de lire l'identité")
End
EndIf
If Not CallFunction(0,"ReadAddressA",@myAdress)
MessageRequester("Erreur lecture carte","Impossible de lire l'adresse")
End
EndIf
If Not CallFunction(0,"ReadPhotoEx",0,@myPicture)
MessageRequester("Erreur lecture carte","Impossible de lire la photo")
End
EndIf
CallFunction(0,"StopEngine")
CloseLibrary(0)
Debug myPicture\LenPicture ; Renvoie 51539607552
Debug myPicture\Picture ; Renvoie ÿØÿà
Flag=#PB_Window_SystemMenu|#PB_Window_ScreenCentered
LoadFont(0,"Arial",12,#PB_Font_HighQuality)
Debug CatchImage(0,@myPicture\Picture)
OpenWindow(0,0,0,800,600,"Lecture carte d'indentité",Flag)
M=10
W=(WindowWidth(0)-(M*3))/4
H=30
X=M
Y=M
TextGadget(0,X,Y,W,H,"Nom :")
X+W
StringGadget(1,X,Y,W,H,myIdentity\Name,#PB_String_ReadOnly)
X+W+M
TextGadget(2,X,Y,W,H,"Prénom :")
X+W
StringGadget(3,X,Y,W,H,myIdentity\FirstNameOne,#PB_String_ReadOnly)
X=M
Y+H+M
TextGadget(4,X,Y,W,H,"Numéro national :")
X+W
StringGadget(5,X,Y,W,H,myIdentity\NationalNumber,#PB_String_ReadOnly)
X+W+M
TextGadget(6,X,Y,W,H,"Date de naissance :")
X+W
Date$=Right(myIdentity\BirthDate,2)+"/"+Mid(myIdentity\BirthDate,5,2)+"/"+Left(myIdentity\BirthDate,4)
StringGadget(7,X,Y,W,H,Date$,#PB_String_ReadOnly)
Wl=(WindowWidth(0)-(M*2))-W
X=M
Y+H+M
TextGadget(8,X,Y,W,H,"Adresse :")
X+W
StringGadget(9,X,Y,Wl,H,myAdress\Street,#PB_String_ReadOnly)
X=M
Y+H+M
TextGadget(10,X,Y,W,H,"Code postal :")
X+W
StringGadget(11,X,Y,W,H,myAdress\zipCode,#PB_String_ReadOnly)
X+W+M
TextGadget(12,X,Y,W,H,"Localité :")
X+W
StringGadget(13,X,Y,W,H,myAdress\contry,#PB_String_ReadOnly)
Y+H+M
; ImageGadget(14,X,Y,256,256,ImageID(*myPicture))
For N=0 To 13
SetGadgetFont(N,FontID(0))
Next
Repeat
Event=WaitWindowEvent()
Until Event=#PB_Event_CloseWindow
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Work at Centre Spatial de Liège