<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VB.Net_Tutorial%2FWindows%2FMicrosoft_Agent</id>
		<title>VB.Net Tutorial/Windows/Microsoft Agent - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VB.Net_Tutorial%2FWindows%2FMicrosoft_Agent"/>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net_Tutorial/Windows/Microsoft_Agent&amp;action=history"/>
		<updated>2026-04-05T01:46:23Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VB.Net_Tutorial/Windows/Microsoft_Agent&amp;diff=3634&amp;oldid=prev</id>
		<title> в 16:40, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net_Tutorial/Windows/Microsoft_Agent&amp;diff=3634&amp;oldid=prev"/>
				<updated>2010-05-26T16:40:30Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 16:40, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VB.Net_Tutorial/Windows/Microsoft_Agent&amp;diff=3635&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net_Tutorial/Windows/Microsoft_Agent&amp;diff=3635&amp;oldid=prev"/>
				<updated>2010-05-26T12:56:11Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Demonstrates microsoft agent==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&amp;quot;Visual Basic.NET How to Program, Second Edition&lt;br /&gt;
&amp;quot;by Harvey M. Deitel (Author), Paul J. Deitel (Author), Tem R. Nieto (Author)&lt;br /&gt;
&amp;quot; Publisher: Prentice Hall; 2 edition (December 11, 2001)&lt;br /&gt;
&amp;quot; Language: English&lt;br /&gt;
&amp;quot; ISBN-10: 0130293636&lt;br /&gt;
&amp;quot; ISBN-13: 978-0130293633&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Imports System.Collections&lt;br /&gt;
Imports System.Windows.Forms&lt;br /&gt;
Public Class FrmAgent&lt;br /&gt;
   Inherits System.Windows.Forms.Form&lt;br /&gt;
   &amp;quot; options&lt;br /&gt;
   Friend WithEvents GroupBox1 As GroupBox&lt;br /&gt;
   Friend WithEvents cmdSpeak As Button&lt;br /&gt;
   Friend WithEvents mainAgent As AxAgentObjects.AxAgent&lt;br /&gt;
   &amp;quot; input boxes&lt;br /&gt;
   Friend WithEvents txtLocation As TextBox&lt;br /&gt;
   Friend WithEvents txtSpeech As TextBox&lt;br /&gt;
   Friend WithEvents characterCombo As System.Windows.Forms.ruboBox&lt;br /&gt;
   Friend WithEvents actionsCombo As System.Windows.Forms.ruboBox&lt;br /&gt;
   &amp;quot; current agent object&lt;br /&gt;
   Private mSpeaker As AgentObjects.IAgentCtlCharacter&lt;br /&gt;
#Region &amp;quot; Windows Form Designer generated code &amp;quot;&lt;br /&gt;
   Public Sub New()&lt;br /&gt;
      MyBase.New()&lt;br /&gt;
      &amp;quot;This call is required by the Windows Form Designer.&lt;br /&gt;
      InitializeComponent()&lt;br /&gt;
      &amp;quot;Add any initialization after the InitializeComponent() call&lt;br /&gt;
   End Sub&lt;br /&gt;
   &amp;quot;Form overrides dispose to clean up the component list.&lt;br /&gt;
   Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)&lt;br /&gt;
      If disposing Then&lt;br /&gt;
         If Not (components Is Nothing) Then&lt;br /&gt;
            components.Dispose()&lt;br /&gt;
         End If&lt;br /&gt;
      End If&lt;br /&gt;
      MyBase.Dispose(disposing)&lt;br /&gt;
   End Sub&lt;br /&gt;
   &amp;quot;Required by the Windows Form Designer&lt;br /&gt;
   Private components As System.ruponentModel.IContainer&lt;br /&gt;
   &amp;quot;NOTE: The following procedure is required by the Windows Form Designer&lt;br /&gt;
   &amp;quot;It can be modified using the Windows Form Designer.  &lt;br /&gt;
   &amp;quot;Do not modify it using the code editor.&lt;br /&gt;
   &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()&lt;br /&gt;
      Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(FrmAgent))&lt;br /&gt;
      Me.txtLocation = New System.Windows.Forms.TextBox()&lt;br /&gt;
      Me.GroupBox1 = New System.Windows.Forms.GroupBox()&lt;br /&gt;
      Me.characterCombo = New System.Windows.Forms.ruboBox()&lt;br /&gt;
      Me.cmdSpeak = New System.Windows.Forms.Button()&lt;br /&gt;
      Me.txtSpeech = New System.Windows.Forms.TextBox()&lt;br /&gt;
      Me.actionsCombo = New System.Windows.Forms.ruboBox()&lt;br /&gt;
      Me.mainAgent = New AxAgentObjects.AxAgent()&lt;br /&gt;
      Me.GroupBox1.SuspendLayout()&lt;br /&gt;
      CType(Me.mainAgent, System.ruponentModel.ISupportInitialize).BeginInit()&lt;br /&gt;
      Me.SuspendLayout()&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;txtLocation&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.txtLocation.Location = New System.Drawing.Point(16, 24)&lt;br /&gt;
      Me.txtLocation.Name = &amp;quot;txtLocation&amp;quot;&lt;br /&gt;
      Me.txtLocation.Size = New System.Drawing.Size(272, 20)&lt;br /&gt;
      Me.txtLocation.TabIndex = 0&lt;br /&gt;
      Me.txtLocation.Text = &amp;quot;C:\WINNT\msagent\chars\&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;GroupBox1&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.GroupBox1.Controls.AddRange(New System.Windows.Forms.Control() {Me.characterCombo, Me.txtLocation})&lt;br /&gt;
      Me.GroupBox1.Location = New System.Drawing.Point(8, 104)&lt;br /&gt;
      Me.GroupBox1.Name = &amp;quot;GroupBox1&amp;quot;&lt;br /&gt;
      Me.GroupBox1.Size = New System.Drawing.Size(440, 56)&lt;br /&gt;
      Me.GroupBox1.TabIndex = 1&lt;br /&gt;
      Me.GroupBox1.TabStop = False&lt;br /&gt;
      Me.GroupBox1.Text = &amp;quot;Charcter Name/Location&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;characterCombo&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.characterCombo.Enabled = False&lt;br /&gt;
      Me.characterCombo.Items.AddRange(New Object() {&amp;quot;Genie&amp;quot;, &amp;quot;Merlin&amp;quot;, &amp;quot;Peedy&amp;quot;, &amp;quot;Robby&amp;quot;})&lt;br /&gt;
      Me.characterCombo.Location = New System.Drawing.Point(304, 24)&lt;br /&gt;
      Me.characterCombo.Name = &amp;quot;characterCombo&amp;quot;&lt;br /&gt;
      Me.characterCombo.Size = New System.Drawing.Size(128, 21)&lt;br /&gt;
      Me.characterCombo.TabIndex = 1&lt;br /&gt;
      Me.characterCombo.Text = &amp;quot;Select A Character&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;cmdSpeak&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.cmdSpeak.Enabled = False&lt;br /&gt;
      Me.cmdSpeak.Location = New System.Drawing.Point(328, 24)&lt;br /&gt;
      Me.cmdSpeak.Name = &amp;quot;cmdSpeak&amp;quot;&lt;br /&gt;
      Me.cmdSpeak.Size = New System.Drawing.Size(104, 32)&lt;br /&gt;
      Me.cmdSpeak.TabIndex = 3&lt;br /&gt;
      Me.cmdSpeak.Text = &amp;quot;Speak&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;txtSpeech&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.txtSpeech.Enabled = False&lt;br /&gt;
      Me.txtSpeech.Location = New System.Drawing.Point(8, 16)&lt;br /&gt;
      Me.txtSpeech.Multiline = True&lt;br /&gt;
      Me.txtSpeech.Name = &amp;quot;txtSpeech&amp;quot;&lt;br /&gt;
      Me.txtSpeech.Size = New System.Drawing.Size(280, 80)&lt;br /&gt;
      Me.txtSpeech.TabIndex = 5&lt;br /&gt;
      Me.txtSpeech.Text = &amp;quot;&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;actionsCombo&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.actionsCombo.Enabled = False&lt;br /&gt;
      Me.actionsCombo.Location = New System.Drawing.Point(312, 72)&lt;br /&gt;
      Me.actionsCombo.Name = &amp;quot;actionsCombo&amp;quot;&lt;br /&gt;
      Me.actionsCombo.Size = New System.Drawing.Size(128, 21)&lt;br /&gt;
      Me.actionsCombo.TabIndex = 7&lt;br /&gt;
      Me.actionsCombo.Text = &amp;quot;Select an Action&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;mainAgent&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.mainAgent.Enabled = True&lt;br /&gt;
      Me.mainAgent.Location = New System.Drawing.Point(304, 24)&lt;br /&gt;
      Me.mainAgent.Name = &amp;quot;mainAgent&amp;quot;&lt;br /&gt;
      Me.mainAgent.OcxState = CType(resources.GetObject(&amp;quot;mainAgent.OcxState&amp;quot;), System.Windows.Forms.AxHost.State)&lt;br /&gt;
      Me.mainAgent.Size = New System.Drawing.Size(32, 32)&lt;br /&gt;
      Me.mainAgent.TabIndex = 8&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;FrmAgent&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)&lt;br /&gt;
      Me.ClientSize = New System.Drawing.Size(448, 165)&lt;br /&gt;
      Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.mainAgent, Me.actionsCombo, Me.txtSpeech, Me.cmdSpeak, Me.GroupBox1})&lt;br /&gt;
      Me.Name = &amp;quot;FrmAgent&amp;quot;&lt;br /&gt;
      Me.Text = &amp;quot;Microsoft Agent&amp;quot;&lt;br /&gt;
      Me.GroupBox1.ResumeLayout(False)&lt;br /&gt;
      CType(Me.mainAgent, System.ruponentModel.ISupportInitialize).EndInit()&lt;br /&gt;
      Me.ResumeLayout(False)&lt;br /&gt;
   End Sub&lt;br /&gt;
#End Region&lt;br /&gt;
   &amp;quot; keyDown event handler for locationTextBox&lt;br /&gt;
   Private Sub txtLocation_KeyDown(ByVal sender As _&lt;br /&gt;
      Object, ByVal e As System.Windows.Forms.KeyEventArgs) _&lt;br /&gt;
      Handles txtLocation.KeyDown&lt;br /&gt;
      If e.KeyCode = Keys.Enter Then&lt;br /&gt;
         &amp;quot; set character location to text box value&lt;br /&gt;
         Dim location As String = txtLocation.Text&lt;br /&gt;
         &amp;quot; initialize characters&lt;br /&gt;
         Try&lt;br /&gt;
            &amp;quot; load characters into agent object&lt;br /&gt;
            mainAgent.Characters.Load( _&lt;br /&gt;
               &amp;quot;Genie&amp;quot;, location + &amp;quot;Genie.acs&amp;quot;)&lt;br /&gt;
            mainAgent.Characters.Load( _&lt;br /&gt;
               &amp;quot;Merlin&amp;quot;, location + &amp;quot;Merlin.acs&amp;quot;)&lt;br /&gt;
            mainAgent.Characters.Load( _&lt;br /&gt;
               &amp;quot;Peedy&amp;quot;, location + &amp;quot;Peedy.acs&amp;quot;)&lt;br /&gt;
            mainAgent.Characters.Load( _&lt;br /&gt;
               &amp;quot;Robby&amp;quot;, location + &amp;quot;Robby.acs&amp;quot;)&lt;br /&gt;
            &amp;quot; disable TextBox location and enable other controls&lt;br /&gt;
            txtLocation.Enabled = False&lt;br /&gt;
            txtSpeech.Enabled = True&lt;br /&gt;
            cmdSpeak.Enabled = True&lt;br /&gt;
            characterCombo.Enabled = True&lt;br /&gt;
            actionsCombo.Enabled = True&lt;br /&gt;
            &amp;quot; set current character to Genie and show&lt;br /&gt;
            mSpeaker = mainAgent.Characters(&amp;quot;Genie&amp;quot;)&lt;br /&gt;
            GetAnimationNames() &amp;quot; obtain animation name list&lt;br /&gt;
            mSpeaker.Show(0)&lt;br /&gt;
         Catch fileNotFound As FileNotFoundException&lt;br /&gt;
            MessageBox.Show(&amp;quot;Invalid character location&amp;quot;, _&lt;br /&gt;
               &amp;quot;Error&amp;quot;, MessageBoxButtons.OK, _&lt;br /&gt;
               MessageBoxIcon.Error)&lt;br /&gt;
         End Try&lt;br /&gt;
      End If&lt;br /&gt;
   End Sub &amp;quot; txtLocation_KeyDown&lt;br /&gt;
   &amp;quot; speak button event handler&lt;br /&gt;
   Private Sub cmdSpeak_Click(ByVal sender As Object, _&lt;br /&gt;
      ByVal e As System.EventArgs) Handles cmdSpeak.Click&lt;br /&gt;
      &amp;quot; if TextBox is empty, have character ask&lt;br /&gt;
      &amp;quot; user to type words into TextBox, otherwise&lt;br /&gt;
      &amp;quot; have character say words in TextBox&lt;br /&gt;
      If txtSpeech.Text = &amp;quot;&amp;quot; Then&lt;br /&gt;
         mSpeaker.Speak( _&lt;br /&gt;
            &amp;quot;Please type the words you want me to speak&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
      Else&lt;br /&gt;
         mSpeaker.Speak(txtSpeech.Text, &amp;quot;&amp;quot;)&lt;br /&gt;
      End If&lt;br /&gt;
   End Sub &amp;quot; cmdSpeak_Click&lt;br /&gt;
   &amp;quot; click event for agent&lt;br /&gt;
   Private Sub mainAgent_ClickEvent(ByVal sender As Object, _&lt;br /&gt;
      ByVal e As AxAgentObjects._AgentEvents_ClickEvent) _&lt;br /&gt;
      Handles mainAgent.ClickEvent&lt;br /&gt;
      mSpeaker.Play(&amp;quot;Confused&amp;quot;)&lt;br /&gt;
      mSpeaker.Speak(&amp;quot;Why are you poking me?&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
      mSpeaker.Play(&amp;quot;RestPose&amp;quot;)&lt;br /&gt;
   End Sub &amp;quot; mainAgent_ClickEvent&lt;br /&gt;
   &amp;quot; comboBox changed event, switch active agent&lt;br /&gt;
   Private Sub characterCombo_SelectedIndexChanged(ByVal _&lt;br /&gt;
      sender As Object, ByVal e As System.EventArgs) Handles _&lt;br /&gt;
      characterCombo.SelectedIndexChanged&lt;br /&gt;
      ChangeCharacter(characterCombo.Text)&lt;br /&gt;
   End Sub &amp;quot; characterCombo_SelectedIndexChanged&lt;br /&gt;
   &amp;quot; hide current character and show new&lt;br /&gt;
   Private Sub ChangeCharacter(ByVal name As String)&lt;br /&gt;
      mSpeaker.Hide(0)&lt;br /&gt;
      mSpeaker = mainAgent.Characters(name)&lt;br /&gt;
      GetAnimationNames() &amp;quot; regenerate animation name list&lt;br /&gt;
      mSpeaker.Show(0)&lt;br /&gt;
   End Sub &amp;quot; ChangeCharacter&lt;br /&gt;
   &amp;quot; get animation names and store in arraylist&lt;br /&gt;
   Private Sub GetAnimationNames()&lt;br /&gt;
      &amp;quot; ensure thread safety&lt;br /&gt;
      SyncLock (Me)&lt;br /&gt;
         &amp;quot; get animation names&lt;br /&gt;
         Dim enumerator As IEnumerator = _&lt;br /&gt;
            mainAgent.Characters.Character( _&lt;br /&gt;
            mSpeaker.Name).AnimationNames.GetEnumerator()&lt;br /&gt;
         Dim voiceString As String&lt;br /&gt;
         &amp;quot; clear cboActions combo box&lt;br /&gt;
         actionsCombo.Items.Clear()&lt;br /&gt;
         mSpeaker.rumands.RemoveAll()&lt;br /&gt;
         &amp;quot; copy enumeration to ArrayList&lt;br /&gt;
         While enumerator.MoveNext()&lt;br /&gt;
            &amp;quot; remove underscores in speech string&lt;br /&gt;
            voiceString = Convert.ToString(enumerator.Current)&lt;br /&gt;
            voiceString = voiceString.Replace(&amp;quot;_&amp;quot;, &amp;quot;underscore&amp;quot;)&lt;br /&gt;
            actionsCombo.Items.Add(enumerator.Current)&lt;br /&gt;
            &amp;quot; add all animations as voice enabled commands&lt;br /&gt;
            mSpeaker.rumands.Add(Convert.ToString( _&lt;br /&gt;
               enumerator.Current), , voiceString, True, False)&lt;br /&gt;
         End While&lt;br /&gt;
         &amp;quot; add custom command&lt;br /&gt;
         mSpeaker.rumands.Add(&amp;quot;MoveToMouse&amp;quot;, &amp;quot;MoveToMouse&amp;quot;, _&lt;br /&gt;
            &amp;quot;MoveToMouse&amp;quot;, True, True)&lt;br /&gt;
      End SyncLock&lt;br /&gt;
   End Sub &amp;quot; GetAnimationNames&lt;br /&gt;
   &amp;quot; user selects new action&lt;br /&gt;
   Private Sub actionsCombo_SelectedIndexChanged(ByVal sender _&lt;br /&gt;
      As System.Object, ByVal e As System.EventArgs) _&lt;br /&gt;
      Handles actionsCombo.SelectedIndexChanged&lt;br /&gt;
      mSpeaker.Stop()&lt;br /&gt;
      mSpeaker.Play(actionsCombo.Text)&lt;br /&gt;
      mSpeaker.Play(&amp;quot;RestPose&amp;quot;)&lt;br /&gt;
   End Sub &amp;quot; actionsCombo_SelectedIndexChanged&lt;br /&gt;
   &amp;quot; handles agent commands&lt;br /&gt;
   Private Sub mainAgent_Command(ByVal sender As Object, _&lt;br /&gt;
      ByVal e As AxAgentObjects._AgentEvents_CommandEvent) _&lt;br /&gt;
      Handles mainAgent.rumand&lt;br /&gt;
      &amp;quot; get UserInput object&lt;br /&gt;
      Dim command As AgentObjects.IAgentCtlUserInput = _&lt;br /&gt;
         CType(e.userInput, AgentObjects.IAgentCtlUserInput)&lt;br /&gt;
      &amp;quot; change character if user speaks character name&lt;br /&gt;
      If (command.Voice = &amp;quot;Peedy&amp;quot; OrElse _&lt;br /&gt;
         command.Voice = &amp;quot;Robby&amp;quot; OrElse _&lt;br /&gt;
         command.Voice = &amp;quot;Merlin&amp;quot; OrElse _&lt;br /&gt;
         command.Voice = &amp;quot;Genie&amp;quot;) Then&lt;br /&gt;
         ChangeCharacter(command.Voice)&lt;br /&gt;
         Return&lt;br /&gt;
      End If&lt;br /&gt;
      &amp;quot; send agent to mouse&lt;br /&gt;
      If command.Name = &amp;quot;MoveToMouse&amp;quot; Then&lt;br /&gt;
         mSpeaker.MoveTo(Convert.ToInt16( _&lt;br /&gt;
            Cursor.Position.X - 60), Convert.ToInt16( _&lt;br /&gt;
            Cursor.Position.Y - 60))&lt;br /&gt;
         Return&lt;br /&gt;
      End If&lt;br /&gt;
      &amp;quot; play new animation&lt;br /&gt;
      mSpeaker.Stop()&lt;br /&gt;
      mSpeaker.Play(command.Name)&lt;br /&gt;
   End Sub &amp;quot; mainAgent_Command&lt;br /&gt;
End Class &amp;quot; FrmAgent&lt;br /&gt;
&lt;br /&gt;
&amp;quot; *************************************************************&lt;br /&gt;
&amp;quot; * (C) Copyright 2002 by Deitel &amp;amp; Associates, Inc.           *&lt;br /&gt;
&amp;quot; *     and Prentice Hall.                                    *&lt;br /&gt;
&amp;quot; * All Rights Reserved.                                      *&lt;br /&gt;
&amp;quot; *                                                           *&lt;br /&gt;
&amp;quot; * DISCLAIMER: The authors and publisher of this book have   *&lt;br /&gt;
&amp;quot; * used their best efforts in preparing the book. These      *&lt;br /&gt;
&amp;quot; * efforts include the development, research, and testing of *&lt;br /&gt;
&amp;quot; * the theories and programs to determine their              *&lt;br /&gt;
&amp;quot; * effectiveness. The authors and publisher make no warranty *&lt;br /&gt;
&amp;quot; * of any kind, expressed or implied, with regard to these   *&lt;br /&gt;
&amp;quot; * programs or to the documentation contained in these books.*&lt;br /&gt;
&amp;quot; * The authors and publisher shall not be liable in any event*&lt;br /&gt;
&amp;quot; * for incidental or consequential damages in connection     *&lt;br /&gt;
&amp;quot; * with, or arising out of, the furnishing, performance, or  *&lt;br /&gt;
&amp;quot; * use of these programs.                                    *&lt;br /&gt;
&amp;quot; *************************************************************&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>