home *** CD-ROM | disk | FTP | other *** search
- /* Test for cin/cout from WB */
-
- #include <use_amiga_argc_argv.h>
-
- #include <fstream.h>
- #include <iostream.h>
- extern filebuf cin_fb, cout_fb, cerr_fb;
-
- UBYTE **ToolTypes=NULL; /* for WB-startup */
-
- int main(int argc, char *argv[])
- {
- if(argc)
- {
- /* Start from CLI */
- cout << "Start from CLI" << endl;
- }
- else
- {
- /* Start from WB */
-
- ToolTypes = ArgArrayInit(argc,(UBYTE **)argv);
-
- stdin=Open(ArgString(ToolTypes,(STRPTR)"WINDOW", (STRPTR)"CON:0/0/640/200/Default Window/AUTO/CLOSE/WAIT"),MODE_NEWFILE);
-
- if(!stdin)
- stdin=Open((STRPTR)"CON:0/0/640/200/Default Window/AUTO/CLOSE/WAIT", MODE_NEWFILE);
-
- stdout=stdin;
- SelectInput(stdin);
- SelectOutput(stdout);
-
- cin_fb.close();
- cin_fb.attach((int)stdin);
- cout_fb.close();
- cout_fb.attach((int)stdout);
- cerr_fb.close();
- cerr_fb.attach((int)stdout);
-
- cin_fb._flags2 |=_DO_NOT_CALL_SYSCLOSE;
- cout_fb._flags2 |=_DO_NOT_CALL_SYSCLOSE;
- cerr_fb._flags2 |=_DO_NOT_CALL_SYSCLOSE;
-
- /* Do something */
-
- cout << "Please enter String :";
-
- char Buffer[80];
-
- cin >> Buffer;
-
- cout << "Buffer :" << Buffer << endl;;
-
- Close(stdin);
-
- stdin=0;
- stdout=0;
- SelectInput(0);
- SelectOutput(0);
-
- cin_fb.close();
- cout_fb.close();
- cerr_fb.close();
- }
-
- return RETURN_OK;
- }
-