README.TXT
PIPES   
 
 
The PIPE sample demonstrates how to write a program that uses pipes for  
transferring data between the client and the server. The client sends a  
file to the server using pipes. The server then "encodes" the data by  
adding 1 to every element in the file, and then sends the file back using 
pipes. The pipe used in this sample program is a in/out pipe. 
 
This program also allows the user to compile either for UNICIODE or ANSI. 
See section below for guidelines on how to compile for UNIOCDE 
 
  
FILES  
=====  
  
The directory SAMPLES\RPC\PIPES contains the following files for 
building the sample distributed application PIPES:  
  
File          Description 
------------------------- 
 
README.TXT      Readme file for the pipe sample  
PIPE.IDL        Interface definition language file  
PIPE.ACF        Attribute configuration file  
PIPEC.C         Client main program  
PIPES.C         Server main program  
COMMON.H        Common header file for all the files 
PIPEPROC.C      Remote procedures  
MAKEFILE        nmake file to build 32-bit client and server app. 
                for ANSI characters. 
MAKEFILE.UNI    nmake file to build 32-bit client and server app. 
                for UNICODE characters. 
 
 
NMAKE builds the executable programs CLIENT.EXE (client) and 
SERVER.EXE (server). 
 
Note: The client and server applications can run on the same  
Microsoft Windows NT computer when you use different screen groups. 
 
 
 
COMPILING FOR UNICODE: 
====================== 
 
type nmake /f makefile.uni at the command line. This will cause 
the compiler to use the file MAKEFILE.UNI instead of the MAKEFILE. 
 
The reason behind the use of TEXT, TCHAR, _TUCHAR, _tprintf, _tcscpy, _tcscmp, 
and _tfopen is that the program can easily be compiled to support UNICODE  
(Wide characters) as well as supporting one byte ANSI characters.  
 
    TEXT:   This macro will put an L in front of the string if we are 
                compiling for UNICODE, and do nothing if compiling for ANSI 
    TCHAR:   expands to either char or wchar_t during compilation 
    _TUCHAR:   expands to either unsigned char or wchar_t during compilation 
    _tprintf:   expands to either printf or to wsprintfduring compilation 
    _tcscpy:   expands to either strcpy or to wcscpy during compilation 
    _tcscmp:   expands to either strcmp or to wcscmp during compilation 
    _tfopen:   expands to either fopen or to _wfopen during compilation