在Windows Azure中运行非.NET代码及FastCGI支持
在Windows Azure环境中,我们常常需要运行一些特定的代码和程序,以满足不同的业务需求。本文将详细介绍如何在Windows Azure中运行非.NET代码,以及如何利用FastCGI机制来支持多种编程语言。
运行命令行程序及权限问题
在尝试使用System.Diagnostics.Process类启动cmd.exe实例、传递参数并读取输出时,可能会遇到问题。当在Dev Fabric下按F5运行网站,输入命令(如dir)并回车后,可能不会得到文件列表,而是一个安全异常。这是因为在沙盒环境中,Windows Azure的托管代码默认以中等信任级别运行,这会阻止以编程方式创建进程。
要解决这个问题,需要启用完全信任/本地代码执行,以放宽安全限制。具体操作是打开ServiceDefinition.csdef文件,并将enableNativeCodeExecution设置为true,示例代码如下:
<?xml version="1.0" encoding="utf-8"?> <ServiceDefinition xmlns= "http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">