<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PlaceType"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PlaceName"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="place"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:Arial;
        color:windowtext;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>List,<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>I&#8217;m writing an app that should collect data on
/dev/ttyS0 and push it out to a web service. The code for the app is included
in this message. Here is the error that I am getting:<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Verdana><span style='font-size:10.0pt;
font-family:Verdana'>** (Program.exe:13337): WARNING **: The class
System.IO.Ports.SerialPort could not be loaded, used in
/export/home/shawn/src/c#/v2/Program.exe (token 0x01000002). <br>
&nbsp;<br>
Unhandled Exception: System.NullReferenceException: Object reference not set to
an instance of an object<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>I&#8217;ve got Mono v1.1.8.3 running on Mandrake Linux 9.2.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Source code:<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Here is my source code:<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Verdana><span style='font-size:10.0pt;
font-family:Verdana'>&nbsp;<br>
Here is a copy of my source code: <br>
&nbsp;<br>
// Part 1: &nbsp;COM Listener &amp; Data Receiver <br>
/* &nbsp; &nbsp; &nbsp;<br>
&nbsp; This code will watch for the <st1:place w:st="on"><st1:PlaceName w:st="on">COM</st1:PlaceName>
 <st1:PlaceType w:st="on">Port</st1:PlaceType></st1:place> to be open <br>
&nbsp; and when it is, it will read data from it into memory. <br>
&nbsp;<br>
&nbsp; When the port is closed, the data will be pushed to the <br>
&nbsp; web service (Part 2 is the push) <br>
*/ <br>
&nbsp;<br>
using System.IO.Ports; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // NOT available in
VS .NET 2003 <br>
&nbsp; &nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// IS provided with VS .NET 2005 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// TO work with MONO, you need to have at least Mono v1.1.8 <br>
&nbsp;<br>
// Part 2: &nbsp;POST to Web Service <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Verdana><span style='font-size:10.0pt;
font-family:Verdana'><br>
/* <br>
&nbsp; Transfer data that was captured from the <st1:place w:st="on"><st1:PlaceName
 w:st="on">COM</st1:PlaceName> <st1:PlaceType w:st="on">Port</st1:PlaceType></st1:place>
<br>
&nbsp; to the specified web service. <br>
*/ <br>
&nbsp;<br>
using System; <br>
using System.Collections.Generic; <br>
using System.IO; <br>
using System.Net; <br>
using System.Net.Sockets; <br>
using System.Text; <br>
using System.Web; <br>
&nbsp;<br>
namespace rfidapp <br>
{ <br>
&nbsp;/// &lt;summary&gt; <br>
&nbsp;/// Summary description for Class1. <br>
&nbsp;/// &lt;/summary&gt; <br>
&nbsp; &nbsp; class Program <br>
&nbsp; &nbsp; { <br>
&nbsp; &nbsp;/// &lt;summary&gt; <br>
&nbsp; &nbsp;/// The main entry point for the application. <br>
&nbsp; &nbsp;/// &lt;/summary&gt; <br>
&nbsp; &nbsp;[STAThread] <br>
&nbsp; &nbsp;static void Main(string[] args) <br>
&nbsp; &nbsp;{ <br>
&nbsp;
try&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// begin serial port stuff <br>
&nbsp; { <br>
&nbsp; &nbsp; &nbsp; // Listen &amp; Receive <br>
&nbsp;<br>
&nbsp; &nbsp; &nbsp; string devName = &quot;/dev/ttyS0&quot;; &nbsp; &nbsp; //
COM1 <br>
&nbsp; &nbsp; &nbsp; int readTimeOut = 300; &nbsp; <br>
&nbsp; &nbsp; &nbsp; byte rawDTA; <br>
&nbsp; &nbsp; &nbsp; string rXDTA = &quot;thisizenishilizerdtuh&quot;; <br>
&nbsp;<br>
&nbsp; &nbsp; &nbsp; SerialPort COMPort = new SerialPort(devName); <br>
&nbsp; &nbsp; &nbsp; COMPort.ReadTimeout = readTimeOut; <br>
&nbsp;<br>
&nbsp; &nbsp; &nbsp; for (; ; ) <br>
&nbsp; &nbsp; &nbsp; { <br>
&nbsp; &nbsp; &nbsp;while (COMPort.IsOpen) <br>
&nbsp; &nbsp; &nbsp;{ <br>
&nbsp; &nbsp; rawDTA = (byte)COMPort.ReadByte(); <br>
&nbsp; &nbsp; rXDTA += ((char)rawDTA); <br>
&nbsp; &nbsp; &nbsp;} <br>
&nbsp;<br>
&nbsp; &nbsp; &nbsp;if (COMPort.IsOpen) <br>
&nbsp; &nbsp;
COMPort.Close();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// end serial port stuff<br>
&nbsp;<br>
&nbsp; &nbsp; &nbsp;// Post <br>
&nbsp; &nbsp; &nbsp;if
(!rXDTA.Contains(&quot;thisizenishilizerdtuh&quot;))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
// something to prevent this code from being executed<br>
&nbsp; &nbsp; &nbsp;{ <br>
&nbsp; &nbsp; string uri =
&quot;http://smartserver/rfidlistener&quot;;&nbsp;&nbsp;&nbsp;&nbsp; // bogus
name<br>
&nbsp; &nbsp; byte[] bytes = new System.Text.UnicodeEncoding().GetBytes(rXDTA);
<br>
&nbsp;<br>
&nbsp; &nbsp; WebRequest request = WebRequest.Create(uri); <br>
&nbsp; &nbsp; request.Method = &quot;POST&quot;; <br>
&nbsp; &nbsp; request.ContentType = &quot;text/html&quot;; <br>
&nbsp; &nbsp; request.ContentLength = bytes.Length; <br>
&nbsp;<br>
&nbsp;<br>
&nbsp; &nbsp; Stream output = request.GetRequestStream(); <br>
&nbsp; &nbsp; output.Write(bytes, 0, bytes.Length); <br>
&nbsp; &nbsp; output.Close(); <br>
&nbsp; &nbsp; WebResponse response = request.GetResponse(); <br>
&nbsp; &nbsp; Console.WriteLine(response.ToString()); <br>
&nbsp; &nbsp; &nbsp;} <br>
&nbsp; &nbsp; &nbsp;Console.WriteLine(&quot;Listening for data ...&quot;); <br>
&nbsp; &nbsp; &nbsp; } <br>
&nbsp; } <br>
&nbsp; catch (Exception e) <br>
&nbsp; { <br>
&nbsp; &nbsp; &nbsp; Console.WriteLine(&quot;Error: &quot; +
e.Message.ToString()); <br>
&nbsp; } <br>
&nbsp; &nbsp;} <br>
&nbsp; &nbsp; } <br>
} </span></font><o:p></o:p></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Any thoughts?<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Thank you,</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Shawn Singh</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Programmer, RFSmart</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Jacksonville, FL 32256</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>904-399-8500 ext. 1667</span></font><o:p></o:p></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><a href="mailto:shawn.singh@rfsmart.com">shawn.singh@rfsmart.com</a></span></font><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

</body>

</html>