最近用asp.net作webservice,其中有个功能是调用执行外部的exe(相似cmd中执行),但执行Process.Start以后就没有结果,一样代码在winform下正常,折腾两天终于找到解决方法web
本文参考了如下网页,十分感谢asp.net
http://bbs.csdn.net/topics/300053869网站
http://blog.163.com/qiaoweipeng@126/blog/static/15737970200862331842368/.net
环境:win7 sp1 64位 以及IIS,vs2010 编译为x86程序命令行
首先到 服务》IIS Admin Service(双击他)》登陆》勾上【容许服务于桌面交互】orm
而后创建web程序,以【网站】方式创建,建网站后会自动创建对应的应用程序池blog
选中对应的【应用程序池】,点 【高级设置】,修改其中的【进程模型】》【标识】为 LocalSystem进程
而后把IIS,IIS Admin Service等重启,就ok了ip
PS:网上有的说设了 IIS Admin Service 就能够了,可能有些状况是能够的,你们注意一下webservice
PS2:应用程序池的【标识】,若是LocalSystem不行,那就设【自定义帐户】,帐户用管理员帐户(administrator)
PS3:这样执行后的效果可能会跟winform桌面程序执行的效果有点不一样,例如我调用的exe程序,winform调用后运行时有个命令行窗体一直出现,而webservice调用没有命令行窗体,但经过 【任务管理器】 能够看到进程是运行着