如何在Asp.netWeb服务器端启动bat文件

我需要调用控制台应用程序将数据加载到位于公司域内的远程服务器上的另一个桌面应用程序中。

我需要调用控制台应用程序将数据加载到位于公司域内的远程服务器上的另一个桌面应用程序中。

用户将进入网页并将数据上传到 asp.net Web 服务器,该服务器在转换后应调用该控制台应用程序。用户位于远程,除 Web 服务器外没有任何其他访问权限。

我决定降低安全性 Web 应用程序上下文,并让 asp.net 工作过程在当前 IIS 6.0 Web 服务器上启动控制台应用程序

我所做的:

我更改了本地系统应用程序池的安全帐户;

我添加了 ASPNET 帐户和 IIS_WPG IIS 进程帐户到管理员组;

我为“IIS Admin Service”和“World Wide Web Publishing Service”进程添加了“允许服务与 desctop 交互”,并重新启动了机器;

我试图通过测试页面代码隐藏在服务器端启动 BAT 文件,但失败:

protected void btnStart_Click(object sender, EventArgs e)
{
    Process process = new Process(); 
    process.StartInfo.FileName = @”C:\run.bat”; 
    process.StartInfo.UseShellExecute = false;
    process.Start();
    process.WaitForExit();  
}

错误为access denied.

请帮我找到任何可行的想法如何在 Web 服务器端启动 bat 文件。谢谢

4

尝试将UseShellExecute设置为 true 而不是 false。毕竟,批处理文件在 shell 中运行-因此您需要shell 来执行它。(另一个选项是运行 cmd.exe 并将批处理文件的名称作为参数传递,例如“cmd.exe / k c:\ run.bat”)

您可能还想尝试创建一个简单的.NET 应用程序,它只是(说)创建一个带有时间戳的文件,这样您可以测试“我可以启动另一个进程”位与“我可以让批处理文件工作”位分开。

3

将特定的批处理文件放在应用程序本身中。

string str_Path = Server.MapPath(".") + "\\run.bat";
ProcessStartInfo processInfo = new ProcessStartInfo(str_Path);
processInfo.UseShellExecute = false;
Process batchProcess = new Process();
batchProcess.StartInfo = processInfo;
batchProcess.Start();
2

看看这个例子:Run Interactive Command Shell or Batch Files From ASP.NET

它使用不同的方法。他们建议运行 cmd.exe 并逐行执行命令。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(522)
Wordpress暂存环境
上一篇
是否可以在 matplotlib中添加一个字符串作为图例项
下一篇

相关推荐

  • 方舟生存进化怎么进服务器:ASP.NET服务器端缓存生存期

    关于方舟生存进化怎么进服务器的问题,在cache life中经常遇到,我写了一个小的 ASHX 处理程序,它使用一个小的状态对象,我想在一系列请求的生命周期中持续存在。我有处理程序将对象放在服务器端缓存(HttpContext.Current.Cache)中,并在ProcessRequest的开头检索它。…

    2022-12-14 03:13:06
    0 86 94
  • C语言思维导图:如何在Asp.net C# 中集成思维导图

    关于C语言思维导图的问题,在mind map software ubuntu中经常遇到,我从客户端有一些非常令人兴奋的要求。客户不希望我在基于网格的布局中显示结果 (它看起来像一个数据库给他),而他希望我以某种思维导图的方式显示结果。我已经用 Google 搜索了一些思维导图软件,但它们似乎是独立的软件。…

    2022-12-21 11:52:16
    0 64 96
  • 方舟生存进化怎么租服务器:ASP.NET服务器端缓存生存期

    关于方舟生存进化怎么租服务器的问题,在cache life中经常遇到,我写了一个小的 ASHX 处理程序,它使用一个小的状态对象,我想在一系列请求的生命周期中持续存在。我有处理程序将对象放在服务器端缓存(HttpContext.Current.Cache)中,并在ProcessRequest的开头检索它。…

    2022-12-08 06:31:27
    0 84 87
  • Asp的工作原理是什么:ASP.NETCore UrlHelper及其工作原理

    关于Asp的工作原理是什么的问题,在asp net core urlhelper中经常遇到,我是相当新的 ASP.NET Core,现在我试图掌握 UrlHelper 的一般工作原理。…

    2022-11-25 07:07:27
    0 42 14
  • 如何将AzureAD身份验证添加到现有的.NETMVCWeb应用程序

    我有一个使用 Windows 身份验证的现有.NET MVC Web 应用程序。当我们将项目从本地迁移到 Azure 时,有必要更新应用程序以使用 Azure AD 身份验证。我试图使用 VS 2019 使用 Connected Services,但无法找到 Azure AD 身份验证相关服务。任何人都可以分享将 Azure AD 添加到现有应用程序的过程吗?…

    2022-12-06 08:55:15
    0 83 76
  • 将Paypal付款链接到asp.net网站

    我试图将我的 asp.net 网站链接到 Paypal 支付系统。我已经在 Paypal 上创建了我的业务配置文件,并将 Paypal 按钮添加到我的网页,但我不明白如何使 Paypal 引用信息。…

    2022-12-10 08:28:54
    0 97 70
  • 如何在ASP.NETCore中获取客户端IP地址

    能否请您让我知道在使用 MVC 6 时如何在 ASP.NET 中获取客户端 IP地址。Request.ServerVariables["REMOTE_ADDR"]不起作用。…

    2022-11-11 15:14:38
    0 21 36
  • 我们可以将Mvc应用程序开发的.Net框架转换为MvcAsp.NetCore 2.0而无需代码更改或最少的代码更改吗

    我已经使用.net Framework 在 Mvc 5.2.3 中开发了我的应用程序。现在我需要将我的应用程序转换为 Asp.net Mvc Core 2.0。…

    2022-11-20 09:31:16
    0 67 51

发表评论

登录 后才能评论

评论列表(58条)