• C# ASP.NET Webservice调用外部exe无效的解决方法


    最近用asp.net做webservice,其中有个功能是调用执行外部的exe(类似cmd中执行),但执行Process.Start之后就没有结果,同样代码在winform下正常,折腾两天终于找到解决方法

    本文参考了以下网页,十分感谢

    http://bbs.csdn.net/topics/300053869

    http://blog.163.com/qiaoweipeng@126/blog/static/15737970200862331842368/

    环境:win7 sp1 64位 以及IIS,vs2010 编译为x86程序

    首先到 服务》IIS Admin Service(双击他)》登录》勾上【允许服务于桌面交互】

    然后建立web程序,以【网站】方式建立,建网站后会自动建立对应的应用程序池

    选中对应的【应用程序池】,点 【高级设置】,修改其中的【进程模型】》【标识】为 LocalSystem

    然后把IIS,IIS Admin Service等重启,就ok了

    PS:网上有的说设了 IIS Admin Service 就可以了,可能有些情况是可以的,大家注意一下

    PS2:应用程序池的【标识】,如果LocalSystem不行,那就设【自定义账户】,账户用管理员账户(administrator)

    PS3:这样执行后的效果可能会跟winform桌面程序执行的效果有点不同,例如我调用的exe程序,winform调用后运行时有个命令行窗体一直出现,而webservice调用没有命令行窗体,但通过 【任务管理器】 可以看到进程是运行着

  • 相关阅读:
    开发一个App的成本是多少?
    自定义Drawable
    数据库服务软件类型和配置redis
    分库分表
    创建视图
    部署MYSQL高可用集群
    读写分离《二》
    读写分离和多实例
    部署mysql主从同步
    备份和恢复
  • 原文地址:https://www.cnblogs.com/cannel/p/3819796.html
Copyright © 2020-2023  润新知