Bonjour,
Je ne trouve pas la syntaxe pour recuperer les paramètre défini dans la stucture SYSTEMTIME, au travers de la structure JOB_INFO_2A.
Dans JOB_INFO_2A on a la definition d'une variable pointant sur la structure SYSTEMTIME.
SYSTEMTIME est une structure wYear est un entier sur 2 octets //Type C : WORD wMonth est un entier sur 2 octets //Type C : WORD wDayOfWeek est un entier sur 2 octets //Type C : WORD wDay est un entier sur 2 octets //Type C : WORD wHour est un entier sur 2 octets //Type C : WORD wMinute est un entier sur 2 octets //Type C : WORD wSecond est un entier sur 2 octets //Type C : WORD wMilliseconds est un entier sur 2 octets //Type C : WORD FIN
JOB_INFO_2A est une structure ... submitted est un SYSTEMTIME ... FIN
Je souhaite recuperer les paramètres wHour, ...
pour récuperer les paramètres present dans la structure JOB_INFO_2A j'utilise la syntaxe suivante :
SI nRetourFonction > 0 ALORS //Lance une fois pour obtenir le nombre d'octet dont on a besoin : pcbNeeded hPrinter=hdprint //attribution du handle creé par OpenPrint FirstJob=0 NoJobs00 Level=2 cbBuf=1 nRetourFonction=API("WINSPOOL.DRV","EnumJobsA",hPrinter,FirstJob,NoJobs,Level,&pJob,cbBuf,&pcbNeeded,&pcReturned) //LAnce une seconde fois pour obtenir le nombre de job dans la file d'attente : pcReturned nRetourFonction=API("WINSPOOL.DRV","EnumJobsA",hPrinter,FirstJob,NoJobs,Level,&pJob,pcbNeeded,&pcbNeeded,&pcReturned) nnbdoc est un entier nnbdoc=pcReturned //Attribution du nombre de Job à la variable nnbdoc //Si la fonction à fonctionné SI nRetourFonction > 0 ALORS SI nnbdoc > 0 ALORS POUR z=1 A nnbdoc SI z=1 ALORS sListedesfichier="pPrinterName;pUserName;pDocument;pNotifyName;pParameters;pDriverName;pStatus;StartTime;UntilTime;TotalPages;Size;PagePrinted"+CRLF SINON sListedesfichier += CRLF FIN SI pJob[z]:pPrinterName<>0 ALORS Transfert(&Buf,pJob[z]:pPrinterName,2047);sListedesfichier += Buf+";" SI pJob[z]:pUserName<>0 ALORS Transfert(&Buf,pJob[z]:pUserName,2047);sListedesfichier += Buf+";" SI pJob[z]:pDocument<>0 ALORS Transfert(&Buf,pJob[z]:pDocument,2047);sListedesfichier += Buf+";" SI pJob[z]:pNotifyName<>0 ALORS Transfert(&Buf,pJob[z]:pNotifyName,2047);sListedesfichier += Buf+";" SI pJob[z]:pParameters<>0 ALORS Transfert(&Buf,pJob[z]:pParameters,2047);sListedesfichier += Buf+";" SI pJob[z]:pDriverName<>0 ALORS Transfert(&Buf,pJob[z]:pDriverName,2047);sListedesfichier += Buf+";" SI pJob[z]:pStatus<>0 ALORS Transfert(&Buf,pJob[z]:pStatus,2047);sListedesfichier += Buf+";" SI pJob[z]:StartTime<>0 ALORS Transfert(&Buf,pJob[z]:StartTime,2047);sListedesfichier += Buf+";" SI pJob[z]:UntilTime<>0 ALORS Transfert(&Buf,pJob[z]:UntilTime,2047);sListedesfichier += Buf+";" Nbpg est un entier=PJob[z]:TotalPages sListedesfichier += Nbpg+";" sizeoctet est un entier=PJob[z]:Size sListedesfichier += sizeoctet+";" nPagprinted est un entier=pJob[z]:PagesPrinted sListedesfichier += nPagprinted+";" /// sListedesfichier += pJob[z] // dTete est une date=pJob[z]:Submitted // sListedesfichier += dtete // pJob[z]:Submitted
//sListedesfichier += PJob[z]:pDevMode // SI pJob[z]:Size<>0 ALORS Transfert(&Buf,pJob[z]:Size,2047);sListedesfichier += Buf+";" // SI pJob[z]:Time<>0 ALORS Transfert(&Buf,pJob[z]:Time,2047);sListedesfichier += Buf+";" // SI pJob[z]:PagesPrinted<>0 ALORS Transfert(&Buf,pJob[z]:PagesPrinted,2047);sListedesfichier += Buf+";" FIN //Fermeture de la connexion à l'imprimante API("WINSPOOL.DRV","ClosePrinter",hPrinter) SINON //Fermeture de la connexion à l'imprimante API("WINSPOOL.DRV","ClosePrinter",hPrinter) Info("echec1 nbdoc pas supérieur à zero") FIN SINON //Fermeture de la connexion à l'imprimante API("WINSPOOL.DRV","ClosePrinter",hPrinter) Info("echec2 la fonction API n'a pas fonctionné") FIN SINON Info("Impossible d'ouvrir l'imprimante") FIN
Comment fait-on pour recuperer les paramètres d'une structure dans une structure : Une syntaxe dans le style : pJob[z]:Submitted:wYear mais cela ne fonctionne pas |