67 lines
1.7 KiB
C
67 lines
1.7 KiB
C
|
/*++ BUILD Version: 0001 // Increment this if a change has global effects
|
||
|
|
||
|
Copyright (c) 1993-1999 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
ntddrdr.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This is the include file that defines all constants and types for
|
||
|
accessing a network redirector device.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Manny Weiser (mannyw) 27-Jun-1993
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _NTDDRDR_
|
||
|
#define _NTDDRDR_
|
||
|
|
||
|
#if _MSC_VER > 1000
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#define RDR_SERVER_LENGTH 80
|
||
|
#define RDR_QUEUE_LENGTH 80
|
||
|
|
||
|
//
|
||
|
// NtDeviceIoControlFile/NtFsControlFile IoControlCode values for this device.
|
||
|
//
|
||
|
// Warning: Remember that the low two bits of the code specify how the
|
||
|
// buffers are passed to the driver!
|
||
|
//
|
||
|
//
|
||
|
// Method = 00 - Buffer both input and output buffers for the request
|
||
|
// Method = 01 - Buffer input, map output buffer to an MDL as an IN buff
|
||
|
// Method = 10 - Buffer input, map output buffer to an MDL as an OUT buff
|
||
|
// Method = 11 - Do not buffer either the input or output
|
||
|
//
|
||
|
|
||
|
#define IOCTL_REDIR_BASE FILE_DEVICE_NETWORK_REDIRECTOR
|
||
|
|
||
|
#define _REDIR_CONTROL_CODE(request, method, access) \
|
||
|
CTL_CODE(IOCTL_REDIR_BASE, request, method, access)
|
||
|
|
||
|
#define FSCTL_GET_PRINT_ID _REDIR_CONTROL_CODE(1, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||
|
|
||
|
typedef struct _QUERY_PRINT_JOB_INFO {
|
||
|
ULONG JobId; // Print job ID
|
||
|
WCHAR ServerName[RDR_SERVER_LENGTH+1]; // Server name
|
||
|
WCHAR QueueName[RDR_QUEUE_LENGTH+1]; // Queue name.
|
||
|
} QUERY_PRINT_JOB_INFO, *PQUERY_PRINT_JOB_INFO;
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif // ifndef _NTDDRDR_
|