Windows2003-3790/termsrv/newclient/rdpdr/w32drman.h
2020-09-30 16:53:55 +02:00

94 lines
1.9 KiB
C++

/*++
Copyright (c) 1998-2000 Microsoft Corporation
Module Name:
w32drman
Abstract:
This module defines a special subclass of the Win32 client-side RDP
printer redirection "device" class. The subclass, W32DrManualPrn
manages a queue that is manually installed by a user by attaching
a server-side queue to a client-side redirected printing port.
Author:
Tad Brockway 3/23/99
Revision History:
--*/
#ifndef __W32DRMAN_H__
#define __W32DRMAN_H__
#include "w32drprn.h"
///////////////////////////////////////////////////////////////
//
// W32DrManualPrn
//
//
class W32DrManualPrn : public W32DrPRN
{
private:
BOOL _isSerialPort;
//
// Parse the cached printer information for specific information
// about this printer.
//
BOOL ParsePrinterCacheInfo();
public:
//
// Constructor/Destructor
//
W32DrManualPrn(ProcObj *processObject, const DRSTRING printerName,
const DRSTRING driverName,
const DRSTRING portName, BOOL defaultPrinter, ULONG id);
virtual ~W32DrManualPrn();
//
// Post-IRP_MJ_CREATE initialization.
//
virtual DWORD InitializeDevice(DrFile* fileObj);
//
// Enumerate devices of this type.
//
static DWORD Enumerate(ProcObj *procObj, DrDeviceMgr *deviceMgr);
//
// To notify the printer object that the cached data has been restored
// in case it needs to read information out of the cached data.
//
virtual VOID CachedDataRestored();
//
// Get the device type. See "Device Types" section of rdpdr.h
//
virtual ULONG GetDeviceType() { return RDPDR_DTYP_PRINT; }
//
// Return the class name.
//
virtual DRSTRING ClassName() { return TEXT("W32DrManualPrn"); }
};
#endif