Ignore:
Timestamp:
Jun 2, 2010, 7:49:44 AM (15 years ago)
Author:
herwigb
Message:

PS header option code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/1.0/src/splpd.c

    r31 r33  
    381381        ULONG    pcbWritten ;
    382382        USHORT   i;
     383        USHORT   j;
     384        USHORT   pos;
    383385        HFILE    control;
     386        char     pszPSHeader[] = "%!PS-Adobe-3.0\n";
     387        ULONG    cbHeader;
    384388        char     filename[256];
     389        char     binfile[256];
     390        char     parameters[256];
     391        char     workingdir[256];
     392        PUCHAR   addpshdr;
     393        PUCHAR   ON = "1";
    385394        DATETIME dt;
    386395        char     spool_dir[256];
     
    414423                                OPEN_ACCESS_READWRITE,         /* Open mode of the file */
    415424                                0L);                           /* No extended attribute */
    416 /*  DosWrite(*phFile,pszPSHeader,strlen(pszPSHeader),&cbHeader);  */
     425
    417426        sprintf(szTemp,"PM_%s",pszPortName);
    418427        if (PrfQueryProfileString (HINI_SYSTEMPROFILE,
     
    425434                sprintf(tmp   ,"%s\\UNI\\%d.control",spool_dir,*phFile);
    426435                rc = DosOpen( tmp    ,
    427                                         &control,                         /* File handle */
    428                                         &ulAction,                     /* Action taken */
     436                                        &control,                    /* File handle */
     437                                        &ulAction,                   /* Action taken */
    429438                                        strlen(szTemp),              /* File primary allocation */
    430                                         FILE_ARCHIVED | FILE_NORMAL,    /* File attribute */
     439                                        FILE_ARCHIVED | FILE_NORMAL, /* File attribute */
    431440                                        OPEN_ACTION_CREATE_IF_NEW |
    432                                         OPEN_ACTION_OPEN_IF_EXISTS,     /* Open function type */
     441                                        OPEN_ACTION_OPEN_IF_EXISTS,  /* Open function type */
    433442                                        OPEN_FLAGS_NOINHERIT |
    434443                                        OPEN_SHARE_DENYNONE  |
    435                                         OPEN_ACCESS_READWRITE,         /* Open mode of the file */
     444                                        OPEN_ACCESS_READWRITE,       /* Open mode of the file */
    436445                                        0L);                         /* No extended attribute */
    437         rc = DosWrite( control,szTemp,strlen(szTemp),&pcbWritten);
    438         rc = DosWrite( control,"#",1,&pcbWritten);
    439         rc = DosWrite( control,filename,strlen(filename),&pcbWritten);
    440         rc = DosWrite( control,"@",1,&pcbWritten);
    441         rc = DosClose(control);
     446                                       
     447                rc = DosWrite( control,szTemp,strlen(szTemp),&pcbWritten);
     448                rc = DosWrite( control,"#",1,&pcbWritten);
     449                rc = DosWrite( control,filename,strlen(filename),&pcbWritten);
     450                rc = DosWrite( control,"@",1,&pcbWritten);
     451                rc = DosClose(control);
     452
     453                i = 0;
     454                j = 0;
     455                pos = 0;
     456                while (szTemp[i] != '@')
     457                {
     458                        if (szTemp[i] == '#')
     459                        {
     460                                szTemp[i] = '\0';
     461                                switch(j)
     462                                {
     463                                        case 0:strcpy(binfile,&szTemp[pos]);
     464                                                break;
     465                                        case 1:strcpy(parameters,&szTemp[pos]);
     466                                                break;
     467                                        case 2:strcpy(workingdir,&szTemp[pos]);
     468                                                break;
     469                                        case 3:strcpy(addpshdr,&szTemp[pos]);
     470                                                break;
     471/*                                      case 4:strcpy(j_copies,&szTemp[pos]);
     472                                                break;
     473                                        case 5:strcpy(password_enc,&szTemp[pos]);
     474                                                break; */
     475                                }
     476                                pos = i+1;
     477                                j++;
     478                        }
     479                        i++;
     480                }
     481
     482                if (strncmp(addpshdr, ON ,1) == 0) {
     483                        DosWrite(*phFile,pszPSHeader,strlen(pszPSHeader),&cbHeader);
     484                }
    442485        }
    443486return rc;
     
    493536        char        parameters[256];
    494537        char        workingdir[256] ;
     538        char        addpshdr[1] ;
    495539        char        j_title[256];
    496540        char        j_copies[3];
Note: See TracChangeset for help on using the changeset viewer.