Showing posts with label based. Show all posts
Showing posts with label based. Show all posts

Saturday, March 31, 2012

session vaiables lost randomly

i am developing an asp.net web based application using javascript as the server side scripting language. The application makes constant use of an access database and session variables. in a random way, the session variables are lost causing the application to break. The only software on the xp-pro box is iis, .NET framework, office 2003 and 3 com objects: aspmail, aspimage and aspsmartupload. There is no virus detection software.

Anybody have an idea why the session variables are randomly lost ?

thanks, rich"i am developing an asp.net web based application using javascript as the
server side scripting language"
is this possible? What are you using to develope this? Better yet, why are
you using javascript as a serverside .NET language?

--
Curt Christianson
Owner/Lead Developer, DF-Software
Site: http://www.Darkfalz.com
Blog: http://blog.Darkfalz.com

"rich00" <rich00@.discussions.microsoft.com> wrote in message
news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
> i am developing an asp.net web based application using javascript as the
server side scripting language. The application makes constant use of an
access database and session variables. in a random way, the session
variables are lost causing the application to break. The only software on
the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
aspmail, aspimage and aspsmartupload. There is no virus detection software.
> Anybody have an idea why the session variables are randomly lost ?
> thanks, rich
this application is a port from asp to asp.net

asp only suppoted basic or javascript. the choice of javacript over basic was easy.

"rich00" wrote:

> i am developing an asp.net web based application using javascript as the server side scripting language. The application makes constant use of an access database and session variables. in a random way, the session variables are lost causing the application to break. The only software on the xp-pro box is iis, .NET framework, office 2003 and 3 com objects: aspmail, aspimage and aspsmartupload. There is no virus detection software.
> Anybody have an idea why the session variables are randomly lost ?
> thanks, rich
jscript.net is a fine language, it only downside is lack of ide support.

anyway, lots of events trigger loss of session. any recompile of the app or
reload of the domain, cause session data to be lost with the inproc session
manager. check the event log form appdomain recycles.

if you want a stable site, you should not use inproc, but the sql session
manager (works with the free msde).

-- bruce (sqlwork.com)

"Curt_C [MVP]" <software_AT_darkfalz.com> wrote in message
news:uA6taC$TEHA.3012@.tk2msftngp13.phx.gbl...
> "i am developing an asp.net web based application using javascript as the
> server side scripting language"
> is this possible? What are you using to develope this? Better yet, why are
> you using javascript as a serverside .NET language?
> --
> Curt Christianson
> Owner/Lead Developer, DF-Software
> Site: http://www.Darkfalz.com
> Blog: http://blog.Darkfalz.com
>
> "rich00" <rich00@.discussions.microsoft.com> wrote in message
> news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
> > i am developing an asp.net web based application using javascript as the
> server side scripting language. The application makes constant use of an
> access database and session variables. in a random way, the session
> variables are lost causing the application to break. The only software on
> the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
> aspmail, aspimage and aspsmartupload. There is no virus detection
software.
> > Anybody have an idea why the session variables are randomly lost ?
> > thanks, rich
>i am developing an asp.net web based application using javascript as the
>server side scripting language

wow, can i see that code please.

--
Regards,
Alvin Bruney
[ASP.NET MVP http://mvp.support.microsoft.com/default.aspx]
Got tidbits? Get it here... http://tinyurl.com/27cok
"rich00" <rich00@.discussions.microsoft.com> wrote in message
news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
>i am developing an asp.net web based application using javascript as the
>server side scripting language. The application makes constant use of an
>access database and session variables. in a random way, the session
>variables are lost causing the application to break. The only software on
>the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
>aspmail, aspimage and aspsmartupload. There is no virus detection software.
> Anybody have an idea why the session variables are randomly lost ?
> thanks, rich
the app consists of 1000+ scripts. i can send you a smple sctipt or 2. the app builds database driven web sites.

"Alvin Bruney [MVP]" wrote:

> >i am developing an asp.net web based application using javascript as the
> >server side scripting language
> wow, can i see that code please.
> --
> Regards,
> Alvin Bruney
> [ASP.NET MVP http://mvp.support.microsoft.com/default.aspx]
> Got tidbits? Get it here... http://tinyurl.com/27cok
> "rich00" <rich00@.discussions.microsoft.com> wrote in message
> news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
> >i am developing an asp.net web based application using javascript as the
> >server side scripting language. The application makes constant use of an
> >access database and session variables. in a random way, the session
> >variables are lost causing the application to break. The only software on
> >the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
> >aspmail, aspimage and aspsmartupload. There is no virus detection software.
> > Anybody have an idea why the session variables are randomly lost ?
> > thanks, rich
>

session vaiables lost randomly

i am developing an asp.net web based application using javascript as the ser
ver side scripting language. The application makes constant use of an access
database and session variables. in a random way, the session variables are
lost causing the applicatio
n to break. The only software on the xp-pro box is iis, .NET framework, offi
ce 2003 and 3 com objects: aspmail, aspimage and aspsmartupload. There is no
virus detection software.
Anybody have an idea why the session variables are randomly lost ?
thanks, rich"i am developing an asp.net web based application using javascript as the
server side scripting language"
is this possible? What are you using to develope this? Better yet, why are
you using javascript as a serverside .NET language?
Curt Christianson
Owner/Lead Developer, DF-Software
Site: http://www.Darkfalz.com
Blog: http://blog.Darkfalz.com
"rich00" <rich00@.discussions.microsoft.com> wrote in message
news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
> i am developing an asp.net web based application using javascript as the
server side scripting language. The application makes constant use of an
access database and session variables. in a random way, the session
variables are lost causing the application to break. The only software on
the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
aspmail, aspimage and aspsmartupload. There is no virus detection software.
> Anybody have an idea why the session variables are randomly lost ?
> thanks, rich
this application is a port from asp to asp.net
asp only suppoted basic or javascript. the choice of javacript over basic wa
s easy.
"rich00" wrote:

> i am developing an asp.net web based application using javascript as the server si
de scripting language. The application makes constant use of an access database and
session variables. in a random way, the session variables are lost causing the appli
cat
ion to break. The only software on the xp-pro box is iis, .NET framework, office 2003 and 3
com objects: aspmail, aspimage and aspsmartupload. There is no virus detection software.[c
olor=darkred]
> Anybody have an idea why the session variables are randomly lost ?
> thanks, rich[/color]
jscript.net is a fine language, it only downside is lack of ide support.
anyway, lots of events trigger loss of session. any recompile of the app or
reload of the domain, cause session data to be lost with the inproc session
manager. check the event log form appdomain recycles.
if you want a stable site, you should not use inproc, but the sql session
manager (works with the free msde).
-- bruce (sqlwork.com)
"Curt_C [MVP]" <software_AT_darkfalz.com> wrote in message
news:uA6taC$TEHA.3012@.tk2msftngp13.phx.gbl...
> "i am developing an asp.net web based application using javascript as the
> server side scripting language"
> is this possible? What are you using to develope this? Better yet, why are
> you using javascript as a serverside .NET language?
> --
> Curt Christianson
> Owner/Lead Developer, DF-Software
> Site: http://www.Darkfalz.com
> Blog: http://blog.Darkfalz.com
>
> "rich00" <rich00@.discussions.microsoft.com> wrote in message
> news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
> server side scripting language. The application makes constant use of an
> access database and session variables. in a random way, the session
> variables are lost causing the application to break. The only software on
> the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
> aspmail, aspimage and aspsmartupload. There is no virus detection
software.
>
>i am developing an asp.net web based application using javascript as the
>server side scripting language
wow, can i see that code please.
Regards,
Alvin Bruney
[ASP.NET MVP http://mvp.support.microsoft.com/default.aspx]
Got tidbits? Get it here... http://tinyurl.com/27cok
"rich00" <rich00@.discussions.microsoft.com> wrote in message
news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
>i am developing an asp.net web based application using javascript as the
>server side scripting language. The application makes constant use of an
>access database and session variables. in a random way, the session
>variables are lost causing the application to break. The only software on
>the xp-pro box is iis, .NET framework, office 2003 and 3 com objects:
>aspmail, aspimage and aspsmartupload. There is no virus detection software.
> Anybody have an idea why the session variables are randomly lost ?
> thanks, rich
the app consists of 1000+ scripts. i can send you a smple sctipt or 2. the a
pp builds database driven web sites.
"Alvin Bruney [MVP]" wrote:

> wow, can i see that code please.
> --
> Regards,
> Alvin Bruney
> [ASP.NET MVP http://mvp.support.microsoft.com/default.aspx]
> Got tidbits? Get it here... http://tinyurl.com/27cok
> "rich00" <rich00@.discussions.microsoft.com> wrote in message
> news:C0B5DB69-E5F5-4946-917A-CBE4ED71325B@.microsoft.com...
>
>

Tuesday, March 13, 2012

Session variables disappear in relation to a file upload

Howdy
I've got a rather strange issue occuring.
I used forms based .NET authentication, although I'm also setting some
session variables when people login.
However, I've found when people use one of my webform pages which includes a
button that pops up a window where you can upload files, if you upload files
in this popup window, it seems to somehow clear out all of the session
variables and the users get logged out. However, if people don't upload
files, then their use of the webform page proceeds as required/expected.
I'm planning to phase out the session variables by upgrading my code,
however I can't understand this problem which seems quite strange and I'd
like to know what the problem is.
Any clues would be greatly appreciated.
Cheers
Matt
If it helps, here is code in question:
The main part of the code behind for the upload page:
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
if (!IsPostBack) {
pnlUpload.Visible = true;
pnlUploaded.Visible = false;
}
if (IsPostBack) {
pnlUpload.Visible = false;
pnlUploaded.Visible = true;
}
strJobRequestID = Request.QueryString["JobRequestID"];
btnClose2.Attributes.Add("onclick", "return closeupdate();");
}
public void UploadFile(object Sender,EventArgs E) { //Event handler for
the upload button
lblFileList.Text = "";
if (Request.Files.Count > 0) { //if there are files attached
//Get directory path
string strDirPath = Server.MapPath(".\\" + "/../../detail/files/" +
strJobRequestID + "/");
//Response.Write(strDirPath);
//if Directory path doesn't exist then create it
if (!Directory.Exists(strDirPath)) {
Directory.CreateDirectory(strDirPath);
}
//Iterate through the Request.Files collection
for(IntLoop=0; IntLoop<Request.Files.Count; IntLoop++) {
if (Request.Files[IntLoop] !=null) { //Checking for valid file
// Since the FileName gives the entire path we use Substring function
to get the filename (including the file extension).
string StrFileName =
Request.Files[IntLoop].FileName.Substring(Request.Files[IntLoop].FileName.LastIndexOf("\\")
+ 1);
string StrFileType = Request.Files[IntLoop].ContentType;
int IntFileSize = Request.Files[IntLoop].ContentLength;
//Check for file length > 0 and Upload if it is
if (IntFileSize > 0) {
//Save the file to the web server
string filePath = (strDirPath + "/" + StrFileName);
Request.Files[IntLoop].SaveAs(filePath);
lblFileList.Text += "<li>" + StrFileName + "</li>";
}
}
}
}
}
Here is the main code for the webform. Notice the "multipart/form-data" -
could that be causing the problem somehow?
<form id="JBSv4ServerForm" enctype="multipart/form-data" runat="server">
<div class=JBSv4PopupBody>
<!--begin of body-->
<div class=JBSv4PopupMainBody>
<div class=JBSv4JobListing><asp:panel id=pnlUpload runat="server">
<div class="JBSv4JobListingHeader">
<h3>Attach files to job <%if
(!Request.QueryString["JobRequestID"].StartsWith("Temp"))
{%><%=Request.QueryString["JobRequestID"]%><% } %></h3></div>
<table class="JBSv4JobListingTable">
<tr>
<td><input id="File1" type="file" size="30" name="File1"
runat="server"></td>
<td class="listsTableRight" valign="top" rowspan="5">
<p>Use the 'Browse' buttons to select up to five files, then click
'Upload
files'.</p>
<p>You'll be able to attach more files afterwards if you need
to.</p></td></tr>
<tr>
<td><input id="File2" type="file" size="30" name="File2"
runat="server"></td></tr>
<tr>
<td><input id="File3" type="file" size="30" name="File3"
runat="server"></td></tr>
<tr>
<td><input id="File4" type="file" size="30" name="File4"
runat="server"></td></tr>
<tr>
<td><input id="File5" type="file" size="30" name="File5"
runat="server"></td></tr>
<tr>
<td colspan="2"><input class="formbutton" onclick="closewindow();"
type="button" value="Close window" name="btnCloseWindow">
<asp:button id="CmdUpload" onclick="UploadFile" runat="server"
cssclass="formbutton" text="Upload
files"></asp:button></td></tr></table></asp:panel><asp:panel
id=pnlUploaded runat="server">
<div class="JBSv4JobListingHeader">
<h3>Files attached</h3></div>
<table class="JBSv4JobListingTable">
<tr>
<td>
<p>The following files have been attached:</p>
<ul>
<asp:label id="lblFileList" runat="server"></asp:label></ul>
<p><strong>Please note: </strong>Use the 'Close Window' button below
when
you are finished which will close this window AND refresh the job
attachments list.</p>
<asp:button id="btnClose2" runat="server" cssclass="formbutton" text="Close
window"></asp:button>
<asp:button id="btnAttachMore" runat="server" cssclass="formbutton"
text="Attach more files"></asp:button></td></tr></table></asp:panel></DIV>
<!--end of body--></DIV></DIV></FORM>Hi Matt,
Looks like your appdomain is recycling.
You may check that using Perfmon and application restrats counter to verify
if your appdomain is recycling.
Also, what is the size of the file which causes the issues? Is it each and
every file which causes the session to recycle'
Thanks,
Rahul Soni
-->The secret to creativity is knowing how to hide your sources<--
"Matt Jensen" wrote:

> Howdy
> I've got a rather strange issue occuring.
> I used forms based .NET authentication, although I'm also setting some
> session variables when people login.
> However, I've found when people use one of my webform pages which includes
a
> button that pops up a window where you can upload files, if you upload fil
es
> in this popup window, it seems to somehow clear out all of the session
> variables and the users get logged out. However, if people don't upload
> files, then their use of the webform page proceeds as required/expected.
> I'm planning to phase out the session variables by upgrading my code,
> however I can't understand this problem which seems quite strange and I'd
> like to know what the problem is.
> Any clues would be greatly appreciated.
> Cheers
> Matt
>
> If it helps, here is code in question:
> The main part of the code behind for the upload page:
> private void Page_Load(object sender, System.EventArgs e)
> {
> // Put user code to initialize the page here
> if (!IsPostBack) {
> pnlUpload.Visible = true;
> pnlUploaded.Visible = false;
> }
> if (IsPostBack) {
> pnlUpload.Visible = false;
> pnlUploaded.Visible = true;
> }
> strJobRequestID = Request.QueryString["JobRequestID"];
> btnClose2.Attributes.Add("onclick", "return closeupdate();");
>
> }
>
> public void UploadFile(object Sender,EventArgs E) { //Event handler for
> the upload button
> lblFileList.Text = "";
> if (Request.Files.Count > 0) { //if there are files attached
> //Get directory path
> string strDirPath = Server.MapPath(".\\" + "/../../detail/files/" +
> strJobRequestID + "/");
> //Response.Write(strDirPath);
> //if Directory path doesn't exist then create it
> if (!Directory.Exists(strDirPath)) {
> Directory.CreateDirectory(strDirPath);
> }
> //Iterate through the Request.Files collection
> for(IntLoop=0; IntLoop<Request.Files.Count; IntLoop++) {
> if (Request.Files[IntLoop] !=null) { //Checking for valid file
> // Since the FileName gives the entire path we use Substring functio
n
> to get the filename (including the file extension).
> string StrFileName =
> Request.Files[IntLoop].FileName.Substring(Request.Files[IntLoop].FileName.LastIndexOf("\\")
> + 1);
> string StrFileType = Request.Files[IntLoop].ContentType;
> int IntFileSize = Request.Files[IntLoop].ContentLength;
> //Check for file length > 0 and Upload if it is
> if (IntFileSize > 0) {
> //Save the file to the web server
> string filePath = (strDirPath + "/" + StrFileName);
> Request.Files[IntLoop].SaveAs(filePath);
> lblFileList.Text += "<li>" + StrFileName + "</li>";
> }
> }
> }
> }
> }
>
> Here is the main code for the webform. Notice the "multipart/form-data" -
> could that be causing the problem somehow?
> <form id="JBSv4ServerForm" enctype="multipart/form-data" runat="server">
> <div class=JBSv4PopupBody>
> <!--begin of body-->
> <div class=JBSv4PopupMainBody>
> <div class=JBSv4JobListing><asp:panel id=pnlUpload runat="server">
> <div class="JBSv4JobListingHeader">
> <h3>Attach files to job <%if
> (!Request.QueryString["JobRequestID"].StartsWith("Temp"))
> {%><%=Request.QueryString["JobRequestID"]%><% } %></h3></div>
> <table class="JBSv4JobListingTable">
> <tr>
> <td><input id="File1" type="file" size="30" name="File1"
> runat="server"></td>
> <td class="listsTableRight" valign="top" rowspan="5">
> <p>Use the 'Browse' buttons to select up to five files, then click
> 'Upload
> files'.</p>
> <p>You'll be able to attach more files afterwards if you need
> to.</p></td></tr>
> <tr>
> <td><input id="File2" type="file" size="30" name="File2"
> runat="server"></td></tr>
> <tr>
> <td><input id="File3" type="file" size="30" name="File3"
> runat="server"></td></tr>
> <tr>
> <td><input id="File4" type="file" size="30" name="File4"
> runat="server"></td></tr>
> <tr>
> <td><input id="File5" type="file" size="30" name="File5"
> runat="server"></td></tr>
> <tr>
> <td colspan="2"><input class="formbutton" onclick="closewindow();"
> type="button" value="Close window" name="btnCloseWindow">
> <asp:button id="CmdUpload" onclick="UploadFile" runat="server"
> cssclass="formbutton" text="Upload
> files"></asp:button></td></tr></table></asp:panel><asp:panel
> id=pnlUploaded runat="server">
> <div class="JBSv4JobListingHeader">
> <h3>Files attached</h3></div>
> <table class="JBSv4JobListingTable">
> <tr>
> <td>
> <p>The following files have been attached:</p>
> <ul>
> <asp:label id="lblFileList" runat="server"></asp:label></ul>
> <p><strong>Please note: </strong>Use the 'Close Window' button below
> when
> you are finished which will close this window AND refresh the job
> attachments list.</p>
> <asp:button id="btnClose2" runat="server" cssclass="formbutton" text="Clos
e
> window"></asp:button>
> <asp:button id="btnAttachMore" runat="server" cssclass="formbutton"
> text="Attach more files"></asp:button></td></tr></table></asp:panel></DIV>
> <!--end of body--></DIV></DIV></FORM>
>
>
Thanks Rahul
Hmm, application restarts are 807 and Requests Queued is 54,000!!!!
And the error occurred for 1 file of 1KB too.
Actually seems to be the code below that's causing the problem, which
renames the file upload directory from a temporary name to the ID number of
the job request (because the webform page in question is for logging a job,
and the directory path ID number is not known until the job is logged):
//JOB FILES (if they exist)
//Root directory path for JBS job files
string strDirPath = Server.MapPath(".\\" + "/../../detail/files/");
//Response.Write(strDirPath+"<br>");
//New Directory path for logged job files
JBSv4.utils.jbs.v4.utils.utils utilsClass1 = new
JBSv4.utils.jbs.v4.utils.utils();
strLongJobRequestID = utilsClass1.LongJobNumber(intJobRequestID);
string strDirPathJobNo = strDirPath + strLongJobRequestID + "\\";
//Response.Write(strDirPathJobNo+"<br>");
//Directory path used for temporary file storage before JobRequestID
was created
strTempJobRequestID = tbxTempID.Text;
string strDirPathTemp = strDirPath + strTempJobRequestID + "\\";
//Response.Write(strDirPathTemp+"<br>");
//Rename temporary file storage directory (if it exists) to job number
directory
if (Directory.Exists(strDirPathTemp)) {
Directory.Move(strDirPathTemp, strDirPathJobNo);
}
What do I do?
Thanks again for any more help.
Matt
"Rahul Soni" <RahulSoni@.discussions.microsoft.com> wrote in message
news:1EC073F3-5409-42D9-9E75-A5C368CF6512@.microsoft.com...
> Hi Matt,
> Looks like your appdomain is recycling.
> You may check that using Perfmon and application restrats counter to
> verify
> if your appdomain is recycling.
> Also, what is the size of the file which causes the issues? Is it each and
> every file which causes the session to recycle'
> --
> Thanks,
> Rahul Soni
> -->The secret to creativity is knowing how to hide your sources<--
>
> "Matt Jensen" wrote:
>
On further investigation, it is this code
if (Directory.Exists(strDirPathTemp)) {
Directory.Move(strDirPathTemp, strDirPathJobNo);
}
causing the problem, and I note that when this code runs (and the user gets
logged out), the counter for application restarts increases by 1.
I'm reading something that makes me think that maybe some virus checking
software is involved in the problem.
Thoughts?
Cheers
Matt
"Matt Jensen" <replytonewsgroups@.microsoft.com> wrote in message
news:uB7Ny7z%23FHA.924@.TK2MSFTNGP12.phx.gbl...
> Thanks Rahul
> Hmm, application restarts are 807 and Requests Queued is 54,000!!!!
> And the error occurred for 1 file of 1KB too.
> Actually seems to be the code below that's causing the problem, which
> renames the file upload directory from a temporary name to the ID number
> of the job request (because the webform page in question is for logging a
> job, and the directory path ID number is not known until the job is
> logged):
> //JOB FILES (if they exist)
> //Root directory path for JBS job files
> string strDirPath = Server.MapPath(".\\" + "/../../detail/files/");
> //Response.Write(strDirPath+"<br>");
> //New Directory path for logged job files
> JBSv4.utils.jbs.v4.utils.utils utilsClass1 = new
> JBSv4.utils.jbs.v4.utils.utils();
> strLongJobRequestID = utilsClass1.LongJobNumber(intJobRequestID);
> string strDirPathJobNo = strDirPath + strLongJobRequestID + "\\";
> //Response.Write(strDirPathJobNo+"<br>");
> //Directory path used for temporary file storage before JobRequestID
> was created
> strTempJobRequestID = tbxTempID.Text;
> string strDirPathTemp = strDirPath + strTempJobRequestID + "\\";
> //Response.Write(strDirPathTemp+"<br>");
> //Rename temporary file storage directory (if it exists) to job number
> directory
> if (Directory.Exists(strDirPathTemp)) {
> Directory.Move(strDirPathTemp, strDirPathJobNo);
> }
> What do I do?
> Thanks again for any more help.
> Matt
>
> "Rahul Soni" <RahulSoni@.discussions.microsoft.com> wrote in message
> news:1EC073F3-5409-42D9-9E75-A5C368CF6512@.microsoft.com...
>
This appears to be by 'design'...!!
http://groups.google.co.uk/group/mi...1f03aac74f80ba6
Solved using the code on this page:
http://blogs.msdn.com/korbyp/archiv...2/19/76411.aspx
Still wondering though what it means that my Requests Queued is 54,000!?
Thanks for any advice
Cheers
Matt
"Matt Jensen" <replytonewsgroups@.microsoft.com> wrote in message
news:%23zcjvF0%23FHA.3104@.TK2MSFTNGP15.phx.gbl...
> On further investigation, it is this code
> if (Directory.Exists(strDirPathTemp)) {
> Directory.Move(strDirPathTemp, strDirPathJobNo);
> }
> causing the problem, and I note that when this code runs (and the user
> gets logged out), the counter for application restarts increases by 1.
> I'm reading something that makes me think that maybe some virus checking
> software is involved in the problem.
> Thoughts?
> Cheers
> Matt
> "Matt Jensen" <replytonewsgroups@.microsoft.com> wrote in message
> news:uB7Ny7z%23FHA.924@.TK2MSFTNGP12.phx.gbl...
>