Beispiel #1
0
        private void OnCardInserted()
        {
            try {
                byte [] data;

                // Read ASN1 data from card
                ct.SelectFile();
                data = ct.Read(0, 80 - 4);

                Console.WriteLine("Card content: " + ct.Hexify(data, data.Length));

                // Decode ASN1 struct
                // ASN1 root = new ASN1( data );
                // Console.WriteLine( root );
            } catch (CTException ex) {
                Console.WriteLine(ex);
            } catch (Exception ex) {
                Console.WriteLine("ASN1 parsing exception:");
                Console.WriteLine(ex);
            }

            if (ActiveUserChanged != null)
            {
                ActiveUserChanged();
            }
        }
Beispiel #2
0
        public MainWindow() : base(Gtk.WindowType.Toplevel)
        {
            Build();

            ignoreModeSwitchEvents = false;

            // alle möglichen Screens erzeugen und einhängen
            kaufenScreen  = new KaufenScreen();
            kasseScreen   = new KasseScreen();
            bestandScreen = new BestandScreen();
            labCtrlScreen = new LabCtrlScreen();
            adminScreen   = new AdminScreen();

            // Darstellung aktualisieren
            DisplayScreen(kaufenScreen);
            UpdateStatusDisplay();
            Fullscreen();

            // Open CardTerminal
            //ActiveUser au = ActiveUser.Instance;
            //au.OpenCT(1);
            //au.ActiveUserChanged   += new ActiveUserChangedHandler( OnActiveUserChanged );
            //au.CardTerminalProblem += new CardTerminalProblemHandler( OnCardTerminalProblem );

            I2cUsb.I2cUsb i   = new I2cUsb.I2cUsb();
            byte[]        foo = i.ReadCard(0, 0x80);

            CT ct = new CT(1);

            ct.Hexify(foo, 0x80);
        }
Beispiel #3
0
        // Card Inserted // Removed
        protected void OnCardInserted()
        {
            writeButton.Sensitive = true;
            nickEntry.Sensitive   = true;
            nameEntry.Sensitive   = true;
            door0Check.Sensitive  = true;
            door1Check.Sensitive  = true;

            // Check for Empty Or Labor Card
            byte[] data;

            try {
                ct.SelectFile();
                data = ct.Read(0, 80);

                // Parse card data
                byte[] data2 = new byte[80 - 4];

                Array.Copy(data, 4, data2, 0, 80 - 4);
                Console.WriteLine("Card content: " + ct.Hexify(data2, data2.Length));
                // ASN1 root = new ASN1(data2);
                // System.Console.WriteLine( root );
                //
                // EraseDialog erase = new EraseDialog(ct,
                //     "Inserted card is not a Labor Card.\n\n" +
                //     "<b>Delete card content and format as Labor Card?</b>" );
                // erase.Run();

                System.Console.WriteLine(ct.Hexify(data, data.Length));
            } catch (CTException e) {
                System.Console.Error.WriteLine(e);
                CTError();
            }

            SetStatusText("Card inserted");
        }