?
Solved

TWebbrowser ASPX FORM with attribute __smartNavEnabled causing grief - spoof  User Agent header or ?

Posted on 2005-04-19
23
Medium Priority
?
1,261 Views
Last Modified: 2013-11-23
I am using TWebbrowser in Delphi 5. I am having problems with an ASPX
page that is using smart navigation. In the FORM tag there is an
attribute "___smartnavenabled=true"

I am thinking the best way to disable this is to hide the
fact that the browser is IE.

Is there anyway, i can spoof another browser, like say Opera, so that
the web site turns off this smart navigation crapola?

I have tried these already and they failed to work as expected ->


HTMLElement.setAttribute('__smartNavEnabled', false, 0)

nor this

HTMLElement.setAttribute('__smartNavEnabled', 'false', 0)


seemed to have any effect.

I tried to set the Headers in the BeforeNavigate event with

Headers := 'User Agent : Opera 6.x yada yada';

but to no avail.    Unfortunately, using TWebbrowserWB from EuroMind is not an option.


However, if I check the source for the site when I
navigate with Opera no smart nav stuff is in the FORM tag, but if I
use IE the stuff ends up in the FORM tag.

Perhaps there is an easy way to rewrite the entire FORM tag with new
attributes?

Thanks,
AW
0
Comment
Question by:ARW
  • 11
  • 10
22 Comments
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13825120
<< Perhaps there is an easy way to rewrite the entire FORM tag with new attributes? >>

Well, yes that could be done, but the server may be expecting that so it may not be prudent to disable
it in that manner.

Do you have the URL so we can do testing?
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13825412
Changing the headers in BeforeNavigate2 can not be done as it is not a var parameter.
0
 

Author Comment

by:ARW
ID: 13825614
http://www.co.navajo.az.us/theCountyRecorder/DataSearch/Searchhome.aspx

you use 206-02-014-D to do a parcel search.

SHould find a property, then click on select button.  

This is where the problem occurs.  The results page comes back inconsistently.  It often works the first time, but subsequent searchs appear to not come back.  However, watching it in debug, there are two document complete events one for the results.asp page and another for the IFRAME smart navigation stuff.  Unfortunately, when everything is done loading, it appears that the browser has not reacted to the button click.

Thanks
aw

0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 26

Accepted Solution

by:
Eddie Shipman earned 480 total points
ID: 13826226
It exhibitied the same behaiviour in IE of you selected an invalid parcel and then tried
to search again.

Looks like you may have to go with the Mozilla ActiveX control:

http://www.paranoia.clara.net/articles/taming_the_lizard_with_delphi.html

0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13826258
But in using it, I also see the same behaviour as in IE. AND I see it in Mozilla Firefox, too.
So, it is a product of the site, not the browser!
0
 

Author Comment

by:ARW
ID: 13826302
what behavior did you see in IE?

What about changing the registry setting for user agent in IE for the sesion and then changin it back?

aw
0
 
LVL 23

Expert Comment

by:b1xml2
ID: 13826696
Just letting you guys know, that what smart navigation gets up to is that it has a hidden IFRAME within which it persists data, so that after each postback, the following is true:

1. No more flickering between postbacks.
2. The previous UI state like scroll bar location, and which HTML element has focus is restored.

Is not widely used because of problem in the real world.
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13826705
It would not show results even on a valid parcel after trying to retrieve an invalid parcel.

AFA changing the registry keys, this if from the Windows Registry Guide:

"Whenever a web browser is used to connect to a remote web server it includes a User Agent string
that contains details about browser and operating system. This tweak allows you to add or remove
additional information from this string.

A standard user agent string would look similar to:
Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)

Which means Internet Explorer 5.5 running on Windows 2000.

Changing the Default User Agent Values
Open your registry and find the key below. If it does not already exist then create it.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]

Create three new string values called "Compatible", "Version" and "Platform". Set them to equal what you
would like to be displayed instead of "compatible", "MSIE 5.5" and "Windows NT 5.0" respectively in the example
above.

You can also modify the value of "(Default)" to change the browser name "Mozilla/4.0" in the example above.

Changing the Branded User Agent String
In addition when a customized user agent string is used it may contain additional information set by the company
that created a branded version of the browser. For example a branded version from an ISP may look like:
Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; Your_ISP_Name)

Since this information is sent to the remote web server it may be stored in the web server log files and therefore
possibly used to track branded versions of a web browser.

To change it open your registry and find the key
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Post Platform].

Each value name listed in this key will be sent to the remote web server as an additional entry in the user agent string.
To remove any additional information delete the values within the [Post Platform] key. To add additional entries create
a string value and name it the string you want to be sent.

Restart Internet Explorer for the changes to take effect."

Hope that helps...
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13826730
"Is not widely used because of problem in the real world."

Now THAT's an understatement.
The browser handles that stuff without that in later versions.
0
 

Author Comment

by:ARW
ID: 13826875
I was not quite sure why there were three registry keys and whether there was a way to toggle between them
0
 

Author Comment

by:ARW
ID: 13827450
one problem witht he regisrey fix is that restarting IE or at least my twebbrowser instance of IE is not  really practical.  I think there is a way to get IE to read the registry again or restart itself without having to restart my app explicitly or destroy my instance.  

What about a THTTP post?  Could I switch back and forth between a THTTP component and TWebbrowser somehow to get this to work?

Thanks
aw
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13834213
Well, in a way, yes, but I think the problem would lie in the fact that the HTML being returned has relative links
and assigning HTMLsource from idHTTP wouldn't work but let me take a look at it again.
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13834764
Yepper, it worked. However, you are going to have to take a good look at the HTML source
and see if there are any more realtive links.
I show you in the code below how to modify them.

procedure ReplaceImageLinks(var AHTML: String);
begin
  AHTML := StringReplace(AHTML, 'images/',
            'http://www.co.navajo.az.us/theCountyRecorder/DataSearch/images/',
            [rfReplaceAll]);
end;

procedure ReplaceFormActionLink(var AHTML: String);
begin
  AHTML := StringReplace(AHTML, 'action="Searchhome.aspx"',
            'action="http://www.co.navajo.az.us/theCountyRecorder/DataSearch/Searchhome.aspx"',
            [rfReplaceAll]);
end;

procedure TForm1.Button1Click
  ( Sender:                    TObject
  );
var
  s:       String;
  IDoc:    IHTMLDocument2;
  v:       Variant;
begin
  if WebBrowser1.Document = nil then
    WebBrowser1.Navigate('about:blank');
  s := idhttp1.Get('http://www.co.navajo.az.us/theCountyRecorder/DataSearch/Searchhome.aspx');
  Idoc := WebBrowser1.Document as IHTMLDocument2;
  try
    IDoc.designMode:='on';
    while IDoc.readyState<>'complete' do
      Application.ProcessMessages;
    v:=VarArrayCreate([0,0],VarVariant);
    ReplaceImageLinks(s);
    ReplaceFormActionLink(s);
    v[0]:= s;
    IDoc.write(PSafeArray(System.TVarData(v).VArray));
    IDoc.designMode:='off';
    while IDoc.readyState<>'complete' do
      Application.ProcessMessages;
  finally
    IDoc := nil;
  end;
end;


Clicking the button again resets the page to the beginning.
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13834765
BTW, add ActiveX and MSHTML to your uses
0
 

Author Comment

by:ARW
ID: 13839059
OK, so let me regurgitate this back to make sure I understand.

Webbrowser1. document has about:blank in it or perhaps it has the searchhome.aspx page in it.

Then you do a GET to get the searchhome.aspx page via THTTP object.

You then fix up the HTML relative links, especially the FORM action attribute in the HTTP component's string of HTML from searchhome.aspx

Then you assign the HTTP's HTML string to the WebBrowser document

Now, I could populate the book - page et cetera of this new WebBrowser document

Then when I click the button that causes the FORM to submit to the web server, the web server does not get the form variables back that trigger it to do this smart navigation crapola, so no more sporadic results?

How many times in a row did you get a good result back?  I actually did different things and sometimes got it to work two times in a row, but never three.  I just wonder if this is another workaround that only works sporadically.

Thank you for your efforts,

AW
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 13842482
I didn't test it multiple times but I will do so today. I think the main problem
is the goofy SmartNav stuff. Like I said before, it produced spurious results even
in IE and Mozilla so their designers are doing something weird.
0
 

Author Comment

by:ARW
ID: 13842655
ES:

I increased the point value, since you are going to take the time to test it.

Thanks Again,

AW
0
 

Author Comment

by:ARW
ID: 13845831
how do I assign IDOC back to WebBrowser1.Document?

thanks
aw
0
 

Author Comment

by:ARW
ID: 13846252
When I try to simulate this manually I get back the following on the post:

<BODY><ASP_SMARTNAV_RDIR url="/theCountyRecorder/DataSearch/Results1.aspx"></ASP_SMARTNAV_RDIR></BODY>


not useful
0
 

Author Comment

by:ARW
ID: 13846537
If I take this web page:


<HTML>
      <HEAD>
            <title>Welcome to Navajo County</title>
            
      </HEAD>
      <body id="BodyTag" leftmargin="0" topmargin="0">
            <table style="WIDTH: 100%; HEIGHT: 100%" bordercolor="steelblue">
                  <tbody>
                        <tr>
                              <td width="126" bgcolor="#4682b4">
                                    <div align="center">
                                          <img id="Image1" src="images/nc-map.gif" alt="" border="0" />
                                    </div>
                              </td>
                              <td bgcolor="#4682b4">
                                    <blockquote dir="ltr" style="MARGIN-RIGHT: 0px">
                                          <p align="center">
                                          </p>
                                          <p>
                                          </p>
                                          <blockquote>
                                                <h1 align="center"><font face="Arial" color="white"> Assessor Parcel Search</font>
                                                </h1>
                                          </blockquote></blockquote>
                              </td>
                              <td valign="middle" bgcolor="#4682b4">
                                    <p align="center">
                                          <img id="Image2" src="images/seal.jpg" alt="" border="0" />
                                    </p>
                              </td>
                        </tr>
                        <tr valign="top">
                              <td valign="top" bgcolor="#4682b4">
                                    <p>
                                          <br>
                                          &nbsp;
                                          <a id="HyperLink1" href="http://www.co.navajo.az.us/">Back to the Navajo County home page</a>
                                    </p>
                              </td>
                              <td id="TD1" valign="top" align="center">
                                    <form name="Form1" method="post" action="http://www.co.navajo.az.us/theCountyRecorder/DataSearch/Searchhome.aspx" language="javascript" onsubmit="if (DefaultButton_RequireOwnPostback(this) ) { return false; }; " id="Form1">
<input type="hidden" name="__EVENTTARGET" value="btnOwnerNameSearch" />
<input type="hidden" name="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" value="dDwtMTQ0MDUwNzEzOTt0PDtsPGk8OD47PjtsPHQ8O2w8aTwxPjs+O2w8dDw7bDxpPDExPjtpPDEzPjtpPDE1PjtpPDE3PjtpPDMxPjtpPDM3PjtpPDQxPjtpPDQzPjtpPDQ1Pjs+O2w8dDxwPHA8bDxUZXh0Oz47bDwyMDY7Pj47Pjs7Pjt0PHA8cDxsPFRleHQ7PjtsPDAyOz4+Oz47Oz47dDxwPHA8bDxUZXh0Oz47bDwwMTQ7Pj47Pjs7Pjt0PHA8cDxsPFRleHQ7PjtsPEQ7Pj47Pjs7Pjt0PHA8cDxsPEVuYWJsZWQ7PjtsPG88Zj47Pj47Pjs7Pjt0PHA8cDxsPEVuYWJsZWQ7PjtsPG88Zj47Pj47Pjs7Pjt0PHQ8cDxwPGw8VmlzaWJsZTs+O2w8bzxmPjs+Pjs+OztsPGk8MD47Pj47Oz47dDxwPHA8bDxUZXh0Oz47bDxTb3JyeSwgbm8gcmVjb3JkcyB3ZXJlIGZvdW5kIGZvciB5b3VyIHNlYXJjaCBwYXJhbWV0ZXJzLiAgUGxlYXNlIHVzZSB5b3VyIGJhY2sgYnV0dG9uIHRvIHRyeSBhbm90aGVyIHNlYXJjaC47Pj47Pjs7Pjt0PEAwPHA8cDxsPEN1cnJlbnRQYWdlSW5kZXg7UGFnZUNvdW50O18hSXRlbUNvdW50O18hRGF0YVNvdXJjZUl0ZW1Db3VudDtEYXRhS2V5czs+O2w8aTwwPjtpPDE+O2k8MT47aTwxPjtsPD47Pj47Pjs7Ozs7Ozs7Ozs+O2w8aTwwPjs+O2w8dDw7bDxpPDI+Oz47bDx0PDtsPGk8MT47aTwyPjtpPDM+Oz47bDx0PHA8cDxsPFRleHQ7PjtsPDIwNi0wMi0wMTREOz4+Oz47Oz47dDxwPHA8bDxUZXh0Oz47bDwyOTUxICAgIEFaIEhXWSAyNjA7Pj47Pjs7Pjt0PHA8cDxsPFRleHQ7PjtsPFdJTExJUyBNQVJTSEFMTCAmIFJPQllOIENQUlMgICAgICAgICAgICA7Pj47Pjs7Pjs+Pjs+Pjs+Pjs+Pjs+Pjs+Pjs+k60esj/FDGvHX14x7EFj7HgS1wc=" />

<script language="javascript" type="text/javascript">
<!--
      function __doPostBack(eventTarget, eventArgument) {
            var theform;
            if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1) {
                  theform = document.Form1;
            }
            else {
                  theform = document.forms["Form1"];
            }
            theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
            theform.__EVENTARGUMENT.value = eventArgument;
            theform.submit();
      }
// -->
</script>
<script language="javascript" >
<!--
function DefaultButton_Init() {
      if ( !DefaultButton_BrowserCapable() ) return false;
      
      for( var i=0; i<DefaultButtons.length; i++ ) {
            var defaultButtonSetting = DefaultButtons[i].split("©");
            if ( defaultButtonSetting.length != 3 ) { return; }
            var inputControl = document.getElementById( defaultButtonSetting[0] );
            var postBackScript = defaultButtonSetting[1];
            var causesValidation = ( defaultButtonSetting[2] == 'True' );
            if ( inputControl != null ) {
                  if ( i==0 ) {
                        var theForm = inputControl.form;
                        theForm.EnsureDefault = false;
                        theForm.defaultButtonPostBackScript = "";
                        theForm.causesValidation = false;
                  }
                  inputControl.defaultButtonPostBackScript = postBackScript;
                  inputControl.causesValidation = causesValidation;
                  
                  if ( typeof( inputControl.addEventListener ) != "undefined" ) {
                        inputControl.addEventListener("focus",DefaultButton_RegisterDefault,false);
                        inputControl.addEventListener("blur",DefaultButton_UnRegisterDefault,false);
                  } else if ( typeof ( inputControl.attachEvent ) != "undefined" ) {
                        inputControl.attachEvent("onfocus",DefaultButton_RegisterDefault);
                        inputControl.attachEvent("onblur",DefaultButton_UnRegisterDefault);
                  } else {
                        inputControl.onfocus = DefaultButton_RegisterDefault;
                        inputControl.onblur = DefaultButton_UnRegisterDefault;
                  }
            }
      }
}
function DefaultButton_BrowserCapable() {
      if ( typeof( document.getElementById ) == "undefined" ) {
            if( typeof( document.all ) != "undefined" ) {
                  document.getElementById = function( elementId ) { return document.all[elementId]; };
            } else {
                  return false;
            }
      }
      return true;
}
function DefaultButton_RegisterDefault(e) {
      var src = DefaultButton_GetSrcElement(e);
      src.form.EnsureDefault = true;
      src.form.defaultButtonPostBackScript = src.defaultButtonPostBackScript;
      src.form.causesValidation = src.causesValidation;
}
function DefaultButton_UnRegisterDefault(e) {
      var src = DefaultButton_GetSrcElement(e);
      src.form.EnsureDefault = false;
      src.form.defaultButtonPostBackScript = "";
      src.form.causesValidation = false;
}
function DefaultButton_RequireOwnPostback(form) {
      if ( form.EnsureDefault && form.defaultButtonPostBackScript != "" ) {
            form.EnsureDefault = false;
            window.setTimeout( 'DefaultButton_Postback( "' + form.defaultButtonPostBackScript + '", ' + form.causesValidation + ');', 10 );
            return true;
      } else {
            return false;
      }
}
function DefaultButton_Postback( postBackScript, causesValidation ) {
      if (typeof(Page_ClientValidate) == 'function' && causesValidation) {
            if (  Page_ClientValidate() ) {
                  eval(postBackScript);
            }
      } else {
            eval(postBackScript);
      }
}
function DefaultButton_GetSrcElement(e) {
      if ( typeof( window.event ) != "undefined" ) {
            return window.event.srcElement;
      }
      if ( e != null && typeof( e.target ) != "undefined" ) {
            return e.target;
      }
      return null;
}
//-->
</script>

      <script language='javascript' type='text/javascript' >
<!--
function MetaBuilders_FirstFocus_Focus( id, name)  {
      var targetControl = MetaBuilders_FirstFocus_FindControl( id, name );
      if ( targetControl != null && targetControl.focus ) {
            targetControl.focus();
      }
}
function MetaBuilders_FirstFocus_FindControl( id, name ) {
      if ( typeof(document.getElementById) != "undefined" ) {
            var focusControl = document.getElementById(id);
            if ( focusControl != null ) {
                  return focusControl;
            }
      }
      for( var i = 0; i < document.forms.length; i++ ) {
            var theForm = document.forms[i];
            var focusControl = theForm[name];
            if ( focusControl != null ) {
                  return focusControl;
            }
      }
      return null;
}
//-->
</script>


                                          
                                          
                                          <P align="left">
                                                <span id="Label4">Assessor data last updated 03/31/05</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                                <span id="Label5">Tax data updated daily</span></P>
                                          <P align="left">
                                                <span id="Label1">Parcel Number:</span>&nbsp;
                                                <input name="txtBook" type="text" value="206" maxlength="3" id="txtBook" tabindex="10" />
                                                <input name="txtMap" type="text" value="02" maxlength="2" id="txtMap" tabindex="20" />
                                                <input name="txtParcel" type="text" value="014" maxlength="3" id="txtParcel" tabindex="30" />
                                                <input name="txtSplit" type="text" value="D" maxlength="2" id="txtSplit" tabindex="40" />&nbsp;
                                                <span id="Label6">(Book-Map-Parcel-Split)</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                                <input type="submit" name="btnParcelNumberSearch" value="Search Parcel Number" id="btnParcelNumberSearch" tabindex="50" /></P>
                                          <P align="left">
                                                <span id="Label2">Street Number:</span>&nbsp;
                                                <input name="txtStreetNumber" type="text" id="txtStreetNumber" tabindex="60" />&nbsp;&nbsp;
                                                <span id="Label3">Street Name:</span>&nbsp;
                                                <input name="txtStreetName" type="text" id="txtStreetName" tabindex="70" />&nbsp;&nbsp;&nbsp;
                                                &nbsp;
                                                <input type="submit" name="btnAddressSearch" value="Search Address" id="btnAddressSearch" disabled="disabled" tabindex="80" /></P>
                                          <P align="left">
                                                <span id="Label7">Owner Name:</span>&nbsp;&nbsp;
                                                <input name="txtOwnerName" type="text" id="txtOwnerName" tabindex="90" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                                &nbsp;
                                                <input type="submit" name="btnOwnerNameSearch" value="Search Owner Name" id="btnOwnerNameSearch" disabled="disabled" tabindex="100" /></P>
                                          <P align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                                &nbsp;&nbsp;
                                                <input type="submit" name="btnClearFields" value="New Search" id="btnClearFields" tabindex="110" />
                                                </P>
                                          <P align="left">
                                                </P>
                                          <P align="left">
                                                <table title="Click the button in the row that has the parcel number you wish to view" cellspacing="1" cellpadding="3" bordercolor="White" border="0" id="DataGrid1" bgcolor="White">
      <tr bgcolor="#4A3C8C">
            <td><font color="#E7E7FF"><b> </b></font></td><td><font color="#E7E7FF"><b>Parcel #</b></font></td><td><font color="#E7E7FF"><b>Address</b></font></td><td><font color="#E7E7FF"><b>Owner Name</b></font></td>
      </tr><tr bgcolor="#DEDFDE">
            <td><font color="Black"><input type="submit" name="DataGrid1:_ctl3:_ctl0" value="Select »»»" /></font></td><td><font color="Black">206-02-014D</font></td><td><font color="Black">2951    AZ HWY 260</font></td><td><font color="Black">WILLIS MARSHALL & ROBYN CPRS            </font></td>
      </tr><tr align="Right" bgcolor="#C6C3C6">
            <td colspan="4"><font color="Black"><span>1</span></font></td>
      </tr>
</table>
                                                </P>
                                    
<script language="javascript" type="text/javascript">
<!--
      var DefaultButtons =  new Array("txtBook©__doPostBack('btnParcelNumberSearch','')©True", "txtMap©__doPostBack('btnParcelNumberSearch','')©True", "txtParcel©__doPostBack('btnParcelNumberSearch','')©True", "txtSplit©__doPostBack('btnParcelNumberSearch','')©True", "txtStreetNumber©__doPostBack('btnAddressSearch','')©True", "txtStreetName©__doPostBack('btnAddressSearch','')©True", "txtOwnerName©__doPostBack('btnOwnerNameSearch','')©True");
            // -->
</script>

                  <script language="javascript">
<!--
DefaultButton_Init();
//-->
</script>

                  <script language='javascript' type='text/javascript'>
<!--
MetaBuilders_FirstFocus_Focus('txtBook', 'txtBook');
// -->
</script>

            </form>
                              </td>

                              <td valign="top">
                                    <p align="center">
                                          <br>
                                          <font face="Arial"><font size="2"><strong><font color="#800000"><font size="1">Navajo County<br>
                                                                        Governmental Complex</font>
                                                                  <br>
                                                            </font></strong></font><font size="1">100 East Carter Drive,<br>
                                                      South Highway 77<br>
                                                      Holbrook, AZ 86025<br>
                                                      Tel: (928) 524-4000<br>
                                                      M - F 8 AM to 5 PM</font></font>
                                    </p>
                                    <hr style="WIDTH: 122px; HEIGHT: 2px" width="122">
                                    <p align="center">
                                          <font face="Arial" size="1"><em>Note: This website is&nbsp;<br>
                                                      work in progress...<br>
                                                      Questions or suggestions?<br>
                                                      e-mail:</em>
                                                <br>
                                          </font><a href="mailto:webmaster@co.navajo.az.us"><font face="Arial" size="1">webmaster@co.navajo.az.us</font></a>
                                    </p>
                                    <hr style="WIDTH: 122px; HEIGHT: 2px" width="122">
                                    <p align="center">
                                          <em><font face="Arial" size="1">Some of the documents<br>
                                                      used on this site are in<br>
                                                      PDF format&nbsp;.<br>
                                                      Get the reader from here:
                                                      <br>
                                                      <a href="http://www.adobe.com/products/acrobat/readstep.html" target="_blank"><img style="Z-INDEX: 100; LEFT: 10px; TOP: 10px" height="31" alt="http://www.adobe.com/products/acrobat/readstep.html"
                                                                  src="images/Get Acrobat Reader.gif" width="88" border="0"></a>&nbsp;</font></em>
                                    </p>
                              </td>
                        </tr>
                  </tbody>
            </table>
      </body>
</HTML>

and store it to a fiel on disk and then open it with IE, I get back the asp_smartnav crapola.  If open the same HTML file with Opera, I get data back!!!!!!

I presume this is due to the user agent header being sent by IE, even though the FORM tag does not have the smartnav stuff.


Somehow I need to press the Select Button inside the HTTP component, so that the Useragent string can be set for the POST.


thanks
aw
0
 

Author Comment

by:ARW
ID: 14211352
Eddie:

Unfortunately, your solution did not work consistently.  I ended up having to use EmbeddedWB to get this to work and pass the server a user-agent header that said I was an old Opera browser.  
That worked.  However, I did use part of your solution, which was to save the web page to disk and replace some of the relative links with explicit URLs.

Is it OK, if I split the points between you and I, 160 to you and the remainder back to me?

Thanks,
aw
0
 
LVL 26

Expert Comment

by:Eddie Shipman
ID: 14214146
I don't think you can do that but you can ask to have the question paq'd with a refund and I will not object.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Shoutout to Emily Plummer (http://www.experts-exchange.com/members/eplummer26.html) for giving me this article! She did most of it, I just finished it up and posted it for her :)    Introduction In a previous article (http://www.experts-exchang…
Originally, this post was published on Monitis Blog, you can check it here . In business circles, we sometimes hear that today is the “age of the customer.” And so it is. Thanks to the enormous advances over the past few years in consumer techno…
The viewer will learn the benefit of using external CSS files and the relationship between class and ID selectors. Create your external css file by saving it as style.css then set up your style tags: (CODE) Reference the nav tag and set your prop…
The viewer will the learn the benefit of plain text editors and code an HTML5 based template for use in further tutorials.
Suggested Courses

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question