通过asp.net访问记事本、计算器

发布于 2024-11-02 02:13:12 字数 583 浏览 6 评论 0原文

我正在尝试使用 C# 后面的代码在 asp.net 中单击按钮打开记事本、计算器。我尝试使用代码,

 System.Diagnostics.Process.Start("c:\\windows\\system32\\notepad.exe");

该代码在本地系统中运行良好,但在服务器中不起作用。我什至尝试过使用 javascript,

function executeCommands(inputparms)
{
alert('ff');
var oShell = new ActiveXObject("Shell.Application");
var commandtoRun = "C:\\Winnt\\Notepad.exe";
if (inputparms != "")
{
    var commandParms = document.form1.filename.value;
}

oShell.ShellExecute(commandtoRun, commandParms, "", "open", "1");
}

即使这不起作用。您能否建议我如何在客户端打开记事本应用程序而不干扰服务器记事本。

I m trying to open Notepad, Calculator in button click in asp.net with code behind C#. I tried with the code

 System.Diagnostics.Process.Start("c:\\windows\\system32\\notepad.exe");

this is working fine in local system but not working in the Server. I even tried with the javascript

function executeCommands(inputparms)
{
alert('ff');
var oShell = new ActiveXObject("Shell.Application");
var commandtoRun = "C:\\Winnt\\Notepad.exe";
if (inputparms != "")
{
    var commandParms = document.form1.filename.value;
}

oShell.ShellExecute(commandtoRun, commandParms, "", "open", "1");
}

even this is not working out. Can you please suggest me in on how to open the notepad application in the client end with out disturbing server notepad.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

红玫瑰 2024-11-09 02:13:12

这是不可能的。想象一下,如果网页可以在客户端计算机上运行任意程序,我们将陷入安全混乱的境地。哦等等...;-)

This can't be done. Imagine the security mess we'd be in if a web-page could run arbitrary programs on a client machine. Oh wait... ;-)

风情万种。 2024-11-09 02:13:12

这是不可能的(一般来说,尽管您可以使用各种小程序和浏览器插件来解决)。事实上,如果任何网页可以在我的计算机上执行任意程序,我会感到非常羞愧。

This is not possible (in general, though you could possibly get around with with various applets and browser plugins). In fact, I would be quite mortified if any web page could execute an arbitrary program on my computer.

我也只是我 2024-11-09 02:13:12

你不能这样做。 ASP.NET 在服务器上运行,您无法在客户端计算机上运行程序。您显示的 ActiveX 对象应该可以工作,但只能在 IE 中并且只有在用户明确授权执行它之后。另外,notepad.exe 的位置可能会因客户端而异(可能是 c:\windows、c:\winnt...并且某些在 Linux 或 MacOS 上运行的客户端没有此类可执行文件)

You cannot do this. ASP.NET runs on the server and you cannot run programs on the client computer. The ActiveX object you have shown should work but only in IE and only after the user explicitly authorizes the execution of it. Also the location of notepad.exe might differ depending on the client (could be c:\windows, c:\winnt, ... and some clients running for example on Linux or MacOS don't have such executable)

狼性发作 2024-11-09 02:13:12

由于 ASP.Net 的应用程序的性质,您想要实现的目标是不可能的。该应用程序将在服务器上执行,并且仅将客户端 HTML 发送到客户端。即使您的代码在语法上是正确的,它也会打开服务器本身上的实用程序。

What you are trying to achieve is not possible because of the nature of application in case of ASP.Net. The application will execute on server and will only send client side HTML to client. Even if your code is syntatically correct, it would open up the utilities on server itself.

瞎闹 2024-11-09 02:13:12

这可以通过单击服务器按钮或链接使用以下代码来实现。
System.Diagnostics.Process.Start("notepad.exe");

This Can be possible by using below code on click of server button or Link.
System.Diagnostics.Process.Start("notepad.exe");

烟柳画桥 2024-11-09 02:13:12
System.Diagnostics.Process.Start("C:\Windows\System32\calc.exe")

工作正常,但您可能需要调整浏览器上的设置。确保 calc.exe 在该目录中。

System.Diagnostics.Process.Start("C:\Windows\System32\calc.exe")

Works fine, though you may have to adjust settings on your browser. Be sure calc.exe is in the directory.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文