CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 2 of 2
  1. #1
    Join Date
    May 2010
    Posts
    2

    Chatbot -text gets double processed

    I'm building a chatbot for an external chatprogram. However, if my input in the chatprogram is, for example "1", in the console window it gets double processed:

    21
    [12:53] <new1234> 1
    21
    [12:53] <new1234> 1

    I don't understand why this happens.

    Code:
    while (1)
    		{
    			
    				
    			
    			
    			LRESULT length = SendMessage(childchat, WM_GETTEXTLENGTH, 0, 0);
    		
    			if (length != 0)
    		
    			{
    			
    				//new text, try to read
    			
    				SendMessage(childchat, WM_GETTEXT, length, (LPARAM)text); 
    				
    				char key[] = "!hibot";
    				char greet[] = "hey!";
    				char* greetfound; 
    			        greetfound = strstr(text, key);
    
    				if(greetfound !=0)
    				{
    				
    
    					
    				SendMessage(childedit, WM_SETTEXT, 0, (LPARAM)greet);
    				PostMessage(childedit, WM_KEYDOWN, VK_RETURN, 0);
    				
    
    
    				}
    
    				cout << length << "\n";
    				cout << text << "\n";
    				length = 0;
    				
    				SendMessage(childedit, WM_SETTEXT, 0, (LPARAM)clear);
    				PostMessage(childedit, WM_KEYDOWN, VK_RETURN, 0);
    				
    				
    				
    
    			}
    			
    		}

  2. #2
    Join Date
    May 2010
    Posts
    2

    Re: Chatbot -text gets double processed

    Addition:

    I now see the length = 0; is useless, i removed this.

    -----------
    SendMessage(childedit, WM_SETTEXT, 0, (LPARAM)clear);
    PostMessage(childedit, WM_KEYDOWN, VK_RETURN, 0);

    With this I'm sending a /clearchat command to the chatprogram, to prevent it from processing the same text over and over again.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured