ASP.NET
  Home arrow ASP.NET arrow Using MSMQ in Dot Net Using VB.Net Sending...
ASP Free Forums 
.NET  
ASP  
ASP Code  
ASP.NET  
ASP.NET Code  
BrainDump  
C#  
Code Examples  
Database  
Database Code  
IIS  
Microsoft Access  
MS SQL Server  
Silverlight  
Visual Basic.NET  
Windows Scripting  
Windows Security  
XML  
Mobile Linux 
App Generation ROI 
IBM® developerWorks 
ASP Web Hosting  
ASP.NET Web Hosting 
Windows Web Hosting
 
Weekly Newsletter
 
Developer Updates  
Free Website Content 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us Get Paid 
Request Media Kit
Contact Us 
Site Map 
Privacy Policy 
Support 
 USERNAME
 
 PASSWORD
 
 
  >>> SIGN UP!  
  Lost Password? 
ASP.NET

Using MSMQ in Dot Net Using VB.Net Sending and Receiving Messages Using MSMQ in Dot Net:
By: aspfree
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 4 stars4 stars4 stars4 stars4 stars / 11
    2001-08-04

    Table of Contents:

    Rate this Article: Poor Best 
      ADD THIS ARTICLE TO:
      Del.ici.ous Digg
      Blink Simpy
      Google Spurl
      Y! MyWeb Furl
    Email Me Similar Content When Posted
    Add Developer Shed Article Feed To Your Site
    Email Article To Friend
    Print Version Of Article
    PDF Version Of Article
     
     
    ADVERTISEMENT


    Using MSMQ in Dot Net Using VB.Net
    Sending and Receiving Messages Using MSMQ in Dot Net:

    author: Sreedhar Koganti 
    
    This example will help you to know how to send and receive messages using MSMQ.
    In Dot net, MSMQ provides a powerful set of services. These you can get from
    System.Messaging name space. In order to use MSMQ explorer our
    Dot Net IDE can also be used to add and remove messages form MSMQ.

    How you can use MSMQ:
    In order to use MSMQ first you have to install MSMQ in your machine.
    Since we are looking at MSMQ in Dot Net,
    you need to have Windows 2000 + Service Pack1, MSMQ, .NET Framework Beta1 and
    Visual Studio.NET .

    How to Use MSMQ:
    MSMQ Enterprise can be managed through the MSMQ Explorer.
    The MSMQ Explorer provides an interface for managing all machines in a
    MSMQ environment from a single point of control. This MSMQ Explorer
    you can get from Computer Management/Services and Applications/MessageQueing.

    Here I am trying to show a simple Example in VS.Net(VB).
    In this example I am using a Windows Application in the C# Environment.
    This example will help you to know how to send and receive messages using MSMQ.
    In this example I am basically using System.Messaging name space to manage the
    messages using msmq.

    To do that created a Windows application in VB using VS.net.

    In that i take a form module and I kept two buttons one for sending
    data and one for receiving data. And I also used a text box.While sending
    message i am taking message form the textbox.Button one is used to send message.
    Other button will be used to receive the data.

    To use the MSMQ name space System.Messaging, you have to go to Tools and
    Component Tab, then Drag and Drop the MessageQueue to the Form (Design View).
    Once you add it, as shown below, code will be added to your application


    Private WithEvents MessageQueue1 As System.Messaging.MessageQueue
    The above code will be added in public class Form1 : System.WinForms.Form
    and one more important line
    Me.MessageQueue1 = New System.Messaging.MessageQueue()
    will be added in Private Sub InitializeComponent()

    While your application initializes it will create the messageQueue1 .
    Once your object has been Created or Instantiated you can use it's methods and Properties.

    In our example we are trying to Send a message to "Smile" Pirvate Queue.
    "Smile"is a Queue name which we are using in the example. It's not a system Queue.

    The code below is used for sending the message to a queue when you click Button1 button.

    ****************************

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim q As MessageQueue
    If MessageQueue.Exists(".Private$Smile") Then
    q = New MessageQueue(".Private$Smile")
    Else
    q = MessageQueue.Create(".Private$Smile")
    End If

    Dim BW As New BinaryWriter(New MemoryStream())
    bw.Write(textbox1.Text)
    Dim m As New Messaging.Message()
    m.BodyStream = BW.BaseStream
    m.Label = "Sri Test Message"

    q.Send(m)
    msgbox("Message sent successfully",
    Microsoft.VisualBasic.MsgBoxStyle.Information, "MSMQ Message")

    End Sub

    ******************************

    When you click the command one first i am checking for Queue if queue is not there
    then i am creating the Queue , if queue is the i am sending the message to the queue
    usingn Send method.
    Send Can basically will have two arguments a) Message b) Label for that message.

    Button Two will help you to receive the messages:
    ******************************

    Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim q As MessageQueue
    Dim m As Messaging.Message
    Dim Br As BinaryReader
    Dim x As String

    If MessageQueue.Exists(".Private$Smile") Then
    q = New MessageQueue(".Private$Smile")
    Else
    q = MessageQueue.Create(".Private$Smile")
    End If


    Try
    m = q.Receive(New TimeSpan(0, 0, 3))
    Br = New BinaryReader(m.BodyStream)
    x = New String(Br.ReadChars(CInt(m.BodyStream.Length)))
    Catch
    x = "(no message)"

    End Try
    msgbox(x, Microsoft.VisualBasic.MsgBoxStyle.Information, "MSMQ Message")

    End Sub

    ********************************
    If you look into the code, basically I am testing for the existence of the Smile Private Queue.
    If it is not there, I am popping up a message box. If it is there, then I am instantiating
    a PostMessage as a Message Queue.

    Here I have to explain one thing. The message object holds the result of the received message.
    So here I am using m as the message object, and we also created a TimeSpan object from the
    System name space. The TimeSpan object will tell how long to wait for the Receive
    method before timing out (hours, minutes, seconds).
    Before .Net, we could simply set a message object Body property to a string value.
    But in Dot Net the data will be automatically wrapped in XML using SOAP encoding.
    It makes consistent with other languages with in Dot Net.

    Note:
    Take care with the following Steps:
    1. Must install MSMQ on your machine.
    2. Drag and Drop the Message Queue into your Design Form.
    3. You must be using System.Messaging;
    4. Must declare a message for receiving messages. Here we declared as m.
    5. Build the code before running.


    Author:
    Sreedhar Koganti
    Working in Unisys as a Technical Team Lead
    Expertixe in ASP,COM+,XML,SOAP,NTService,VB, Drop of .Net
    Article Writer in asptoday.com,Aspalliance.com,aspfree.com
    ***********************************************************


    DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

    More ASP.NET Articles
    More By aspfree

     

    IBM® developerWorks developerWorks - FREE Tools!


    NEW! Run your first CICS application on a PC using TXSeries for Windows

    Learn the basics of the IBM Customer Information Control System (CICS). With a hands-on exercise, learn how to get your first CICS application up and running on your desktop using TXSeries V6.1 for Windows. The tutorial shows you how to download and install a free trial version of TXSeries V6.1.
    FREE! Go There Now!


    NEW! The dirty dozen: preventing common application-level hack attacks

    As organizations have grown increasingly dependent on online software, the risk of malicious attacks has also become far more serious. Fortunately, well-governed organizations can protect their Web applications by injecting vulnerability assessments and ethical hacks into their software development and delivery processes. This paper describes 12 of the most common hacker attacks and provides basic rules that you can follow to help create more hack-resistant Web applications.
    FREE! Go There Now!


    NEW! Webcast: Extreme transaction processing with WebSphere Extended Deployment

    In this webcast, you'll get an introduction to the eXtreme Transaction Processing (XTP) features of WebSphere Extended Deployment and the common architectural traits required by XTP applications. See how WebSphere Extended Deployment's ObjectGrid feature provides a state-of-the-art infrastructure for hosting XTP applications.
    FREE! Go There Now!


    NEW! Build Web services with transport-level security using Rational Application Developer V7, Part 1: Build Web services and Web services clients

    Build secure Web services with transport-level security using IBM Rational Application Developer V7 and IBM WebSphere Application Server V6.1. Follow this three-part series for step-by-step instructions about how to develop Web services and clients, configure HTTP basic authentication, and configure HTTP over SSL (HTTPS). This first part of the series walks you through building a Web service for a simple calculator application. You generate and test two different types of Web services clients: a Java Platform, Enterprise Edition (Java EE) client and a stand-alone Java client. You also handle user-defined exceptions in Web services.
    FREE! Go There Now!


    Role of Integrated Requirements Management in Software Delivery

    As organizations integrate software into every aspect of business, they are constantly pressured to deliver faster, better, and cheaper results. Unfortunately, a “dis-integrated” software delivery approach reduces returns while increasing costs. This IBM Rational White Paper shows how Integrated Requirements Management aligns organizations around maximizing value and keeping pace with change.
    FREE! Go There Now!


    NEW! Whitepaper: Delivering SOA solutions: service lifecycle management

    The unprecedented scope of a service-oriented architecture (SOA) initiative brings to the forefront a number of management and governance issues that were sidestepped in the past. The key to a successful SOA implementation is managing and governing activities throughout the entire SOA delivery lifecycle by ensuring that services conform to the needs of all of the business’s stakeholders. Learn how service lifecycle management allows the business to ensure that the process by which services are defined, created, tested, deployed, optimized and retired is manageable, repeatable and auditable.
    FREE! Go There Now!


    NEW! Best practices for software analysis: An introduction to the IBM Rational Software Analyzer application

    This whitepaper presents the benefits of successfully introducing static analysis into your organization using IBM Rational Software Analyzer. Additionally, it identifies some common pitfalls that can hinder the effective use of static analysis tooling as well as presents 10 simple strategies designed to help you quickly realize the value of static analysis using Rational Software Analyzer.
    FREE! Go There Now!


    NEW! Accelerating Software Innovation on i on Power Systems

    Attend this launch webcast with Scott Hebner, Vice President of IBM Rational Marketing and Strategy, for an overview of Rational’s new software offerings and resources to help modernize and accelerate software innovation on i on Power Systems – while ensuring past application investments are protected and continue to grow. Learn how these solutions are helping customers extend their core i5/OS solutions toward modern architectures such as SOA and web technologies to deliver business improvements that stand the test of time.
    FREE! Go There Now!


    NEW! The role of integrated requirements management in software delivery

    This paper is about the critical role that a discipline called integrated require­ments management can play in helping to ensure that your business goals and IT investments are continuously aligned—whether you are sourcing, integrat­ing, building or maintaining software. It also looks at ways that automated IBM Rational® products can work together to help you use requirements in the very best way.
    FREE! Go There Now!


    NEW! Rational Talks to You:Per Kroll on Rational Method Composer Plug-in customization

    Join this Rational Talks to You teleconference on December 11 at 1:00 pm ET to get tips on building your own plugins with Rational Method Composer. Get your questions answered!
    FREE! Go There Now!



    All FREE IBM® developerWorks Tools!

    ASP.NET ARTICLES

    - ASP.NET DotNetNuke Installation with Visual ...
    - Using ASP.NET with a MySQL Database
    - Using ASP.NET with an MS Access Database
    - Adding Content to a Static ASP.NET Website
    - Building a Static ASP.NET Website in a Basic...
    - Develop Your First ASP.NET Website with Visu...
    - Run ASP.NET in Windows XP Home with Cassini ...
    - How to Test a Web Application
    - How to Add Code and Validation Controls to a...
    - Working in Source and Split Views to Build a...
    - How to Build a Web Form for a One-Page Web A...
    - How to Develop a One-Page Web Application
    - An ASP.NET Web Application in Action
    - Developing ASP.NET Web Applications
    - An Introduction to ASP.NET Web Programming





    © 2003-2010 by Developer Shed. All rights reserved. DS Cluster 12 Hosted by Hostway
    For more Enterprise Application Development news, visit eWeek