home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / extra18 / toolbox / m_spoole.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-01-21  |  2.2 KB  |  65 lines

  1. /* ------------------------------------------------- */
  2. /*                   M_SPOOLE.C                      */
  3. /*             (c) 1991, 1992 DMV-Verlag             */
  4. /*    Compiler: Turbo C++                            */
  5. /*    EINGABE: Filename                              */
  6. /*    AUSGABE: Status der Operation                  */
  7. /*     00h  kein Fehler                              */
  8. /*     01h  Funktionsaufruf falsch                   */
  9. /*     02h  Datei nicht gefunden                     */
  10. /*     03h  Pfad nicht gefunden                      */
  11. /*     04h  zu viele offene Dateien                  */
  12. /*     05h  Zugriff verweigert                       */
  13. /*     08h  Ausgabeliste voll                        */
  14. /*     09h  Treiber belegt                           */
  15. /*     12h  Dateiname zu lang                        */
  16. /*     15h  kein Fehler oder falsches Laufwerk       */
  17. /*    Funktion: Routine trägt File in die aktuelle   */
  18. /*    Druck-Liste des Printerspoolers ein.           */
  19. /* ------------------------------------------------- */
  20.  
  21. #include <stdio.h>
  22. #include <conio.h>
  23. #include <string.h>
  24.  
  25. int m_print(char *Fname)
  26. {
  27. static struct Liste
  28. {
  29.  char Prior;
  30.  int  F_Offset;
  31.  int  F_Segment;
  32.  char Filename[12];
  33.  } Tabelle;
  34.  
  35.  strcat(Fname, NULL);
  36.  strcpy(Tabelle.Filename, Fname);
  37.  
  38.  asm mov Tabelle.Prior, 0;
  39.  asm lea dx, Tabelle;
  40.  asm lea di, Tabelle.Filename;
  41.  asm mov Tabelle.F_Offset, di;
  42.  asm mov Tabelle.F_Segment, DS;
  43.  asm mov ax, 0101h
  44.  asm int 2fh
  45.  return(_AL);
  46. }
  47.  
  48. /* ------------------------------------------------- */
  49. *    EINGABE: Keine                                  *
  50. *    AUSGABE: Installationsstatus Druckerspooler     *
  51. *    Funktion: Routine ermittelt den Status des      *
  52. *    Spoolers und gibt folgende Werte zurück:        *
  53. *     FFh  installiert                               *
  54. *     01h  nicht installiert, Installation unmöglich *
  55. *     00h  nicht installiert, Installation möglich   *
  56. /* ------------------------------------------------- */
  57. int m_installed (void)
  58. {
  59.  asm mov ax, 0100h               /* Funktionsnummer  */
  60.  asm int 2fh
  61.  return(_AL);
  62. }
  63. /* ------------------------------------------------- */
  64. /*               Ende von M_SPOOLE.C                 */
  65.