home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 July / Chip_1997-07_cd.bin / sharewar / 95rar / tools / script20.exe / rar / EINFACH.S < prev    next >
Text File  |  1996-05-06  |  10KB  |  471 lines

  1. ;
  2. ; Installations-SFX-Modul
  3. ; Erstellt von Bernd Hohenester
  4. ;
  5. ;     FIDO: Bernd Hohenester@2:2490/2030.4
  6. ;      CIS: 101447,1272
  7. ; INTERNET: 101447.1272@compuserve.com
  8. ;
  9. ;
  10. ; Im Script sind folgende Funktionen enthalten:
  11. ;
  12. ; - Anzeige des Zielverzeichnisses
  13. ; - Anwender kann Zielverzeichnis ändern
  14. ; - während des Entpackens Anzeige durch Fortschritts-Balken und einzelne
  15. ;   Dateinamen
  16. ; - Hilfeseite
  17. ; - es werden nur nicht vorhandene oder aktuellere Dateien entpackt
  18. ; - Aufforderung zum Diskettenwechsel bei Mehrdisketten-Archiven
  19. ; - Fehlererkennung
  20. ; - nach der Installation wird in das Zielverzeichnis gewechselt
  21. ;
  22. ;
  23. ; iSFX-Skript wird ab RAR V 1.54 nicht als Archivkommentar angezeigt!
  24.  
  25. ; Variable für Zielverzeichnis. BITTE GEWÜNSCHTEN PFAD EINTRAGEN!
  26. ; Wird innerhalb des Scripts mehrfach verwendet!
  27. Ziel="C:\\INSTALL"
  28. DestDir=Ziel
  29.  
  30. ; Balken definieren
  31. defbar YELLOW,CYAN,BLUE,WHITE,14,7,52
  32.  
  33. ; Hintergrundfarben setzen und Bildschirm löschen
  34. setcolor CYAN,CYAN
  35. window 1,1,80,25
  36. clrscr
  37.  
  38. ; AV-Überprüfung
  39. if AVPresent == -1
  40.   Title="Warnung"
  41.   Message="Siegelinformation ist nicht korrekt"
  42.   call ErrMsg
  43. endif
  44.  
  45. if AVPresent == 0
  46.   Title="Warnung"
  47.   Message="Siegelinformation fehlt"
  48.   call ErrMsg
  49. endif
  50.  
  51. ; Hintergrundfarben setzen und Bildschirm löschen
  52. setcolor CYAN,CYAN
  53. window 1,1,80,25
  54. clrscr
  55.  
  56. ; Programm Info
  57. clrscr
  58. outtext ansi on
  59.  ┌──────────────────────────────────────────────────────────────────────────
  60.  │ Installations-SFX-Modul                     Hier können Sie eine kurze   
  61.  │ Erstellt von Bernd Hohenester               Programm-Info eintragen,     
  62.  │     FIDO: Bernd Hohenester@2:2490/2030.4    Ihr Copyright usw.           
  63.  │      CIS: 101447,1272                                                    
  64.  │ INTERNET: 101447.1272@compuserve.com                                     
  65.  ├──────────────────────────────────────────────────────────────────────────
  66.  │ Zielverzeichnis:                                                         
  67.  ──────────────────────────────────────────────────────────────────────────┘
  68. outtext ansi off
  69.  
  70. ; Schatten unten
  71. setcolor DARKGRAY,CYAN
  72. window 4,11,79,11
  73. clrscr 219
  74.  
  75. ; Schatten rechts
  76. setcolor DARKGRAY,CYAN
  77. window 78,3,79,11
  78. clrscr 219
  79.  
  80. ; Zielverzeichnis anzeigen
  81. window 21,9,75,9
  82. setcolor BLACK,WHITE
  83. gotoxy 1,1
  84. text DestDir
  85.  
  86. Bar=2
  87.  
  88. window 1,1,80,25
  89. ; unterste Zeile
  90. setcolor WHITE,CYAN
  91. gotoxy 1,25
  92. text "                        F1 für Hilfe, ALT-X zum Beenden                        "
  93.  
  94. ; Sound-Effekt
  95. sound 90,1
  96.  
  97. ; Installations-Menü
  98. Menu:
  99.  
  100. Choice = menu 27,16,YELLOW,BLUE,Bar,"Installations-Menü","Zielverzeichnis ändern"," Installation starten","         Ende"
  101.  
  102. if Choice == 0
  103.   goto Menu
  104. endif
  105.  
  106. ; Zielverzeichnis setzen
  107. if Choice == 1
  108.   savescr 1
  109.   window 21,9,75,9
  110.   Res=INPUT BLACK,CYAN,DestDir,DestDir,55
  111.   restscr 1
  112.   Bar=2
  113.  
  114.   ; bei Abbruch alte Vorgabe
  115.   if Res == 0
  116.     DestDir=Ziel
  117.     Bar=1
  118.   endif
  119.  
  120.   ; neu anzeigen
  121.   window 21,9,75,9
  122.   setcolor BLACK,WHITE
  123.   clrscr
  124.   gotoxy 1,1
  125.   text DestDir
  126.   window 1,1,80,25
  127.  
  128.   goto Menu
  129. endif
  130.  
  131. if Choice == 2
  132.   box 6,11,75,24,LIGHTCYAN,BLUE,DOUBLE
  133.   setcolor LIGHTCYAN,BLUE
  134.  
  135.   ; Titel
  136.   window 7,12,74,23
  137.   clrscr
  138.  
  139.   ; Beginn ausgeben
  140.   text "Installation begonnen.\n"
  141.   inswrow=2
  142.   window 1,1,80,25
  143.  
  144. endif
  145.  
  146. if Choice == 3
  147.   Quit:
  148.   setcolor WHITE,BLACK
  149.   clrscr
  150.   gotoxy 2,4
  151.   text "Das Programm wurde NICHT installiert!"
  152.   sound 380,25
  153.   delay 210
  154.   sound 190,25
  155.   exit 1
  156.   goto Menu
  157. endif
  158.  
  159. ; HIER BEGINNT DIE INSTALLATION
  160. ; nur nicht vorhandene oder neuere Dateien entpacken
  161. Overwrite UPDATE
  162.  
  163. proc OnKey
  164.   window 1,1,80,25
  165.  
  166.   if Par1 == 3
  167.     savescr 15
  168.     Par1=-1
  169.     sound 2300,25
  170.     delay 100
  171.     sound 1450,100
  172.     Choice=Menu 32,11,WHITE,LIGHTRED,1,"Unterbrechung"," Fortsetzen  ","  Abbrechen  "
  173.     if Choice == 2
  174.       exit 1
  175.     endif
  176.     restscr 15
  177.   endif
  178.  
  179.   ; "Abbrechen" gewählt
  180.   if Par1 == 301
  181.     goto Quit
  182.   endif
  183.  
  184.   ; F1 Hilfe angefordert
  185.   if Par1 == 315
  186.     savescr 15
  187.     call OutHelp
  188.     Par1=-1
  189.     restscr 15
  190.   endif
  191. endp
  192.  
  193. proc ChangeVol
  194.   window 7,12,74,23
  195.   setcolor YELLOW,BLUE
  196.   gotoxy 1,inswrow
  197.  
  198.   if Par2 == 0
  199.     Par1=Par1+2
  200.     text "... Diskette #",Par1," einlegen."
  201.     savescr 14
  202.     Par1=-1
  203.     sound 2300,25
  204.     delay 100
  205.     sound 1450,100
  206.     sound 5450,50
  207.     sound 7450,25
  208.     sound 1450,100
  209.     window 1,1,80,25
  210.     Choice = Menu 30,15,WHITE,GREEN,1,"Diskette wechseln","   Fortsetzen    ","    Abbrechen    "
  211.     restscr 14
  212.  
  213.     if Choice == 2
  214.       window 1,1,80,25
  215.       setcolor WHITE,BLACK
  216.       clrscr
  217.       gotoxy 2,3
  218.       text " Diskette nicht gefunden. Abbruch! "
  219.       exit 1
  220.     endif
  221.   endif
  222.  
  223.   if Par2 != 0
  224.     setcolor LIGHTCYAN,BLUE
  225.     Par1=Par1+1
  226.     text "... Diskette #",Par1," wurde bearbeitet."
  227.   endif
  228.  
  229.   if inswrow = 12
  230.     text "\n"
  231.   endif
  232.  
  233.   if inswrow < 12
  234.     inswrow=inswrow+1
  235.   endif
  236.   window 1,1,80,25
  237. endp
  238.  
  239. proc FileDone
  240.   gotoxy 50,11
  241.   setcolor LIGHTCYAN,BLUE
  242.   window 7,12,74,23
  243.   setcolor LIGHTCYAN,BLUE
  244.   gotoxy 1,inswrow
  245.   text DestFileName
  246.  
  247.   if inswrow = 12
  248.     text "\n"
  249.   endif
  250.  
  251.   if inswrow < 12
  252.     inswrow=inswrow+1
  253.   endif
  254.   window 1,1,80,25
  255. endp
  256.  
  257. proc Error
  258.   window 7,12,74,23
  259.   setcolor LIGHTCYAN,BLUE
  260.   gotoxy 1,inswrow
  261.   Title="Fehler!"
  262.  
  263.   ; Par1 enthält die Fehlernummer:
  264.  
  265.   if Par1 == 1
  266.     Message="Schwerer Fehler"
  267.     call ErrMsg
  268.   endif
  269.  
  270.   if Par1 == 2
  271.     Message="CRC Fehler, Archiv beschädigt"
  272.     call ErrMsg
  273.   endif
  274.  
  275.   if Par1 == 3
  276.     Message="Schreibfehler"
  277.     call ErrMsg
  278.   endif
  279.  
  280.   if Par1 == 4
  281.     Message="Fehler beim Erstellen der Datei"
  282.     call ErrMsg
  283.   endif
  284.  
  285.   if Par1 == 5
  286.     Message="Lesefehler"
  287.     call ErrMsg
  288.   endif
  289.  
  290.   if Par1 == 6
  291.     Message="Fehler beim Schließen der Datei"
  292.     call ErrMsg
  293.   endif
  294.  
  295.   if Par1 == 7
  296.     Message="Fehler beim Öffnen der Datei"
  297.     call ErrMsg
  298.   endif
  299.  
  300.   if Par1 == 8
  301.     Message="Nicht genügend Speicher"
  302.     call ErrMsg
  303.   endif
  304.  
  305.   if inswrow = 12
  306.     text "\n"
  307.   endif
  308.  
  309.   if inswrow < 12
  310.     inswrow=inswrow+1
  311.   endif
  312.   window 1,1,80,25
  313. endp
  314.  
  315. proc ErrMsg
  316.   window 17,14,62,21
  317.   setcolor WHITE,RED
  318.   clrscr
  319.   window 1,1,80,25
  320.   box 20,15,59,20,WHITE,RED,DOUBLE
  321.   gotoxy 1,15
  322.   ctext " ",Title," "
  323.   gotoxy 1,17
  324.   ctext Message
  325.   setcolor WHITE,BLACK
  326.   gotoxy 1,19
  327.   ctext " Ok "
  328.   sound 20,5
  329.   sound 80,50
  330.   delay 15000
  331.   window 1,1,80,25
  332. endp
  333.  
  334. proc ArcDone
  335.   sound 3300,25
  336.   delay 100
  337.   sound 2450,100
  338.   window 7,12,74,23
  339.   setcolor LIGHTCYAN,BLUE
  340.   gotoxy 1,inswrow
  341.   text "Fertig. Installation beendet"
  342.   delay 500
  343.   savescr 2
  344.   Title="Installations-Status"
  345.   Message=" Beendet "
  346.   call OkMsg
  347.   restscr 2
  348.   window 1,1,80,25
  349.  
  350.   ; Laufwerk wechseln
  351.   SYSTEM DestDir,
  352.   ; Verzeichnis wechseln
  353.   SYSTEM "CD ",DestDir,"."
  354.  
  355.   call ClearScreen
  356.  
  357.   ; externes Installationsprogramm aufrufen
  358.   ; SYSTEM "IF EXIST ", DestDir, "INSTALL.EXE", DestDir, "INSTALL.EXE"
  359.  
  360.   setcolor WHITE,BLACK
  361.   exit
  362. endp
  363.  
  364. proc ClearScreen
  365.   i=1
  366.   loop:
  367.     if i > 13
  368.       goto exloop
  369.     endif
  370.     j=81-i
  371.     k=26-i
  372.     box i,i,j,k,LIGHTBLUE,BLACK,DOUBLE
  373.     i=i+1
  374.   goto loop
  375.  
  376.   exloop:
  377.   i=1
  378.   loop1:
  379.     if i > 13
  380.       goto exloop1
  381.     endif
  382.     j=81-i
  383.     k=26-i
  384.     box i,i,j,k,BLACK,BLACK,SINGLE
  385.     i=i+1
  386.   goto loop1
  387.  
  388.   exloop1:
  389.     window 1,1,80,25
  390. endp
  391.  
  392. proc OkMsg
  393.   window 24,14,57,21
  394.   setcolor BLACK,WHITE
  395.   clrscr
  396.   window 1,1,80,25
  397.   box 27,15,53,20,BLACK,WHITE,DOUBLE
  398.   gotoxy 1,15
  399.   ctext " ",Title," "
  400.   gotoxy 1,17
  401.   ctext Message
  402.   setcolor WHITE,BLACK
  403.   gotoxy 1,19
  404.   ctext " Ok "
  405.   delay 50000
  406.   window 1,1,80,25
  407. endp
  408.  
  409. proc OutHelp
  410.   ; Hilfe anzeigen
  411.   savescr 13
  412.   setcolor BLACK,CYAN
  413.   window 6,7,75,19
  414.   clrscr
  415.   gotoxy 1,14
  416. ;text "╔═══════════════════════ Hilfe zur Installation ══════════════════════╗\n"
  417.   text "                                                                     \n"
  418.   text " - Wählen Sie aus dem Menü ZIELVERZEICHNIS ÄNDERN, wenn Sie das Ziel-\n"
  419.   text "   verzeichnis ändern möchten oder nicht genügend  Speicherplatz zur \n"
  420.   text "   Verfügung steht. Geben Sie anschließend das  gewünschte  Laufwerk \n"
  421.   text "   und Verzeichnis an und drücken Sie die EINGABETASTE.              \n"
  422.   text "                                                                     \n"
  423.   text " - Beginnen Sie  die  Installation  durch  Auswahl  des  Menüpunktes \n"
  424.   text "   INSTALLATION STARTEN. Sie werden ggf.  automatisch  zum  Wechseln \n"
  425.   text "   der Diskette aufgefordert.                                        \n"
  426.   text "                                                                     \n"
  427.   text " - Falls Sie die Installation nicht durchführen möchten, wählen  Sie \n"
  428.   text "   den Menüpunkt ENDE.                                               \n"
  429. ;text "                                                                       \n"
  430. ;text "╚════════════════════ Weiter mit beliebiger Taste ════════════════════╝\n"
  431.   window 1,1,80,25
  432.   box 5,6,75,20,BLACK,CYAN,DOUBLE
  433.  
  434.   window 5,6,75,20
  435.   setcolor WHITE,CYAN
  436.   gotoxy 25,1
  437.   text " Hilfe zur Installation "
  438.   gotoxy 22,15
  439.   text " Weiter mit beliebiger Taste "
  440.  
  441.   setcolor YELLOW,CYAN
  442.   gotoxy 29,3
  443.   text "ZIELVERZEICHNIS ÄNDERN"
  444.   gotoxy 5,9
  445.   text "INSTALLATION STARTEN"
  446.   gotoxy 19,13
  447.   text "ENDE"
  448.  
  449.   setcolor LIGHTCYAN,CYAN
  450.   gotoxy 44,6
  451.   text "EINGABETASTE"
  452.  
  453.   ; Schatten unten
  454.   setcolor DARKGRAY,CYAN
  455.   window 7,21,77,21
  456.   clrscr 219
  457.  
  458.   ; Schatten rechts
  459.   setcolor DARKGRAY,CYAN
  460.   window 76,7,77,21
  461.   clrscr 219
  462.  
  463.   ; Pause bis Taste
  464.   delay
  465.   restscr 13
  466.   window 1,1,80,25
  467. endp
  468.  
  469.