Hey, everyone. I had a place recently where I wanted to make a quick call to the server for something, but didn't want to load JSRS or MSRS or use frames or layers or anything, so I hacked up a cookie-based RS call that works nicely for small needs. I think I got the germ of the idea from the DYNAPI discussion list. I make an image object, set its src to the server-side file, with a parameter and a unique time (to avoid the cache), and the server-side thing just returns an empty document (which will do nothing to the image anyhow) but sets a cookie on the client. Then I check for it a few times with a delay between checks and run the success callback if found, or the failure callback if the cookie never got set. You can return up to 4k of text, I think, with this method. I haven't got a full running example, but here is all the code you should need to do it yourself, so have a bash at it. Have fun... - Brent - ------------------ client side stuff: ------------------ function requestRSCookie( parm, cbSuccess, cbFailure ){ var i = new Image(); var d = new Date(); document.cookie = "RSCookie=x; expires=Fri, 31 Dec 1999 23:59:59 GMT;"; i.src = "cookieRS.asp?u=" + d.getTime() + "&p=" + escape(parm); getRSCookie( 0, cbSuccess, cbFailure ); } function getRSCookie( attempt, cbSuccess, cbFailure var c = getCookie("RSCookie"); if ( c != null ){ cbSuccess( c ); } else { if (attempt < 3){ setTimeout( "getRSCookie( " + (attempt+1) +" );",2000); } else { cbFailure(); } } } function getCookie(sName){ var aCookie = document.cookie.split("; "); for (var i=0; i < aCookie.length; i++){ var aCrumb = aCookie[i].split("="); if (sName == aCrumb[0]) return unescape(aCrumb[1]); } return null; } ------------------ server side stuff: ------------------ parm = Request("p") Response.Cookies("RSCookie") = processParm( parm ) Response.End Function processParm( parm ) '...do something here End Function