DGI - Dos Gateway Interface --------------------------- xChaos software anounces new chance for developers of DOS applications - DGI. DGI can be described as component-oriented enviroment for DOS compatible operating system. Most of Arachne extensions are implemented as DGI components. Why DGI ? --------- Today, there are crowds of programers who know how to write simple command-line, text-mode applications in different programming languages, including DOS shell (*.BAT), Basic, C, Turbo Pascal, etc. But the common usage of window-oriented operating systems made it hard for these programmers to make their programs easy-to use for common users, who are expecting graphical interface. Fortunately, there appeared new, even easier communication standard than windows and pull-down menus - WWW pages. They are both easier to use and easier to create than windows applications, and it is possible to use also much more beautiful design. (Note: I'm speaking about windows based interfaces generaly, not about Microsoft (TM) Windows (TM), also known as "Windoze", or "Wir95"). The application enviroment and word of explanation (help, manual) are perfectly integrated in WWW applications, based on CGI standard (Common Gateway Interface). CGI is thousand times more popular than Java, partly because all browsers support CGI forms, and partly because CGI scripts are in fact simple text-mode applications, which can be written in many different programming languages. 90% of simple PC applications do not require any real-time data input from user - user is simply asked to fill some form, for example values of A and B and desired operator, than the form has to be "submitted" and program then prints the output - it makes no difference if you use only plain text, or hypertedt markup language (HTML). You can use as simple commands as eg. PRINT "

This is title

" to create nice looking output. My idea is: you don't have to run CGI's on server - you can run it in DOS! If you want do distribute CD-ROM with default WWW browser, and if you want to use CGI scripts instead of Java or Javascript, you should try Arachne. New standard is called DGI (Dos Gateway Interface) instead of CGI (Common Gateway Interface). Just copy your scripts from server to your PC and run them ! (of course, the opposite process - developing of CGI in DOS enviroment is also possible. DOS debugging tools are often more user friendly than those running at Un*x command line...). All you need is browser supporting DGI calls - for example Arachne. What is DGI component ? ----------------------- DGI must be DOS executable (it means even *.BAT !) able to read standard CGI query string from command line or from file specified as program argument and must be able to output HTML page to stdout or to file specified as program argument. DGI should work only with files and standart input/output; not with video memory, either in text or graphics mode. That's all. But even this offers interesting possibilities: DGI can access Arachne cache index file. DGI can for example write outgoing mail message to Arachne MAIL directory (file with extension *.TBS) and then return HTML page with message "Outgoing mail prepared" and button "Send now". This can be used for example to encrypt content of online forms using PGP. DGI is also more secure then Active X, because user must modify Arachne configuration file to install new DGI - after scanning it for viruses, etc. How to add DGI to Arachne ? --------------------------- Arachne uses configuration file MIME.CFG for configuring plugins and DGI components. It will be necessary to write simple setup program for DGI component, which will ask for directory where Arachne and MIME.CFG is installed and than modify it. It is simillar to installing Windows programs. Line added in MIME.CFG can look for example like that: file/myapp.cgi >HTM|[200]c:\myapp\myapp.exe -q%s>%2 Syntax of MIME.CFG up to [200] symbol is not important; it is included in the comments in MIME.CFG. The command line itself says: "Execute c:\myapp\myapp.exe with at least 200 kb of DOS memory free, post the CGI query string as an argument called -q and redirect output to file with extension HTM which will be displayed after finishing program. So the command assembled by Arachne can look for example like: c:\myapp\myapp.exe -qSEARCHFOR=SOME+WORDS&MODE=1>TMP.HTM How to add DGI to HTML pages ? ------------------------------ It is clear, that the same HTML pages will be used on WWW server as well as for DGI components. So for calling DGI described in previous example use following
tag syntax: After putting this page online, just create script "myapp.cgi" in the same directory as the page is located and make it do the same job as prgram myapp.exe. When accessing online pages, any browser will be able to access this script. When accessing offline pages with Arachne, DGI component will be executed instead. Ok, but I am not interested in DOS - what next ? ------------------------------------------------ DGI components are in fact only the earliest version of new, revolution technology, based on component oriented programming. xChaos software is researching new powerful component based technology - Virtual File System. It will be easy, user and programmer friendly way to make any system or network resource available for any application. Target platform for this technology is Linux operating system.