如何使用网页中的相关程序打开本地文件?

时间:2010-03-06 17:36:54

标签: javascript jquery

我知道我的应用程序的用户有一个名为c:\ sourcefile.cs的本地文件,我需要找到一种方法来呈现该文件的链接,这样当他点击该链接时,它将在Visual中打开该文件工作室。

这是我们开发团队的内部使用,所以如果没有标准的方法,我不介意使用非传统的方法。

解决方案必须与Firefox配合使用。

6 个答案:

答案 0 :(得分:1)

由于安全原因,这是不可能的。浏览器中的Javascript无法访问客户端计算机。

您需要使用Java applet或其他类似的东西才能实现这一目标。

答案 1 :(得分:1)

您应该询问您应用的用户(因为它是供内部使用)来更改firefox选项

Tools -> Options -> Applications(tab)

在那里,他们应该将.cs与您想要的动作相关联(打开VS)..

现在使用<a href="file:///c:/sourcefile.cs">应该有效..

<强> [更新]

似乎firefox已经删除了添加新mimetype的选项..

有手动解决方法..

您需要找到firefox个人资料(located at:APPDATA%\ Mozilla \ Firefox \ Profiles \ xxxxxxxx.default \)

然后编辑文件mimeTypes.rdf

添加以下元素

<RDF:Description RDF:about="urn:mimetype:text/cs"
                   NC:value="text/cs"
                   NC:editable="true"
                   NC:fileExtensions="cs"
                   NC:description="CSharp Source File">
    <NC:handlerProp RDF:resource="urn:mimetype:handler:text/cs"/>
</RDF:Description>

并找到现有的<RDF:Seq RDF:about="urn:mimetypes:root">并添加

<RDF:li RDF:resource="urn:mimetype:text/cs"/>

现在您可以使用应用程序选项卡对其进行编辑,如前所示..

答案 2 :(得分:0)

我不知道在视觉工作室开放,但这可能有效:

file:///c:/sourcefile.cs

这取决于浏览器,浏览器设置,当然还有文件关联。

答案 3 :(得分:0)

您将不得不使用某种二进制代码(意思是非JavaScript),这些代码很可能需要用户的明确许可才能访问浏览器的硬盘。

对于FireFox,执行此操作的方法是通过Plugin,它将为浏览器提供功能(或者至少是您的插件通过浏览器提供的功能)来执行您想要的操作,同时获得显式安全权限

您应该从API for FireFox plugins开始,然后从那里开始。这是FireFox特有的解决方案。

如果您想要某些与浏览器无关的内容,您可能需要考虑将Java小程序嵌入到页面中。当然,这需要用户对applet访问硬盘驱动器的权限,但它可以在任何安装了Java插件的浏览器中使用。

答案 4 :(得分:0)

您可以使用链接;

<a href="file:///c:/sourcefile.cs">Open File</a>

应该使用默认应用程序打开文件。

答案 5 :(得分:0)

最新的Firefox(3.6)也许可以提供帮助,请尝试搜索“文件api”。或者你可以使用java applets。