Windows 3.1 Device Drivers (ddag31qh.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
SetEnvironment
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
int SetEnvironment(lpszPort, lpvEnviron, cbMaxCopy)
LPCSTR lpszPort;              /* address of port name                  */
const void FAR* lpvEnviron;   /* address of buffer for new environment */
UINT cbMaxCopy;               /* maximum number of bytes to copy       */
 
The SetEnvironment function copies the contents of the specified buffer into
the environment associated with the device attached to the specified system
port. The environment, maintained by GDI, contains binary data used by GDI
whenever a device context is created for the device on the given port.
 
Parameter   Description
────────────────────────────────────────────────────────────────────────────
 
lpszPort    Points to a null-terminated string that specifies the name of
            the port.
 
lpvEnviron  Points to the buffer that contains the new environment. This
            buffer is in the form of a DEVMODE structure.
 
cbMaxCopy   Specifies the maximum number of bytes to copy to the buffer.
 
Return Value
 
The return value is the number of bytes copied to the environment, if the
function is successful. It is zero if there is an error or 1 if the
environment is deleted.
 
Comments
 
The SetEnvironment function is used by device drivers.
 
The SetEnvironment function deletes any existing environment. If there is no
environment for the given port, SetEnvironment creates one. If the
cbMaxCopy parameter is zero, the existing environment is deleted and not
replaced.
 
The first member of the DEVMODE structure pointed to by the lpvEnviron
parameter must be the same as that passed in the lpDestDevType parameter of
the Enable function. If lpszPort specifies a null port, the dmDeviceName
member is used to locate the environment. The first member in the block
pointed to by the lpEnviron parameter should be an atom that the printer
driver has added to the global atom table.
 
See Also
 
GetEnvironment, DEVMODE