Re: Response.TransmitFile() problem over network

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Gregory

Just wanted to let you know that the virtual directory solution worked.
Thanks very much!

Julia

"Gregory A. Beamer" wrote:

=?Utf-8?B?SnVsaWEgQg==?= <JuliaB@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
news:118AD9BC-2262-4275-B30D-82A16991C32E@xxxxxxxxxxxxx:

Hi, I've got an ASP.NET 2.0 application where I need to open files. I
had it working on my local webserver, with the files on my C drive.

However I've now published the application to our production web
server (Windows 2003 SP2) and the files are on a shared folder within
that web server.

If I try and run the application on the webserver the transmit file
just times out. If I try and run the application in debug mode (i.e on
my local webserver connecting to the files on the production web
server) the transmit file causes an instance of Word or Excel as
relevant to open but the file is blank.

The files concerned are very very small, just a few bytes in some
cases, so I know it's not a file size issue. I've also checked
permissions and the ASPNET account has the correct permissions (I've
checked this by saving files to the same shared folder using the
application).

Does anyone have any hints? Here's the code:

Response.Buffer = False
Response.Clear()
Response.ClearHeaders()
'now get the record name
If e.CommandName = "OrigRecord" Then
filePath = selectedRow.Cells(9).Text
filePath = Global.Global_asax.calRecordFilePath & filePath
Response.AppendHeader("Content-Disposition", "attachment;filename="
&
System.IO.Path.GetFileName(filePath))
Response.ContentType = "text/csv"
Else
filePath = selectedRow.Cells(10).Text
filePath = Global.Global_asax.calReportFilePath & filePath
Response.AppendHeader("Content-Disposition", "attachment;filename="
&
System.IO.Path.GetFileName(filePath))
Response.ContentType = "application/msword"
End If
'now we've got the full path for the file, open it
Response.TransmitFile(filePath)
Response.End()

Thanks in advance
Julia


Share folder? Outside of the application like below?

IIS Root
--> Web Application
--> Shared Folder

If so, the issue is IIS does not allow transversal of the file system.
It only allows you to read things under root. I don't have the specifics
in front of me, but you can turn this feature off (google it). Realize
there are potential security implications. I would not recommend this
approach, unless you cannot do my second recommendation (below):

You can also "trick" IIS to allowing you to use this directory. Every
site that needs to hit this directory adds the folder (aliased, if
necessary) to the web site (In IIS, this is done by adding a new virtual
folder to the application folder).

No matter which approach, make sure you have the proper permissions for
the account ASP.NET is running under. If that account cannot read the
files, you will not be able to serve them up.



--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

Twitter: @gbworld
Blog: http://gregorybeamer.spaces.live.com

******************************************
| Think outside the box! |
******************************************

.



Relevant Pages

  • Re: Response.TransmitFile() problem over network
    ... had it working on my local webserver, with the files on my C drive. ... server and the files are on a shared folder within ... filePath = Global.Global_asax.calRecordFilePath & filePath ...
    (microsoft.public.dotnet.framework.aspnet)
  • RE: c1030af7 on SBS2003, after installing ProjectServer 2003 and all u
    ... Thank you for posting in SBS newsgroup. ... If no other virtual folders exist in IIS, the best way should be restoring ... In IIS, select Web Sites, and note the "Identifier" for Default Web Site ... | folder insted of the /projectserver folder work anymore. ...
    (microsoft.public.windows.server.sbs)
  • Re: Manually Created Web Site Does Not Work - What am I Missing?
    ... between my VS project - and therefore assembly names - and the IIS Web site. ... have the same name or folder structure as my VS project. ... The ASP.NET Dev Server runs as the Administrator account in VS 2008. ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Help with Interactions between IISadmin mmc and FP2003
    ... and all the main things with IIS, FP2003, ... Site Server Architecture currently in use, ... depending on whether one uses IIS Admin or FP. ... plain vanilla folder, vanilla with little globe in lower ...
    (microsoft.public.frontpage.client)
  • Re: Please help refresh my memory on AD DC
    ... "Meinolf Weber" wrote: ... Remote server ... Also that one for IIS. ... On the server where the folder is located that you like to share ...
    (microsoft.public.windows.server.active_directory)