在无意中看到了网页中执行.exe应用程序的方法:

1、用.NET Framework中的Process类

添加引用using System.Diagnostics;

在按钮的单击事件处理程序中填入以下代码:

protected void Button1_Click(object sender, EventArgs e)
    {

Process pro = new Process();

pro.StartInfo.FileName = "c:\\windows\\notepad.exe";

//文件名可以省略后缀

pro.Start();

}

程序完成。

2、调用win32函数ShellExecute

添加引用using System.Runtime.InteropServices;

声明函数:

[DllImport("shell32.dll")]

private static extern IntPtr ShellExecute(IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, Int32 nShowCmd);

在按钮的单击事件处理程序中调用前面生明的ShellExecute函数:

protected void Button1_Click(object sender, EventArgs e)
    {

ShellExecute(IntPtr.Zero, "open", "c:\\windows\\notepad.exe", null, null, 1);

//文件名可以不加后缀,如"c:\\windows\\notepad"

}

程序完成

注意:在asp.net2.0中运行以上两种方法写的程序都可以得到想要的结果。但是在asp.net1.1或更早的版本却不能得到想要的结果,打开任务管理器甚至可以看到进程已经存在(编译器也没有报错),但就是看不到执行效果,这是微软为了安全原因禁掉了程序的运行,你需要做以下两步才能正常运行:

1、在桌面右键单击“我的电脑”,选择管理,展开“服务和应用程序”节点,选择“服务”项;从右侧的服务列表中找到“IIS Admin”项,右击鼠标,选择“属性”,在属性框中打开“登陆”页,勾选“本地系统帐户”下的“允许与桌面交互”项,点击确定。重新启动这项服务。

2、打开目录“C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG”中的machine.config文件,找到“processModel”项,原来这项中有一个属性是userName="machine",将machine改为“system”,保存文件,修改完毕。

现在再运行以前的程序可以看到期望的结果。

以上程序在IIS5.0以上可正常运行。

如果大家还有其它什么好的办法,感谢提出~

共同交流、学习~

转载于:https://www.cnblogs.com/ZHF/archive/2008/11/25/1340477.html

Asp.net中执行.EXE程序的方法相关推荐

  1. java调用exe_Windows系统中Java调用cmd命令及执行exe程序的方法

    Java调用cmd命令,并输出显示信息: package com.anxin.cmd.test; import java.io.BufferedReader; import java.io.Input ...

  2. 在 ASP.NET 中执行 URL 重写

    在 ASP.NET 中执行 URL 重写 发布日期: 8/23/2004 | 更新日期: 8/23/2004 Scott Mitchell 4GuysFromRolla.com 适用范围: Micro ...

  3. cmd 调用oracle存储过程,asp.net中调用oracle存储过程的方法

    存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果 ...

  4. ASP.NET中文件上传下载方法集合

    asp.net 2008-08-23 21:10:35 阅读0 评论0   字号:大中小 订阅 ASP.NET中文件上传下载方法集合 文件的上传下载是我们在实际项目开发过程中经常需要用到的技术,这里给 ...

  5. 【转】在Ubuntu中运行Exe程序

    在Ubuntu中运行Exe程序 原文地址: https://jingyan.baidu.com/article/d45ad148a78cbe69552b8089.html 标签:ubuntu 1 2 ...

  6. java解析shell命令_Android中执行java命令的方法及java代码执行并解析shell命令

    这篇文章给大家介绍Android中执行java命令的方法及java代码执行并解析shell命令,需要的朋友一起学习 android中执行java命令的方法大家都晓得吗,下面一段内容给大家带来了具体解析 ...

  7. ipython下怎么运行py文件_在IPython中执行Python程序文件的示例

    简单使用了一下之后,我觉得如果有机会(公司里面编码是极不自由的,也无所谓,我在公司不做数据分析),我肯定是更喜欢使用IPython作为我的Python shell环境了.简单的接触发现了不少我喜欢的功 ...

  8. 痞子衡嵌入式:在MDK开发环境下将关键函数重定向到RAM中执行的几种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在MDK开发环境下将关键函数重定向到RAM中执行的几种方法. 这个关键函数重定向到 RAM 中执行系列文章,痞子衡已经写过 <IA ...

  9. 痞子衡嵌入式:在IAR开发环境下将关键函数重定向到RAM中执行的三种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在IAR开发环境下将关键函数重定向到RAM中执行的三种方法. 嵌入式项目里应用程序代码正常是放在 Flash 中执行的,但有时候也需要将 ...

最新文章

  1. 机器学习相关——SVD分解
  2. ios 裁剪圆形头像_iOS开发之裁剪圆形头像
  3. 2020年前端面试之JS手写代码题合集
  4. .Net中的RealProxy实现AOP
  5. 开通此博客的目的主要用于发布一些技术方面的文章
  6. centos下mysql执行命令_CentOS下mysql数据库常用命令总结
  7. 20191226每日一句
  8. bp神经网络预测股票价格,bp神经网络股价预测
  9. Windows 95 下载
  10. 三目表达式运算符优先级分析
  11. (水)noj2029节奏大师
  12. acm--Lowest Bit
  13. 宝塔面板网站nginx伪静态配置方法
  14. uni-app 188修复弹框问题
  15. Ice飞冰注意问题和可视化组件《三》
  16. 跟着团子学SAP FICO:SAP税码传输最佳业务实践
  17. 嵌入式:Altium Designer18提升速度的操作(画开发板笔记)
  18. 【详解】Linux面试详解
  19. 求1到n的素数个数C语言,求 1~n 之间素数的个数
  20. 利用matlab对滤波器频率特性分析

热门文章

  1. 【干货】史上最全的Tensorflow学习资源汇总
  2. 高性能日志框架 Log4a 原理分析
  3. Get Cache Info in Linux on ARMv8 64-bit Platform
  4. c语言编程 新浪博客,[c语言编程]经典编程
  5. linux 指定库名 登录mysql_Linux下指定mysql数据库数据配置主主同步的实例
  6. 交叉验证(Cross Validation)方法思想简介
  7. vim编写python没有代码提示_vim编写python自动补全
  8. layui根据条件显示列_templet渲染layui表格数据的三种方式
  9. fpga实战训练精粹pdf_tensorflow版PSENet 文本检测模型训练和测试
  10. python小结教学_python教学