Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何以编程方式删除ASP.NET临时Internet文件_Asp.net_.net_Permissions - Fatal编程技术网

如何以编程方式删除ASP.NET临时Internet文件

如何以编程方式删除ASP.NET临时Internet文件,asp.net,.net,permissions,Asp.net,.net,Permissions,首先,我不是问如何找到路径或使用IO类等 我经常遇到的问题是,当从Visual Studio(2010)(Win7)重新启动正在开发的网站时,它仍然保留以前对ASP.NET临时Internet文件的引用,我发现一旦删除这些文件,问题就会消失 手动删除,我发现我必须深入到多个子文件夹层并删除其内容,然后才能在根文件夹中删除 我曾尝试使用一个小实用程序以编程方式执行删除操作,但即使在以“以管理员身份运行”或直接以“以管理员身份运行”启动exe时,也会出现权限错误(UnauthorizedAccess

首先,我不是问如何找到路径或使用IO类等

我经常遇到的问题是,当从Visual Studio(2010)(Win7)重新启动正在开发的网站时,它仍然保留以前对ASP.NET临时Internet文件的引用,我发现一旦删除这些文件,问题就会消失

手动删除,我发现我必须深入到多个子文件夹层并删除其内容,然后才能在根文件夹中删除

我曾尝试使用一个小实用程序以编程方式执行删除操作,但即使在以“以管理员身份运行”或直接以“以管理员身份运行”启动exe时,也会出现权限错误(UnauthorizedAccessException)

有谁的答案比手动钻取子文件夹更流畅


谢谢

这本身不是一个解决方案,尽管无法删除文件的原因是IIS或Cassini(内置Visual Studio web服务器)正在锁定这些文件

如果使用IIS,请关闭运行应用程序的应用程序池;如果使用Cassini,请关闭Visual Studio(或从其托盘图标中关闭ASP.NET服务器);然后可以删除临时ASP.NET文件目录中的根文件夹

然后只需重新启动应用程序池或Visual Studio(如果已关闭),即可重新开始工作

如果您使用的是IIS及其版本7或更高版本,则可以运行命令行实用程序来停止它:

appcmd start apppool /apppool.name: DefaultAppPool
只需编写一个批处理脚本就可以更轻松地为您完成:

@echo off
appcmd stop apppool /apppool.name: DefaultAppPool
del "C:\Windows\Microsoft.NET\Framework\vx.xxx.x\Temporary..." /f /q
appcmd start apppool /apppool.name: DefaultAppPool

如果您使用的是IIS 6.0,请使用PowerShell脚本启动和停止它。您可以在临时文件夹工作时对其进行修改以删除它。

谢谢!剧本无疑是领跑者。奇怪的是,在不关闭任何东西的情况下,当我深入到tehm时,我可以手动删除文件(所以IIS至少允许这么多)。@johnpiegel:也许锁是文件夹锁而不是文件锁?我从来都不想知道:)