通过链接打开Windows资源管理器

时间:2011-09-12 13:27:31

标签: asp.net html

我想通过我为自己的业务开发的内部网页提供一种打开Windows资源管理器(或至少查看目录内容)的方法。我们通过内部网络共享多台计算机。我提供了一个文本输入字段,允许用户输入他们想要与DB表中给定行关联的文件夹路径,然后我可以存储该信息并创建到Pie recipe文件夹的file://///10.10.5.10/Recipes/Pie链接在我们的一台共享机器上。

链接在页面上正确呈现,如果我复制链接信息并将其粘贴到地址栏中,它将在FireFox中显示可导航的页面,或者如果使用IE,则打开Windows资源管理器。

但是,如果您直接在我的页面上单击该链接,则该链接不会执行任何操作。我怀疑这可能与安全和浏览器有关,对吧?我在别人的系统中看到了工作的SharePoint页面,但我猜这与SharePoint和浏览器中的网页之间的某些差异有关。右键单击链接并将其复制/粘贴到另一个选项卡中的解决方法将起作用,我可能不得不忍受这一点,但我想知道是否有人有任何建议或方法来处理此问题。也许我只是做错了什么,但我很确定它与浏览器安全相关。

3 个答案:

答案 0 :(得分:1)

很可能这是一个许可问题。 ASP.net在ASP.net进程帐户下运行。查找ASPNET用户并将权限应用于相关用户的文件夹。

答案 1 :(得分:1)

这听起来像是一个安全问题。请尝试以下一项或两项:

  • 尝试使用模拟模拟具有足够权限的域用户,以便在客户端计算机上访问资源管理器
  • 如果这是一个小型Intranet应用程序,请在客户端上为应用程序提供完全信任

以下是您可以用于模仿的课程的链接 - 请参阅我的回答:

Invoke or call C# console app from C# web service?

答案 2 :(得分:1)

对我来说,这似乎是一个纯粹的Internet Explorer设置问题。

首先,我建议您更好地在服务器路径中使用UNC或DNS名称,而不是使用IP地址:使用file://///myserver/Recipes/Piefile://///myserver.mydomain.com/Recipes/Pie代替file://///10.10.5.10/Recipes/Pie

其次,您最好将file://///myserverfile://///myserver.mydomain.com甚至file://///10.10.5.10/添加到“本地Intranet”或至少包含“受信任的网站”区域:

enter image description here

然后,您应该验证映射网址的安全区域的设置。查看“显示混合包含”的“杂项”组:

enter image description here

如果您有“提示”设置,您将看到警告:

enter image description here

每次尝试打开链接file://///myserver/Recipes/Pie

如果您遇到一些问题,我建议您在“高级”标签中重置IE设置:

enter image description here