如果从 VS2012 执行但在 IIS 上托管时不工作,则 Exe 工作

Exe working if executing from VS2012 but not working when hosted on IIS

我正在从 MVC 执行这段代码 website.If 我 运行 这段来自 VS 2012 IIS 的代码表明它可以工作,但是如果我在 IIS 服务器上托管网站,它就无法工作。我试过调试,但出现了一些错误代码。如果我也冒充我的身份证并传递我的身份证但一切都是徒劳的。

代码:

    System.Diagnostics.Process proc = new System.Diagnostics.Process();

    Char[] chr = Password.ToCharArray();

    System.Security.SecureString pwd = new System.Security.SecureString();

    foreach (char c in chr)
    {
        pwd.AppendChar(c);
    }

    proc.StartInfo.FileName = path to WZZip.exe

    //proc.StartInfo.Arguments = -ys20480 pathtosplit landingZone;  
    proc.StartInfo.UserName = UserName;  //Comes from config file
    proc.StartInfo.Password = pwd;        //Comes from config file
    proc.StartInfo.Domain = Domain;      //Comes from config file
    proc.StartInfo.RedirectStandardError = true;
    proc.StartInfo.RedirectStandardOutput = true;
    proc.StartInfo.UseShellExecute = false;
    bool result = proc.Start();

当运行通过iis 运行一个exe 你应该从一些问题开始:

A) 我应该绕过保护 IIS 服务器和 Windows 系统的 built-in 安全措施吗?

B) 如果您允许可执行文件 运行 使用进入 OS 或 IIS 服务器的路径,还有谁可以使用它,即 "HAcker" ?

C) 对 Windows 和 IIS 服务器进行了更改,以保护系统免受 "Attacks" 的影响并限制漏洞利用的表面区域。 对系统和 IIS 服务器进行了哪些安全监控? 您将为您的可执行文件实施什么安全保护?

如果你能证明 A - C 的风险是合理的,你就可以 "Work Around" 限制。

如果您了解 Risks Technet 有工具可以帮助解决某些问题 http://blogs.technet.com/b/elevationpowertoys/

对于 Windows Vista Windows 7 Windows 2008,您拥有标准用户和权限限制

一个线程 http://forums.iis.net/p/1178151/1981859.aspx#1981859 谁能做什么。

您可以搜索(Goole 或 Bing)"Changes to Windows Destop Security" "Session(0) changes and impacts for Systems & Services"

您还可以从 Microsoft 下载中心获取 "Vista Developer Story" 的副本。

您应该查看 MSDN 库以了解应用程序兼容性以及如何使用用户访问控制 (UAC) 进行设计。

许多安全更改已添加到 Windows 2003 和 IIS 6.0 服务器。

你终于可以在 IIS 中添加 MIME 类型了

  • 打开 IIS 管理器。

  • 浏览到 ThinApp EXE 所在的 IIS 站点或子文件夹。

  • 右键单击该站点或子文件夹并select属性。

  • Select HTTP HEADERS 选项卡。

  • 单击“MIME 类型”按钮。

  • 在扩展框中,输入“.exe”。

  • 在 MIME 类型框中,键入 "application/octet-stream"。

  • 单击确定。