Ipak sam uspeo da pročitam. Evo dela strukture, ovako je uspelo:
Code:
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct LicniPodaci
{
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=14)]
public string personalNumber;
public int personalNumberSize;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 60)]
public string surname;
public int surnameSize;
Ovo su deklaracije funkcija:
Code:
[DllImport("CelikApi.dll")]
public static extern int EidStartup(int nApiVersion);
[DllImport("CelikApi.dll",CharSet = CharSet.Auto)] // nije htelo ni kada stoji ANSI, niti kada ne stoji ništa
public static extern int EidReadFixedPersonalData([Out] out LicniPodaci pData);
[DllImport("CelikApi.dll")]
public static extern int EidBeginRead([MarshalAs(UnmanagedType.LPTStr)] string szReader);
[DllImport("CelikApi.dll")]
public static extern int EidEndRead();
[DllImport("CelikApi.dll")]
public static extern int EidCleanup();
Sada imam problem sa ćirilicom: Ime i prezime mi je na ćirilici (to se loše prikaže), dok je ostalo na latinici (a to se dobro prikaže).
Probao sam sa Encode.Convert, nekoliko kombinacija, ali nikad ne dobijam ono što treba.
Recimo ime mi prikaže ovako: Đ’Đ›ĐĐ”ĐĐśĐĐ
Kao što se gore u kodu vidi, morao sam da stavim da mi je JMBG dužina 14 a ne 13, jer nije hteo da mi pročita poslednju cifru, a tako isto i za datum. Ne znam ima li ovo veze sa ćirilicom, tj. da li postoji međusobni uticaj dužina polja u strukturi?
[Ovu poruku je menjao vbvlada dana 22.11.2010. u 14:03 GMT+1]
A vi,kako 'te?