public static bool sendMessagePostAsync(String inUrl, String inMessage, String inContentType, String inUserAccount, String inPassword)
        {
            String curMethodName = "SendMessageHttp:sendMessagePostAsync";
            WebRequest curRequest = null;
            RequestState curRequestState = null;

            String[] curUrlList = inUrl.Split( '|' );

            try {
                // Create a request using a URL that can receive a post.
                // Set the Method property of the request to POST.
                foreach (String curUrl in curUrlList) {
                    curRequest = WebRequest.Create( curUrl );
                    if (curRequest == null) {
                        MessageBox.Show( curMethodName + ":Unable to connect to " + curUrl );
                        Log.WriteFile( curMethodName + ":Unable to connect to " + curUrl );
                    } else {
                        curRequest.Method = "POST";
                        if (inUserAccount != null) {
                            curRequest.Credentials = new NetworkCredential( inUserAccount, inPassword );
                        }

                        // Set the ContentType property of the WebRequest.
                        if (inContentType == null) {
                            curRequest.ContentType = "application/x-www-form-urlencoded";
                        } else {
                            curRequest.ContentType = inContentType;
                        }

                        curRequestState = new RequestState();
                        curRequestState.WebReqst = curRequest;
                        curRequestState.InputMsgBuffer = Encoding.UTF8.GetBytes( inMessage );
                        curRequestState.WebReqst.ContentLength = curRequestState.InputMsgBuffer.Length;

                        // Get the request stream.
                        //curDataStream = curRequest.BeginGetRequestStream.GetRequestStream();
                        curRequest.BeginGetRequestStream( new AsyncCallback( GetRequestStreamCallback ), curRequestState );
                    }
                }

            } catch (Exception ex) {
                MessageBox.Show( curMethodName + ":Exception:" + ex.Message );
                Log.WriteFile( curMethodName + ":Exception:" + ex.Message );
                return false;
            }

            return true;
        }
        public static bool sendMessagePostWithHeader(String inUrl, String inAuthHeaderParms, String inContentType, String inMessage)
        {
            String curMethodName = "SendMessageHttp:sendMessagePostWithHeader";
            HttpWebRequest curRequest = null;
            RequestState curRequestState = null;

            try {
                // Create a request using a URL that can receive a post.
                // Set the Method property of the request to POST.
                curRequest = (HttpWebRequest)WebRequest.Create( inUrl );
                curRequest.Method = "POST";
                curRequest.KeepAlive = false;
                curRequest.ContentType = inContentType;
                if (inAuthHeaderParms != null) {
                    curRequest.Headers.Add( "Authorization", inAuthHeaderParms );
                }

                curRequestState = new RequestState();
                curRequestState.WebReqst = curRequest;
                curRequestState.InputMsgBuffer = Encoding.UTF8.GetBytes( inMessage );
                curRequestState.WebReqst.ContentLength = curRequestState.InputMsgBuffer.Length;

                // Get the request stream.
                //curDataStream = curRequest.BeginGetRequestStream.GetRequestStream();
                curRequest.BeginGetRequestStream( new AsyncCallback( GetRequestStreamCallback ), curRequestState );

            } catch (Exception ex) {
                MessageBox.Show( curMethodName + ":Exception:" + ex.Message );
                Log.WriteFile( curMethodName + ":Exception:" + ex.Message );
                return false;
            }

            return true;
        }
        public static String getMessageResponse(String inUrl, String inUserAccount, String inPassword, bool inPostMethod)
        {
            String curMethodName = "SendMessageHttp:getMessageResponse";
            String responseFromServer = "";
            WebRequest curRequest = null;

            try {
                // Create a request for the URL.
                curRequest = WebRequest.Create( new Uri( inUrl ) );
                if (inPostMethod) {
                    curRequest.Method = "POST";
                } else {
                    curRequest.Method = "GET";
                }

                // If required by the server, set the credentials.
                if (inUserAccount != null) {
                    curRequest.Credentials = new NetworkCredential( inUserAccount, inPassword );
                }

                RequestState curRequestState = null;
                curRequestState = new RequestState();
                curRequestState.WebReqst = curRequest;
                //curRequestState.WebReqst.ContentLength = curRequestState.InputMsgBuffer.Length;

                curRequest.BeginGetRequestStream( new AsyncCallback( GetRequestStreamCallback ), curRequestState );
            } catch (Exception ex) {
                MessageBox.Show( curMethodName + ":getMessage:Exception:" + ex.Message );
            }

            return responseFromServer;
        }