<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Microsoft BizTalk RFID with KalyanaJ</title><link>http://blogs.msdn.com/b/kalyanaj/</link><description>The Ins and outs of what you can do with BizTalk RFID...</description><dc:language>en</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>BizTalk RFID Setup: Troubleshooting</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2009/01/12/biztalk-rfid-setup-troubleshooting.aspx</link><pubDate>Mon, 12 Jan 2009 04:06:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9306616</guid><dc:creator>kalyanaj</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=9306616</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2009/01/12/biztalk-rfid-setup-troubleshooting.aspx#comments</comments><description>&lt;p&gt;We have recently heard one of our customers run into the following issue during BizTalk RFID installation:&lt;/p&gt; &lt;p&gt;------- &lt;p&gt;Error 1957. Failed to set permissions for user domain\account on the RFIDSTORE database on SQL Server FOO.&amp;nbsp; One reason for this could be that we couldn't establish a connection to the SQL database. Please make sure you are using a domain account for the RFID Service account if you specified a remote SQL Server. See logs for more details. &lt;p&gt;------- &lt;p&gt;In this particular scenario, what was happening was that the account with which Setup was running was the same as the one specified for the RFID Service account credentials.&amp;nbsp; While this may not be a very common scenario (as typically Setup is done by an account in the local administrators group and the default for the RFID Service account is .\RfidSvcAcc), I do see the possibility of somebody requiring this kind of a configuration.&amp;nbsp; However, BizTalk RFID Setup doesn't currently support such a configuration, so I would strongly recommend ensuring during Setup that these two accounts are different.&amp;nbsp; &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9306616" width="1" height="1"&gt;</description></item><item><title>BizTalk RFID Forums</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2008/12/19/biztalk-rfid-forums.aspx</link><pubDate>Fri, 19 Dec 2008 05:36:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9239745</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=9239745</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2008/12/19/biztalk-rfid-forums.aspx#comments</comments><description>&lt;p&gt;The BizTalk RFID MSDN forums has moved to the following new location: &lt;a title="http://social.msdn.microsoft.com/Forums/en-US/biztalkrfid/threads/" href="http://social.msdn.microsoft.com/Forums/en-US/biztalkrfid/threads/"&gt;http://social.msdn.microsoft.com/Forums/en-US/biztalkrfid/threads/&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;This supports improved filtering/tagging, improved posting experience (dynamic posting, thread preview, real time updates), Live alerts and RSS support.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/kalyanaj/WindowsLiveWriter/BizTalkRFIDForums_71F4/forums_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; border-top: 0px; border-right: 0px" border="0" alt="forums" src="http://blogs.msdn.com/blogfiles/kalyanaj/WindowsLiveWriter/BizTalkRFIDForums_71F4/forums_thumb.jpg" width="239" height="200"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Do check out the new forums, and fire away your questions/feedback!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9239745" width="1" height="1"&gt;</description></item><item><title>BizTalk RFID Mobile is here!</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2008/12/11/biztalk-rfid-mobile-is-here.aspx</link><pubDate>Thu, 11 Dec 2008 05:20:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9194285</guid><dc:creator>kalyanaj</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=9194285</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2008/12/11/biztalk-rfid-mobile-is-here.aspx#comments</comments><description>&lt;p&gt;&lt;font size="2" face="Verdana"&gt;I am very excited about the launch of BizTalk RFID Mobile and BizTalk RFID Standards Pack this month!&amp;nbsp; &lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font size="2" face="Verdana"&gt;BizTalk RFID Mobile is the RFID platform for Windows CE/Mobile: our goal is to make it as easy as possible to build a rich RFID/barcode enabled &lt;em&gt;mobile &lt;/em&gt;application. In addition to enabling the human workflow scenarios on the mobile device, it also provides store-and-forward capabilities to publish data to a BizTalk RFID Server.&amp;nbsp; You can find the comprehensive details about the platform &lt;/font&gt;&lt;a target="_blank" href="http://www.microsoft.com/biztalk/en/us/rfid-mobile.aspx"&gt;&lt;font size="2" face="Verdana"&gt;here&lt;/font&gt;&lt;/a&gt;&lt;font size="2" face="Verdana"&gt;.&amp;nbsp; Of course, you will need the corresponding device providers for the mobile device, and you can find those links &lt;/font&gt;&lt;a target="_blank" href="http://blogs.msdn.com/sudhir/archive/2008/12/08/biztalk-rfid-mobile-providers-available.aspx"&gt;&lt;font size="2" face="Verdana"&gt;here&lt;/font&gt;&lt;/a&gt;&lt;font size="2" face="Verdana"&gt;.&amp;nbsp; If you have any feedback, please do post on the &lt;/font&gt;&lt;a target="_blank" href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1474&amp;amp;SiteID=1"&gt;&lt;font size="2" face="Verdana"&gt;BizTalk RFID MSDN forums&lt;/font&gt;&lt;/a&gt;&lt;font size="2" face="Verdana"&gt;.&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font size="2" face="Verdana"&gt;BizTalk RFID Standards Pack includes a SDK for Tag Data Translation, a standards based discovery library, and a standards-based LLRP device provider which makes it easy to connect to any device that supports LLRP.&amp;nbsp; The Standards Pack also enables the connectivity between BizTalk RFID Server and BizTalk RFID Mobile (for store-and-forward as well as for remote management of the mobile device from server).&amp;nbsp; &lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font size="2" face="Verdana"&gt;Here are some links to the documentation/evaluation editions of BizTalk RFID Mobile and BizTalk RFID Standards Pack:&lt;/font&gt;&lt;/p&gt; &lt;h5&gt;&lt;strong&gt;&lt;font face="Verdana"&gt;BizTalk RFID Standards Pack:&lt;/font&gt;&lt;/strong&gt;&lt;/h5&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=96cf68ff-dcba-4043-a04a-30b748c90105%20"&gt;&lt;font size="2" face="Verdana"&gt;Installation Guides and Readme&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=fe56c233-406e-4579-bc87-78dc0529e52a"&gt;&lt;font size="2" face="Verdana"&gt;Downloadable Documentation&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd352559.aspx"&gt;&lt;font size="2" face="Verdana"&gt;MSDN Documentation&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/biztalk/aa937646.aspx"&gt;&lt;font size="2" face="Verdana"&gt;Trial Software&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/biztalk/bb608378.aspx"&gt;&lt;font size="2" face="Verdana"&gt;Code Samples&lt;/font&gt;&lt;/a&gt; &lt;h5&gt;&lt;strong&gt;&lt;font face="Verdana"&gt;BizTalk RFID Mobile:&lt;/font&gt;&lt;/strong&gt;&lt;/h5&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=fad06953-7bfa-477c-97c4-79972923bc46"&gt;&lt;font size="2" face="Verdana"&gt;Installation Guides and Readme&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=f1d216c4-03c1-4add-bfb7-2abafcbaabfb"&gt;&lt;font size="2" face="Verdana"&gt;Downloadable Documentation&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd351599.aspx"&gt;&lt;font size="2" face="Verdana"&gt;MSDN Documentation&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/biztalk/aa937646.aspx"&gt;&lt;font size="2" face="Verdana"&gt;Trial Software&lt;/font&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/biztalk/bb608378.aspx"&gt;&lt;font size="2" face="Verdana"&gt;Code Samples&lt;/font&gt;&lt;/a&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9194285" width="1" height="1"&gt;</description></item><item><title>TechEd IT Pro 2008: BizTalk RFID Tech Talk</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2008/09/07/teched-it-pro-2008-biztalk-rfid-tech-talk.aspx</link><pubDate>Sun, 07 Sep 2008 16:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8930653</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=8930653</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2008/09/07/teched-it-pro-2008-biztalk-rfid-tech-talk.aspx#comments</comments><description>&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 8.5pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-bidi-font-size: 8.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;The&amp;nbsp;BizTalk RFID Tech Talk that Sudhir and I did at TechEd 2008 IT Pro has now been published to TechEd Online.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-bidi-font-size: 8.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 16pt; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-bidi-font-size: 8.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;A href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx" mce_href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx"&gt;&lt;SPAN style="LINE-HEIGHT: 115%; COLOR: blue; mso-bidi-font-size: 11.0pt"&gt;&lt;STRONG&gt;Tech Talk Video: Developing RFID-Enabled Applications with BizTalk RFID&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-bidi-font-size: 8.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Courier New'"&gt;In this session we discuss how RFID-enabled applications can be developed using BizTalk RFID Server and BizTalk RFID Mobile. We talk about simulated envionment, available for folks to develop without physical equipment. With J. Kalyana Sundaram and Sudhir Hasbe.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 8.5pt"&gt;&lt;A href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx" mce_href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN class=MsoHyperlink&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 8.5pt"&gt;&lt;A href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx" mce_href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx"&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 8.5pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; COLOR: blue; FONT-SIZE: 8.5pt; TEXT-DECORATION: none; text-underline: none; mso-no-proof: yes"&gt;&lt;?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /&gt;&lt;v:shapetype id=_x0000_t75 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;&lt;STRONG&gt;&lt;FONT color=#000000&gt;&lt;A href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx" mce_href="http://mfile.akamai.com/14853/wmv/microsofttec.download.akamai.com/14853/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.asx"&gt;&lt;IMG src="http://microsofttech.fr.edgesuite.net/TechEdOnline/Pictures/tt136.JPG"&gt;&lt;/A&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/v:shapetype&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; COLOR: blue; FONT-SIZE: 8.5pt; TEXT-DECORATION: none; text-underline: none; mso-no-proof: yes"&gt;&lt;v:shapetype coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;&lt;STRONG&gt;&lt;FONT color=#000000&gt;Downloads:&lt;BR&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_ITP_techtalk_136_low.wmv"&gt;&lt;STRONG&gt;&lt;FONT color=#000000&gt;&lt;IMG border=0 src="http://www.mstechedonline.com/library/(S(ei330iypbu25qx45layzdq55))/Images/TEO_WMVLO.gif"&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_ITP_techtalk_136_high.wmv"&gt;&lt;FONT color=#000000&gt;&lt;IMG border=0 src="http://www.mstechedonline.com/library/(S(ei330iypbu25qx45layzdq55))/Images/TEO_WMVHI.gif"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_ITP_techtalk_136_high.mp4"&gt;&lt;FONT color=#000000&gt;&lt;IMG border=0 src="http://www.mstechedonline.com/library/(S(ei330iypbu25qx45layzdq55))/Images/TEO_MP4.gif"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_ITP_techtalk_136_audio.MP3"&gt;&lt;IMG border=0 src="http://www.mstechedonline.com/library/(S(ei330iypbu25qx45layzdq55))/Images/TEO_MP3.gif"&gt;&lt;/A&gt;&lt;/v:shapetype&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8930653" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/Miscellaneous/">Miscellaneous</category><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/BizTalk+RFID/">BizTalk RFID</category><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/Device+Management/">Device Management</category></item><item><title>BizTalk RFID at Tech.Ed 2008 IT Pro</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2008/08/08/biztalk-rfid-at-tech-ed-2008-it-pro.aspx</link><pubDate>Fri, 08 Aug 2008 11:31:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8842901</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=8842901</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2008/08/08/biztalk-rfid-at-tech-ed-2008-it-pro.aspx#comments</comments><description>&lt;p&gt;I participated, as a co-speaker, in the TechEd IT Pro conference at Orlando during June this year.&amp;nbsp; Our team had a few sessions here:&lt;/p&gt; &lt;p&gt;1) &lt;strong&gt;Deep Dive Into BizTalk RFID&lt;/strong&gt;: This was a one hour interactive theater style presentation.&amp;nbsp; Here, we started with a general overview of the BizTalk RFID, and then explained the concepts in BizTalk RFID using a shipping/receiving scenario.&amp;nbsp; We used a fixed RFID reader and did a complete end to end demo on how a RFID business process could be set up that can get events from this device and store them into a SQL Server database.&amp;nbsp; The attendees were really excited by the fact that events could go all the way to SQL database without writing even a single line of code.&amp;nbsp; During the demo, we also added the Contoso provider (the simulated provider that ships with BizTalk RFID) and simulated five Contoso devices and showed them how they can use this to do their application development even if they don’t have a physical device.&amp;nbsp; We also did some chalk talk on the general concepts.&amp;nbsp;&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/kalyanaj/WindowsLiveWriter/BizTalkRFIDatTech.Ed2008ITPro_BDAE/img038_2.jpg"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="177" alt="img038" src="http://blogs.msdn.com/blogfiles/kalyanaj/WindowsLiveWriter/BizTalkRFIDatTech.Ed2008ITPro_BDAE/img038_thumb.jpg" width="208" border="0"&gt;&lt;/a&gt;  &lt;p&gt;2) &lt;strong&gt;Building rich RFID enabled applications for Windows CE/Mobile devices using "BizTalk RFID Mobile"&lt;/strong&gt;: This was a 75 minute breakout session. Here we spoke about the evolving mobile scenarios and form factors and the need for a mobile platform.&amp;nbsp; We also went into the features and architecture of the platform.&amp;nbsp; We had tagged some real products and demonstrated a picklist scenario on a mobile RFID reader running &lt;a href="http://www.microsoft.com/biztalk/en/us/rfid-mobile.aspx"&gt;BizTalk RFID Mobile&lt;/a&gt; Beta and the corresponding device provider.&amp;nbsp;&amp;nbsp; We also did a RFID application development demo using the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=83A52AF2-F524-4EC5-9155-717CBE5D25ED&amp;amp;displaylang=en"&gt;Windows Mobile emulators&lt;/a&gt; and attendees were able to appreciate how they can use this to do application development and testing without requiring to have a physical mobile reader.&amp;nbsp; &lt;/p&gt; &lt;p&gt;There was lot of excitement about how simple it was to connect to a radio module, get notified about events, and post events to a server.&amp;nbsp; &lt;/p&gt; &lt;p&gt;3) &lt;strong&gt;Tech Talk on BizTalk RFID&lt;/strong&gt;:&amp;nbsp; This was a 20 minute interview style video recording.&amp;nbsp; Here, &lt;a href="http://blogs.msdn.com/sudhir"&gt;Sudhir&lt;/a&gt; and I talked about three main topics: &lt;/p&gt; &lt;p&gt;a) Application development with BizTalk RFID: &lt;/p&gt; &lt;ul&gt; &lt;li&gt;Event Handler development  &lt;li&gt;Design vs. Deployment,  &lt;li&gt;Integration with BRE/BizTalk Server, and  &lt;li&gt;Mobile application development using BizTalk RFID Mobile.&amp;nbsp; &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;b) Manageability: how RFID Manager, Client Console can be used to manage BizTalk RFID, and how System Center Operations Manager (SCOM) can also help in managing RFID devices.&amp;nbsp; &lt;/p&gt; &lt;p&gt;c) How can a RFID application developer get started using emulators, Contoso provider / Contoso device simulator / MyFirstCEProvider etc.&amp;nbsp; &lt;/p&gt; &lt;p&gt;This video will soon be posted to &lt;a href="http://www.microsoft.com/teched"&gt;http://www.microsoft.com/teched&lt;/a&gt;.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Our booth:&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;We had a booth for BizTalk RFID in the SOA theme.&amp;nbsp; Cathexis Innovations had an event management solution that they ran in the booth: for every attendee to the booth, we registered them and printed out a RFID tag for them using BizTalk RFID.&amp;nbsp; This was affixed on their badges, and attendees could come back and get this scanned (in order to increase their chances of winning a Zune) using BizTalk RFID Mobile.&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8842901" width="1" height="1"&gt;</description></item><item><title>Device Security</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2008/08/08/device-security.aspx</link><pubDate>Fri, 08 Aug 2008 10:15:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8842682</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=8842682</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2008/08/08/device-security.aspx#comments</comments><description>&lt;p&gt;I had briefly touched upon Device Security in one of my earlier posts: in particular, the privileges needed for using the DeviceConnection methods.&amp;nbsp; In this post, I will elaborate more on the same:&lt;/p&gt; &lt;p&gt;1) If you are performing a DeviceConnection operation that can potentially change the device (such as&amp;nbsp; DeviceConnection.SetProperty()), the caller should have administrative privileges on the device.&amp;nbsp; Having administrative privilege on a device means that at least one of the following should be true:&lt;/p&gt; &lt;p&gt;a) The caller is a member of the builtin administrators group on the server (OR)&lt;br&gt;b) The caller's account is a member of the device's custom administrator list (To view/modify this using RFID Manager, right click on a device -&amp;gt; Security).&amp;nbsp; &lt;strong&gt;Note that in addition to being in the custom administrators list of the device, this account also should be added to the RFID_USER group on the server machine.&lt;/strong&gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;2) If you are performing a DeviceConnection operation that cannot change the state of the device (such as DeviceConnection.GetProperty()) or DeviceConnection.PrintTag()), the caller does &lt;em&gt;not &lt;/em&gt;require administrative privileges.&amp;nbsp; &lt;strong&gt;Any account in the RFID_USER group on the server machine should be able to perform such operations&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;Here's the full list of DeviceConnection methods and the information on whether it requires administrative privileges:&lt;/p&gt; &lt;table cellspacing="0" cellpadding="2" width="396" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="205"&gt;Method Name in DeviceConnection&lt;/td&gt; &lt;td valign="top" width="189"&gt;Admin privilege required&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="209"&gt;SetReadFilter&lt;/td&gt; &lt;td valign="top" width="186"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="212"&gt;GetReadFilter&lt;/td&gt; &lt;td valign="top" width="184"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="214"&gt;GetDiagnostics&lt;/td&gt; &lt;td valign="top" width="183"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="215"&gt;GetCurrentPropertyProfile&lt;/td&gt; &lt;td valign="top" width="182"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="216"&gt;GetDefaultPropertyProfile&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;ApplyPropertyProfile&lt;/td&gt; &lt;td valign="top" width="181"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetProperty&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;SetProperty&lt;/td&gt; &lt;td valign="top" width="181"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;ExecuteVendorDefinedCommand&lt;/td&gt; &lt;td valign="top" width="181"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetTagData&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetPartialTagData&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetTagMetadata&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetTags&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;KillTag&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;LockTag&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;LockPartialTagData&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;UnlockTag&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;UnlockPartialTagData&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;PrintTag&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;WriteTagId&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;WriteTagData&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;WritePartialTagData&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;AddPrintTemplate&lt;/td&gt; &lt;td valign="top" width="181"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;RemovePrintTemplate&lt;/td&gt; &lt;td valign="top" width="181"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetAllPrintTemplates&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetAllPrintTemplateNames&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetCurrentPrintTemplateName&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;SetCurrentPrintTemplateName&lt;/td&gt; &lt;td valign="top" width="181"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetPrintTemplate&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetStandardizedPrintTemplate&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetPrintTemplatePreview&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetPrintLabelPreview&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetSources&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="217"&gt;GetDeviceCapabilities&lt;/td&gt; &lt;td valign="top" width="181"&gt;No&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Note: If you are using DeviceManagreProxy.ExecuteCommandForConnection(), the same security model described above applies exactly to it as well.&amp;nbsp; However, I would strongly recommend using DeviceConnection for such operations instead of DeviceManagerProxy.&amp;nbsp; (DeviceConnection internally goes through DeviceManagerProxy).&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8842682" width="1" height="1"&gt;</description></item><item><title>Management Events in BizTalk RFID</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2008/04/17/management-events-in-biztalk-rfid.aspx</link><pubDate>Thu, 17 Apr 2008 07:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8401023</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=8401023</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2008/04/17/management-events-in-biztalk-rfid.aspx#comments</comments><description>&lt;DIV&gt;Sorry about the long hiatus - things&amp;nbsp;have&amp;nbsp;been pretty hectic in the last few months.&amp;nbsp;&amp;nbsp;Planning to catch up on all the&amp;nbsp;missed blogging&amp;nbsp;in the coming few weeks (things will always be hectic, so why wait any longer :)) !!&amp;nbsp; If you have any specific topics in mind that you want the BizTalk RFID team to blog about, please send me a note.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Today, there was an interesting question&amp;nbsp;from one of our IHV partners about the management events hierarchy, so that brings us to this post:&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;BizTalk&amp;nbsp;RFID supports the concept of management events.&amp;nbsp; A management event is an asynchronous event&amp;nbsp;that can originate&amp;nbsp;from a device or the device provider or even from the BizTalk RFID Service to notify the occurence of a specific condition.&amp;nbsp; &lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Examples of management events:&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;1) An&amp;nbsp;event "BizTalk RFID Service discovered a new device" (DeviceDiscoveryEvent) raised by BizTalk RFID Service. This is an example of an informational event.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;2) An event "The source &amp;lt;foo&amp;gt; of Device &amp;lt;bar&amp;gt; is currently down" (SourceDownEvent) raised by the device provider. This is an example of a warning/error event.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;For event handlers / apps / management consoles: &lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;So, how can one subscribe to these events?&amp;nbsp; BizTalk RFID Service exposes them to the outside world in two ways:&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;1) BizTalk RFID Service fires the management event as a WMI event.&amp;nbsp; This applies to the events that originated from the device/provider and also the events that originated from the Service itself. The "RFID Tray" application that ships with BizTalk RFID (you can find it in the shortcuts in the programs menu) is an example of a "WMI consumer" application that subscribes to such events and displays them in its UI.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;2) BizTalk RFID Service sends the management event to the RFID Process pipeline (i.e. notifies interested processes).&amp;nbsp; This applies only to events that originated from the device/provider and not for events originating from the service.&amp;nbsp; For e.g. if you have process P1 that was bound to device "D1" and if there is a BatteryLowEvent from this device, it will be sent to P1's process pipeline.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;So, you can see that the above kind of events can be useful for a RFID administrator or an Event Handler writer to know about these conditions and take appropriate action when required.&amp;nbsp; If you have MOM, you can use the&amp;nbsp;&lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=E4E84AE5-21D2-4D12-91E0-3E0FF07AEB19&amp;amp;displaylang=en" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=E4E84AE5-21D2-4D12-91E0-3E0FF07AEB19&amp;amp;displaylang=en"&gt;MOM Pack&lt;/A&gt; as well.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;There are a whole bunch of standard management events defined by BizTalk RFID - you can see the full list of derived classes from the base class documentation at &lt;A href="http://msdn2.microsoft.com/en-us/library/microsoft.sensorservices.rfid.management.managementevent.aspx"&gt;http://msdn2.microsoft.com/en-us/library/microsoft.sensorservices.rfid.management.managementevent.aspx&lt;/A&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;For Provider Writers:&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;If you look at the hierarchy of the management&amp;nbsp;events defined in the DSPI,&amp;nbsp;there is a class ManagementEvent from which&amp;nbsp;there are three derived classes:&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i) DeviceManagementEvent&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ii) ProviderManagementEvent &lt;BR&gt;&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;iii) ServerManagementEvent &lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;All the derived classes from DeviceManagementEvent (&lt;A href="http://msdn2.microsoft.com/en-us/library/bb656891.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/bb656891.aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb656891.aspx&lt;/A&gt;) and all the derived classes from ProviderManagementEvent fall in the domain of the provider; for e.g. the SourceDownEvent derives from DeviceManagementEvent and you should strongly consider supporting this in your provider/device.&amp;nbsp; Anything which derives from ServerManagementEvent falls in the domain of BizTalk RFID Service (i.e. service will raise such events).&amp;nbsp; &lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;Also, please make sure your device capabilities is in sync with the management events that you support in your provider.&amp;nbsp; For e.g. if you support SourceDownEvent, include that in your &lt;A class="" title="Device Capabilities" href="http://technet.microsoft.com/en-us/library/microsoft.sensorservices.rfid.dspi.devicecapability_members.aspx" target=_blank mce_href="http://technet.microsoft.com/en-us/library/microsoft.sensorservices.rfid.dspi.devicecapability_members.aspx"&gt;device capabilities&lt;/A&gt;.&lt;/DIV&gt;
&lt;DIV id=divRpF693899 dir=ltr&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8401023" width="1" height="1"&gt;</description></item><item><title>Simulating multiple devices using Contoso device simulator...</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2007/10/04/simulating-multiple-devices-using-contoso-device-simulator.aspx</link><pubDate>Thu, 04 Oct 2007 14:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5355357</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=5355357</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2007/10/04/simulating-multiple-devices-using-contoso-device-simulator.aspx#comments</comments><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;One recent question I got on BizTalk RFID was: "Is it possible to try it out with multiple simulated devices?" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;The good news is "Yes, it is amazingly easy to do this" using the Contoso Provider / Device Simulator.&amp;nbsp; Let's say you have added the Contoso Provider in BizTalk RFID using RFID Manager.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: Arial; mso-bidi-font-family: Arial; mso-bidi-font-size: 11.0pt"&gt;1.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: Arial"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;Go to %RFIDINSTALLDIR%\Samples\Device Service Provider\Contoso\ContosoEndToEnd\ContosoDeviceSimulator&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: Arial; mso-bidi-font-family: Arial; mso-bidi-font-size: 11.0pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;FONT face="Times New Roman" size=3&gt;2.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: Arial"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;Open ContosoSimulatorConfig.xml&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: Arial; mso-bidi-font-family: Arial; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-themecolor: accent1; mso-themeshade: 128"&gt;3.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: Arial"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;Add additional sections here: add one section for each additional device that you want to simulate. Note that each section should have a unique name, unique device name, and unique port number.&amp;nbsp; You need to change only the port information and can use the same IP address.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;For e.g. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: black; FONT-FAMILY: Verdana"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;section name="DeviceInformation_&lt;B style="mso-bidi-font-weight: normal"&gt;2&lt;/B&gt;"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="DeviceName"&amp;gt;ContosoTestDevice&lt;B style="mso-bidi-font-weight: normal"&gt;2&lt;/B&gt;&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="ConnectionType"&amp;gt;TCPIP&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="IpAddress"&amp;gt;0.0.0.0&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="PortNumber"&amp;gt;666&lt;B style="mso-bidi-font-weight: normal"&gt;7&lt;/B&gt;&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="ProviderId"&amp;gt;Contoso&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="NotificationDataFile"&amp;gt;ContosoNotificationConfig.xml&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="DeviceTranslatorAssemblyPath"&amp;gt;Microsoft.Rfid.Test.ContosoDeviceTranslator.dll&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;entry name="DeviceTranslatorConfigFile"&amp;gt;&amp;lt;/entry&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&amp;lt;/section&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;4) Run “runContosoSimulator.cmd”.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;Now, you can use the Add Device Wizard to add these simulated devices and connect to them.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;SPAN style="mso-bidi-theme-font: minor-bidi; mso-themecolor: accent1; mso-themeshade: 128"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana; mso-bidi-font-size: 11.0pt"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5355357" width="1" height="1"&gt;</description></item><item><title>DeviceConnection revisited...</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2007/09/21/deviceconnection-revisited.aspx</link><pubDate>Fri, 21 Sep 2007 21:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5038569</guid><dc:creator>kalyanaj</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=5038569</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2007/09/21/deviceconnection-revisited.aspx#comments</comments><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;FONT size=3&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;One client connection vs. multiple&amp;nbsp;client connections:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&amp;nbsp;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;We saw an overview of the DeviceConnection class (Microsoft.Rfid.Client) in an earlier post&amp;nbsp;and how it can be used&amp;nbsp;for configuration and operations on a device.&amp;nbsp;Now,&amp;nbsp;consider the scenario where there is a client application which has opened a connection to a particular device and is doing some configuration on it (say for e.g. SetProperty). If another client application&amp;nbsp;wants to open a connection to the &lt;I&gt;same &lt;/I&gt;device to configure/operate it,&amp;nbsp; DeviceConnection.Open() doesn't allow it because having more than one application configuring/operating on the device at the same time could affect the state of the device and could potentially take the device to an undefined state.&amp;nbsp; Hence, when the second client application tries to do a deviceConnection.Open(), it would get an exception such as:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;"Cannot open a connection to device &amp;lt;devicename&amp;gt; because another client has already connected to the device. Retry the operation later"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;That said, there is an override if your application is really sure of what it is doing and has the required administrative privileges: DeviceConnection.OpenAdministrationConnection(). You can use this if you are sure that you are not stepping on some other client that is connected to the device.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;FONT size=3&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;Device Security:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;What privileges are needed for using the DeviceConnection methods?&amp;nbsp; Any operation that can potentially affect/change the state of the device requires the caller to have administrative privileges on the device.&amp;nbsp; Having administrative privilege on a device means that atleast one of the following should be true:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;1) The caller is a member of the builtin administrators group (OR)&lt;BR&gt;2) The caller is a member of the device's custom administrator list (To view/modify this using RFID Manager, right click on a device -&amp;gt; Security)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;So, using DeviceConnection.OpenAdministrationConnection() or DeviceConnection.SetProperty() or DeviceConnection.ApplyPropertyProfile() are considered "state changing operations" and hence would require one of the above two privileges.&amp;nbsp; Using DeviceConnection.Open() or DeviceConnection.GetProperty() or DeviceConnection.PrintTag() are not considered to change state and hence don't require the above privileges - just being a member of the RFID_USER group (a Windows group created by BizTalk RFID during its installation) is enough to do such operations. Note that tag related operations (GetTags(), PrintTag() etc.) fall into the latter category.&amp;nbsp; By default, devices in BizTalk RFID inherit security options from the parent device group. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;FONT size=3&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;Using DeviceConnection from an event handler:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;If you have an event handler running as part of a RFID process, you may want to use DeviceConnection to do&amp;nbsp;operations such as getting/setting&amp;nbsp;the I/O port value on a device.&amp;nbsp;This scenario is considered to be very similar to any other standalone client application using DeviceConnection. Let's say you want to do a state changing device&amp;nbsp;operation from an event handler such as DeviceConnection.SetProperty(). If you see an exception such as the one below, it means the context in which the event handler is running doesn't have the required privileges to do the operation:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'"&gt;System.IO.SensorServices.Rfid.Client.DeviceManagerException: Insufficient permissions to perform the requested operation on device entity &amp;lt;device name&amp;gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;at System.IO.SensorServices.Rfid.Client.DeviceConnection.ExecuteCommand[TCommand](String deviceSourceName, TCommand cmd, VendorDefinedParameters parameters)&amp;nbsp;&lt;BR&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;at System.IO.SensorServices.Rfid.Client.DeviceConnection.SetProperty(String sourceName, String groupName, String propertyName, Object value, VendorDefinedParameters parameters)&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;An event handler runs in the context of the "RFID Service Account (RSA)" on Windows XP / Windows Vista; it runs in the context of a "Worker Process Account (PSA") on&amp;nbsp;a Windows Server 2003 computer.&amp;nbsp; If this account is not part of the device's custom administrator list, it means that it does not have the privileges to do the operation.&amp;nbsp; You can resolve this easily by adding&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'"&gt;PSA (on a Windows Server 2003 computer) or the RSA (on a Windows XP or Windows Vista computer) to the device's administrator list, using RFID Manager -&amp;gt; Right click on the device or device group -&amp;gt; Security -&amp;gt; Add. &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Verdana','sans-serif'"&gt;To summarize, any client application or an event handler using the DeviceConnection.Open() or DeviceConnection.OpenAdministrationConnection() is considered to be a "synchronous client".&amp;nbsp; There could be any number of running&amp;nbsp;"RFID Processes" bound to a device and be receiving notifications from the device. Internally, BizTalk RFID maintains only a single connection&amp;nbsp;to the device and closes this connection only when the final interested process or the client goes away. I will post more on the device connection management in a later post.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5038569" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/BizTalk+RFID/">BizTalk RFID</category><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/Device+Management/">Device Management</category></item><item><title>Auto-Apply of non-persistent properties...</title><link>http://blogs.msdn.com/b/kalyanaj/archive/2007/09/17/auto-apply-of-non-persistent-properties.aspx</link><pubDate>Mon, 17 Sep 2007 18:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4958260</guid><dc:creator>kalyanaj</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/kalyanaj/rsscomments.aspx?WeblogPostID=4958260</wfw:commentRss><comments>http://blogs.msdn.com/b/kalyanaj/archive/2007/09/17/auto-apply-of-non-persistent-properties.aspx#comments</comments><description>&lt;P&gt;I briefly touched upon device properties (in my earlier post on device configuration and management) in the example of how to get the current device property profile. The "current property profile" of a device or source includes all the properties applicable to the device or source, including the standard properties (those that are defined by BizTalk RFID DSPI) as well as any additional custom properties of a specific device. Now, it may not be feasible for the provider or the device to persist the values of all of these properties, say for e.g. across a reboot of a device. To address such a scenario, BizTalk RFID provides support for a provider to specify the persistence status for a property (using the IsPersistent field in the device property metadata). Based on this information, BizTalk RFID automatically applies such properties every time after it establishes connection to a device.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For e.g., you may notice something similar in your RfidServices.log file:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; 6|&amp;nbsp;&amp;nbsp; Info|091407 11:56:52|Going to auto-apply property profile for device ContosoTestDevice|[Device]&lt;BR&gt;&amp;nbsp;&amp;nbsp; 6|&amp;nbsp;&amp;nbsp; Info|091407 11:56:52|Property [CUSTOM:CUSTOMINTEDITABLEPROPERTY] was not persisted, adding to auto-apply list|[Device]&lt;BR&gt;&amp;nbsp;&amp;nbsp; 6|&amp;nbsp;&amp;nbsp; Info|091407 11:56:52|Property [CUSTOM:CUSTOMSTRINGEDITABLEPROPERTY] was not persisted, adding to auto-apply list|[Device]&lt;BR&gt;&amp;nbsp;&amp;nbsp; 6|&amp;nbsp;&amp;nbsp; Info|091407 11:56:52|Property [REBOOT GROUP:REBOOT] was not persisted, adding to auto-apply list|[Device]&lt;BR&gt;&amp;nbsp;&amp;nbsp; 6|&amp;nbsp;&amp;nbsp; Info|091407 11:56:52|Successfully auto applied 3 non-persisted properties|[Device]&lt;BR&gt;&amp;nbsp;&amp;nbsp; .....&lt;BR&gt;&amp;nbsp;&amp;nbsp; .....&lt;BR&gt;&amp;nbsp;&amp;nbsp; 6|&amp;nbsp;&amp;nbsp; Info|091407 11:56:52|Going to auto-apply property profile for source Antenna1 of device ContosoTestDevice|[Device]&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Here's some background on how BizTalk RFID accomplishes this: every time there is a change in the value of one or more properties (for e.g. when you set a property or when you apply an entire property profile) BizTalk RFID creates a new version for the device in its version store to track the changes. After every successful connection to a device, it checks with the provider (using its device property metadata) if there are any properties that the provider is not persisting. If it finds such properties, it applies the values for these properties based on the latest values from its version store.&amp;nbsp; Note that the same thing applies for the source/antenna properties as well...&lt;/P&gt;
&lt;P&gt;By default, this behavior is enabled and shouldn't be modified. If you really need to turn this behavior off, you can&amp;nbsp;do that by setting RFID Manager -&amp;gt; Devices -&amp;gt; Connection Parameters -&amp;gt; "Auto-apply Non-Persistent Properties" to false.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4958260" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/BizTalk+RFID/">BizTalk RFID</category><category domain="http://blogs.msdn.com/b/kalyanaj/archive/tags/Device+Management/">Device Management</category></item></channel></rss>