static void Main(string[] args) { // Program setup if (1 != args.Length) { Console.WriteLine(String.Join("\r\n", new string[] { "Please provide reader URL, such as:", "tmr:///com4", "tmr://my-reader.example.com", })); Environment.Exit(1); } try { // Create Reader object, connecting to physical device. // Wrap reader in a "using" block to get automatic // reader shutdown (using IDisposable interface). using (Reader r = Reader.Create(args[0])) { //Uncomment this line to add default transport listener. //r.Transport += r.SimpleTransportListener; r.Connect(); if (Reader.Region.UNSPEC == (Reader.Region)r.ParamGet("/reader/region/id")) { Reader.Region[] supportedRegions = (Reader.Region[])r.ParamGet("/reader/region/supportedRegions"); if (supportedRegions.Length < 1) { throw new FAULT_INVALID_REGION_Exception(); } else { r.ParamSet("/reader/region/id", supportedRegions[0]); } } Gen2.TagData epc = new Gen2.TagData(new byte[] { 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0x01, 0x23, 0x45, 0x67, }); Gen2.WriteTag tagop = new Gen2.WriteTag(epc); r.ExecuteTagOp(tagop, null); } } catch (ReaderException re) { Console.WriteLine("Error: " + re.Message); } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } }
private void PerformWriteOperation() { Gen2.TagData epc = new Gen2.TagData(new byte[] { 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0x01, 0x23, 0x45, 0x67, }); Console.WriteLine("Write on epc mem: " + epc.EpcString); Gen2.WriteTag tagop = new Gen2.WriteTag(epc); reader.ExecuteTagOp(tagop, null); Console.WriteLine(); ushort[] data = new ushort[] { 0x1234, 0x5678 }; Console.WriteLine("Write on reserved mem: " + ByteFormat.ToHex(data)); Gen2.BlockWrite blockwrite = new Gen2.BlockWrite(Gen2.Bank.RESERVED, 0, data); reader.ExecuteTagOp(blockwrite, null); Console.WriteLine(); data = null; data = new ushort[] { 0xFFF1, 0x1122 }; Console.WriteLine("Write on user mem: " + ByteFormat.ToHex(data)); blockwrite = new Gen2.BlockWrite(Gen2.Bank.USER, 0, data); reader.ExecuteTagOp(blockwrite, null); Console.WriteLine(); }