C# CGI程序

图片 1

① 、控制面板—>程序和作用—>打开或关闭Windows功用

③ 、CGI控制台应用程序代码:

View Code

② 、新建3个网站,配置ISAPI和CGI限制、处理程序映射

图片 2图片 3

View Code

四 、Web程序页面代码:

图片 4

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CGITest.aspx.cs" Inherits="Web监听.CGITest" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <link href="/JS/easyui/easyui.css" rel="stylesheet" type="text/css" />
    <script src="/JS/jquery.min.js" type="text/javascript"></script>
    <script src="/JS/easyui/jquery.easyui.min.js" type="text/javascript"></script>
    <script src="/JS/SimpoWindow.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            $.ajax({
                type: "get",
                url: "http://localhost:160/cgi.exe?data=abcd",
                dataType: "json",
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    $("#msg").html(textStatus);
                },
                success: function (data, textStatus) {
                    $("#msg").html(data.d);
                }
            });

            //倒计时
            UpdateTime(10);
        });

        //倒计时
        function UpdateTime(n) {
            if ($("#msg").html().indexOf("请等待") != -1) {
                $("#msg").html("请等待(" + n + ")......");

                if (n > 0) {
                    setTimeout(function () {
                        UpdateTime(n - 1);
                    }, 1000);
                }
            }
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div id="msg" style="text-align: center; vertical-align: middle;">
        请等待......
    </div>
    </form>
</body>
</html>

图片 5

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;

namespace CGI
{
    class Program
    {
        static int i = 0;

        static void Main(string[] args)
        {
            Thread thread = new Thread(new ParameterizedThreadStart(delegate(object obj)
            {
                while (true)
                {
                    if (i < 100)
                    {
                        i++;
                        Thread.Sleep(100);
                    }
                    else
                    {
                        string queryStr = Environment.GetEnvironmentVariable("QUERY_STRING");
                        string[] paramArr = queryStr.Split('&');
                        string[] keyValue = paramArr[0].Split('=');

                        Console.Write("Content-Type: text/html;charset=GB2312;\n\n");
                        Console.Write("{\"d\":\"您传入的参数为:" + keyValue[1] + ",输出结果为:" + i + "\"}");
                        Environment.Exit(0);
                    }
                }
            }));
            thread.Start();
        } // end of Main
    } // end of Program
}

图片 6图片 7

 

    把有关的职能勾上,点“鲜明”

相关文章