Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

FileStream open error

Status
Not open for further replies.

tshad

Programmer
Jul 15, 2004
386
US
The following code works fine. It opens file reads the data and then closes.

Code:
Dim objFileInfo As FileInfo = new FileInfo(strFilePath)
Dim objStream as StreamReader = objFileInfo.OpenText()
Dim strContents as String = objStream.ReadToEnd()
objStream.Close()

I get an error on the following line with the same file.

Dim fs as FileStream = new FileStream(strFilePath, FileMode.Open)

The error I get is:

Code:
Access to the path "c:\QA Docs\QPM 0.00 Table of Contents.doc" is denied. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.UnauthorizedAccessException: Access to the path "c:\QA Docs\QPM 0.00 Table of Contents.doc" is denied. 

ASP.NET is not authorized to access the requested resource. Consider granting access rights to the resource to the ASP.NET request identity. ASP.NET has a base process identity (typically {MACHINE}\ASPNET on IIS 5 or Network Service on IIS 6) that is used if the application is not impersonating. If the application is impersonating via <identity impersonate="true"/>, the identity will be the anonymous user (typically IUSR_MACHINENAME) or the authenticated request user. 

To grant ASP.NET write access to a file, right-click the file in Explorer, choose "Properties" and select the Security tab. Click "Add" to add the appropriate user or group. Highlight the ASP.NET account, and check the boxes for the desired access.

Why would I be denied access in this procedure and not the one before?

Thanks,

Tom
 
I do.

But if it works for:

objFileInfo_OpenText()

Why won't it work for:

FileStream(strFilePath, FileMode.Open)

Also, I only need to read it (at this point).

Tom.
 
Make sure that the file you are trying to open resides on your application webroot or in its subfolders. If not, consider uploading it before open it.

[morning]
 
I finally got it to work using the following:

Code:
Dim fs as FileStream = new FileStream(strFilePath, FileMode.OpenOrCreate, FileAccess.Read)
Dim arrByteData(objFileInfo.Length) as Byte
fs.Read(arrByteData, 0, fs.Length)
fs.Close()

What I was missing was the FileAccess.Read in the FileStream call (not sure why that was causing me an error - I assume, it was because without it, I could be writing also).

I need to upload it as a Binary ( at least this is the way I was told - I tried textcopy and that was a disaster).

Tom.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top