⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch05l05.txt

📁 《Web编程专家指南》
💻 TXT
字号:
Listing 5.5 An example DGI extension./*  Dynamic Gateway Interface -- A. Montefusco */#include <time.h>#include <string.h>#include <iostream.h>#include "dgi.h"#include "dgihelp.h"#if defined(__OS2__) && defined(__BORLANDC__)#define EXPORT _export#else#define EXPORT#endif/* HTML 2.0 compatible header... */#define HTML  "Content-type: text/html\r\n\r\n"                 \        "<html>"                                                \        "<head><title>Returned from DGI executable !!!</title></head>" \        "<body>"                                                \        "<h1>                                                 " \        "DGI TEST                                             " \        "</h1>                                                " \        "<p>Returned from Dynamic Gateway Interface executable.  "/* ...and trailer */#define HTML_TRAILER  "</body>" \                      "</html>"PDGI_FN_OUTMSG  pFnOut;PDGI_FN_GETDATA pFnGetData;void           *pCbPrm;long EXPORT DgiStart (PDGI_FN_OUTMSG pFnOm, PDGI_FN_GETDATA pFnGd, void *pPrm){   cerr << "DgiStart" << endl;   pFnOut     = pFnOm;   pFnGetData = pFnGd;   pCbPrm     = pPrm;   return 1;}long EXPORT DgiDoAction (const char *pszQueryInfo, const char *pszPathInfo, const char *pszFormData, char *){   cerr << "DgiDoAction:" << endl        << "Query info:\t[" << pszQueryInfo << "]"        << endl        << "Path info:\t[" << pszPathInfo << "]"        << endl        << "Form data:\t[" << pszFormData << "]"        << endl;   htPrintf ("%s", HTML);   time_t  timeNow = time(0);   htPrintf ("<p>Run @ %s GMT+1<p>", asctime (localtime(&timeNow)));   htPrintf ("Remote host: <b>%s</b><p>", pFnGetData ("REMOTE_HOST", pCbPrm));   htPrintf ("%s", HTML_TRAILER);   return 1;}long EXPORT DgiEnd (void){   cerr << "DgiEnd" << endl;   return 1;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -