sccat 发表于 2004-12-20 10:11:00

[求助]请教高手一个VBA使用API问题(关于打印的)

在打印的API有一个Setjob,我查Msdn,只有关于C++的<BR>typedef<BR>typedef struct _JOB_INFO_2 { // ji2 <BR>                       DWORD                                       JobId; <BR>                       LPTSTR                               pPrinterName; <BR>                       LPTSTR                               pMachineName; <BR>                       LPTSTR                               pUserName; <BR>                       LPTSTR                               pDocument; <BR>                       LPTSTR                               pNotifyName; <BR>                       LPTSTR                               pDatatype; <BR>                       LPTSTR                               pPrintProcessor; <BR>                       LPTSTR                               pParameters; <BR>                       LPTSTR                               pDriverName; <BR>                       LPDEVMODE       pDevMode; <BR>                       LPTSTR                               pStatus; <BR>                       PSECURITY_DESCRIPTOR pSecurityDescriptor; <BR>                       DWORD                                       Status; <BR>                       DWORD                                       Priority; <BR>                       DWORD                                       Position; <BR>                       DWORD                                       StartTime; <BR>                       DWORD                                       UntilTime; <BR>                       DWORD                                       TotalPages; <BR>                       DWORD                                       Size; <BR>                       SYSTEMTIME Submitted; <BR>                       DWORD                                       Time; <BR>                       DWORD                                       PagesPrinted ; <BR>} JOB_INFO_2;       


typedef struct _JOB_INFO_1 {                       // ji1 <BR>                       DWORD       JobId; <BR>                       LPTSTR pPrinterName; <BR>                       LPTSTR pMachineName; <BR>                       LPTSTR pUserName; <BR>                       LPTSTR pDocument; <BR>                       LPTSTR pDatatype; <BR>                       LPTSTR pStatus; <BR>                       DWORD       Status; <BR>                       DWORD       Priority; <BR>                       DWORD       Position; <BR>                       DWORD       TotalPages; <BR>                       DWORD       PagesPrinted; <BR>                       SYSTEMTIME Submitted; <BR>} JOB_INFO_1;


但是我看到网上一个VB的ADDJOB_INFO_1<BR>Type ADDJOB_INFO_1 ' 8 Bytes<BR>lpPath As Long<BR>JobId As Long<BR>End Type<BR>也找不到JOB_INFO_1


然后自己准备照着改一个<BR>Type JOB_INFO_1<BR>                       LONG       JobId 'DWORD       JobId; <BR>                       String pPrinterName 'LPTSTR pPrinterName; <BR>                       String pMachineName 'LPTSTR pMachineName; <BR>                       String pUserName 'LPTSTR pUserName; <BR>                       String pDatatype 'LPTSTR pDocument; <BR>                       String pDatatype 'LPTSTR pDatatype; <BR>                       String pStatus 'LPTSTR pStatus; <BR>                       LONG Status 'DWORD       Status; <BR>                       LONG Priority 'DWORD       Priority; <BR>                       LONG Position 'DWORD       Position; <BR>                       LONG TotalPages 'DWORD       TotalPages; <BR>                       LONG PagesPrinted 'DWORD       PagesPrinted; <BR>                       SYSTEMTIME Submitted<BR>End Type


Type SYSTEMTIME ' 16 Bytes <BR>wYear As Integer<BR>wMonth As Integer<BR>wDayOfWeek As Integer<BR>wDay As Integer<BR>wHour As Integer<BR>wMinute As Integer<BR>wSecond As Integer<BR>wMilliseconds As Integer<BR>End Type


不知道是否可行,还有就是EnumJobs 和 GetJob ,setjob 的用法不是很清楚.


我的原意是将"Sever//print1"里面的job先列出来,自动找出属于我自己的,再把我的job的优先级调为2(我有这个权限,双击打印机后可以手动调job的优先级).


请高手门出点意见,最好是给出类似的代码给我参考一下.
页: [1]
查看完整版本: [求助]请教高手一个VBA使用API问题(关于打印的)