在某些服务器上使用Path.GetTempFileName时出现目录名无效的错误。进一步调查发现,它试图将文件写入c:\Documents and Setting\computername\aspnet\local settings\temp(使用Path.GetTempPath找到)。该文件夹存在,因此我认为这必须是与asp.net帐户相关的权限问题。
有些人告诉我,Path.GetTempFileName应该指向C:\Windows\Microsoft.NET\Framework\v2.0.50727\temporaryasp.net文件。
我也被告知,这个问题可能是由于IIS和.NET在服务器上安装的顺序不同导致。我已经执行了典型的“aspnet_regiis-i”操作,并检查了文件夹的安全性等。目前我陷入困境。
有人能解决这个问题吗?
**更新:**结果证明,为'IUSR_ComputerName'提供对文件夹的访问权限可以解决问题。那么这是正确的程序吗?我似乎不记得以前这样做过,显然要遵循最佳实践来维护安全性。毕竟,这是文件上传过程的一部分。
有些人告诉我,Path.GetTempFileName应该指向C:\Windows\Microsoft.NET\Framework\v2.0.50727\temporaryasp.net文件。
我也被告知,这个问题可能是由于IIS和.NET在服务器上安装的顺序不同导致。我已经执行了典型的“aspnet_regiis-i”操作,并检查了文件夹的安全性等。目前我陷入困境。
有人能解决这个问题吗?
**更新:**结果证明,为'IUSR_ComputerName'提供对文件夹的访问权限可以解决问题。那么这是正确的程序吗?我似乎不记得以前这样做过,显然要遵循最佳实践来维护安全性。毕竟,这是文件上传过程的一部分。