It must be the name of the search box.
If you check the HTML for EE, there are a bunch of other hidden fields that are sent along with the text typed by the user. You do not know whether any of those are checked by the server and an absence of those may cause the server to return error or just silently return to the page. Who knows ...
You should try by adding all the form fields in your search data. A quick way is to start WireShark and capture a sample search and examine the data sent to the server. Just copy the data part and paste it in your program to do a quick check.
As for the submit, there's really nothing to do. Just post the form data to the URL specified in the "action" attribute of the form. If there's none just post to the current page (PostBack). Also, how you post the data (the format) depends upon the "encoding" attribute of the Form. If it's www-url-encoded, it's like a query-string with url encoded keys and values.
If it's multipart/form-data, then thats a whole diferent story. I believe for your case, it's mostly going to be the www-url-encoded type.
Hope that helps ...