home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 March / VPR9703B.ISO / driver / wacom / tddv2432 / setup / wacom.ms_ / wacom.ms
Text File  |  1996-09-26  |  54KB  |  1,444 lines

  1. '*******************
  2. '*   WACOM SETUP   *
  3. '*******************
  4.  
  5. ' '$DEFINE DEBUG
  6.  
  7. '$INCLUDE 'setupapi.inc'
  8. '$INCLUDE 'msdetect.inc'
  9.  
  10. CONST WELCOME31     = 100
  11. CONST WELCOME95     = 101
  12. CONST WELCOMENT     = 102
  13. CONST PLSWAIT       = 110
  14. CONST ASKQUIT       = 200
  15. CONST EXITFAILURE   = 400
  16. CONST EXITQUIT      = 600
  17. CONST EXITSUCCESS   = 700
  18. CONST EXITS1        = 750
  19. CONST OPTIONS       = 800
  20. CONST APPHELP       = 900
  21. CONST APPHELPNT     = 950
  22. CONST PENTYPE       = 1000
  23. CONST COMHELP       = 1100
  24. CONST PENHELP       = 1200
  25. CONST TABHELP       = 1300
  26. CONST WAC           = 1400
  27. CONST NOWAC         = 1500
  28. CONST WAHELP        = 1600
  29. CONST NWHELP        = 1700
  30. CONST COMBAUD       = 2800
  31. CONST BAUDHELP      = 3000
  32. CONST SELECTTABLET  = 6400
  33. CONST SELECTHELP    = 6410
  34.  
  35. '*Bitmap ID
  36. CONST LOGO = 1
  37.  
  38. GLOBAL CUIDLL$        '*Dll for the dailog boxes.
  39. GLOBAL HELPPROC$      '*Help Proc name
  40. GLOBAL OPTCUR$        '*Option selection from option dialog.
  41. GLOBAL OPTBAUD$     ''ボーレート
  42. GLOBAL OPTPEN$      ''ペン
  43. GLOBAL OPTTAB$      ''PLシリーズ
  44. GLOBAL ILST$          '*Device driver list.
  45. GLOBAL PLST$          '*Serial port list.
  46. GLOBAL GLST$          '*List of grey comports.
  47. GLOBAL WINDIR$        '*Windows path.
  48. GLOBAL SYSDIR$        '*Windows system path.
  49. GLOBAL SrcPath$       '*Path containing the Setup.exe.
  50. GLOBAL Check%         '*if set do not copy files.
  51. GLOBAL i%
  52. GLOBAL sz$
  53.  
  54. CONST HelpPath$    = "Win\"
  55. CONST WinPath$     = "Win\Win\"
  56. CONST NTIntelPath$ = "Win\NTIntel\"
  57. CONST NTAlphaPath$ = "Win\NTAlpha\"
  58. CONST NTPPCPath$   = "Win\NTPPC\"
  59. CONST NTMipsPath$  = "Win\NTMips\"
  60. CONST WacomDir$    = "C:\WACOM\"
  61. '  ********** 変更 **********  96/09/24(火)
  62. ' UNINSTALLの追加
  63. CONST UNINSTNT$       = "UNINSTNT.EXE"
  64. CONST UNINST95$    = "UNINST.EXE"
  65. '  ************************** 
  66.  
  67. GLOBAL MODE%        '*Windows operating mode.
  68. GLOBAL mj%          '*Windows major revision.
  69. GLOBAL mn%          '*Windows minor revision.
  70. GLOBAL OpSys%       '*Operating system.
  71. GLOBAL ReMove%      '*Remove the Driver?
  72. GLOBAL AskPort%     '*Do we ask for the port number?
  73. GLOBAL dlg%         '*The number of the dialog box to use/
  74. GLOBAL PenCk%       '*Pen driver?
  75. GLOBAL MultiDisk%   '*Is this a multi disk set?
  76.  
  77. '  ********** 変更 **********  96/09/19(木)
  78. GLOBAL Wintab32Check%
  79. GLOBAL WacomkeyCheck%
  80. '  ************************** 
  81.  
  82. CONST oemck% = 10
  83.  
  84. CONST WIN31 = 1
  85. CONST WIN95 = 64
  86. CONST WIN95UNK = 255
  87. CONST NT386 = 256
  88. CONST NTMIPS = 257
  89. CONST NTALPHA = 258
  90. CONST NTPPC = 259
  91. CONST NTUNK = 511
  92.  
  93. DECLARE SUB Quitit
  94. DECLARE SUB Restart
  95. DECLARE SUB Asktoquit
  96. DECLARE SUB Prep
  97. DECLARE FUNCTION QueryDrv AS INTEGER
  98. DECLARE SUB CheckPorts
  99. DECLARE SUB Checkpen
  100. DECLARE SUB AdjInf
  101. DECLARE SUB FixSerenum
  102. DECLARE SUB ShortenTimeOut
  103. DECLARE SUB ClearSerenum
  104. DECLARE SUB BackUpSys
  105. DECLARE SUB DoDblClk(flag%)
  106. DECLARE SUB DoWacPen(flag%)
  107. DECLARE SUB DoWacVxd(flag%)
  108. DECLARE SUB DoWacDrv(flag%)
  109. DECLARE SUB DoPenWin(flag%)
  110. DECLARE SUB Install
  111. DECLARE SUB RemoveIt
  112.  
  113. INIT:
  114.     OpenLogFile GetWindowsDir + "WACOM.LOG", 0
  115.     WINDIR$ = GetWindowsDir
  116.     SYSDIR$ = GetWindowsSysDir
  117.     SrcPath$ = GetSymbolValue("STF_SRCDIR")
  118.     ReMove% = 0
  119.     AskPort% = DoesFileExist(SrcPath$ + "LICENSE.TXT", femExists)
  120.     Check% = DoesFileExist(SrcPath$ + "DEBUG.CHK", femExists)
  121.     MultiDisk% = DoesFileExist(SrcPath$ + "MULTIDSK", femExists)
  122.     PenCk% = 0
  123.     CUIDLL$ = "mscuistf.dll"
  124.     HELPPROC$ = "FHelpDlgProc"
  125.     ILST$ = "DeviceList"
  126.     PLST$ = "PortList"
  127.     GLST$ = "OptionsGreyed"
  128.     SetBitmap CUIDLL$, LOGO
  129.     SetTitle "WACOM セットアップ"
  130.     SetRestartDir WINDIR$
  131.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  132.     IF szInf$ = "" THEN
  133.         szInf$ = GetSymbolValue("STF_CWDDIR") + "WACOM.INF"
  134.     END IF
  135.     ReadInfFile szInf$
  136.     OPTCUR$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "Pen Driver", "ComPort")
  137.     mj% = GetWindowsMajorVersion()
  138.     mn% = GetWindowsMinorVersion()
  139.     MODE% = GetWindowsMode()
  140.     OpSys% = 0
  141. ' 追加
  142.     OPTBAUD$ = "1"
  143.     OPTPEN$ = "1"
  144.     OPTTAB$ = "1"
  145.  
  146.     WriteToLogFile "^ MED-A027 Windows Driver (Japanese version for DOS/V) SETUP"
  147.     WriteToLogFile "^ Version" + STR$(mj%) + "." + LTRIM$(STR$(mn%)) + "  Mode" + STR$(MODE%)
  148.     WriteToLogFile "^ Source drive = " + SrcPath$
  149.     WriteToLogFile "^ Wacom destination = " + WacomDir$
  150.     WriteToLogFile "^ Windows directory = " + WINDIR$
  151.     WriteToLogFile "^ Windows system directory = " + SYSDIR$
  152.  
  153.     IF ((mj% < 3) OR ((mj% = 3) AND (mn% < 1))) THEN
  154.         WriteToLogFile ": Not Windows 3.1 or greater"
  155.         i% = DoMsgBox("このタブレットドライバは Windows 3.1 以上のシステムで動作します。", "古いバージョンのWindowsです", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  156.         END
  157.     END IF
  158.  
  159. REWELCOME:
  160.     IF MODE% = 4 THEN
  161.         i% = WOWGetNTcpu()
  162.         WriteToLogFile "^ WOWcpu number =" + STR$(i%)
  163.         IF i% = PROCESSOR_INTEL THEN
  164.            OpSys% = NT386
  165.         ELSEIF i% = PROCESSOR_ALPHA THEN
  166.            OpSys% = NTALPHA
  167.         ELSEIF i% = PROCESSOR_MIPS THEN
  168.            OpSys% = NTMIPS
  169.         ELSEIF i% = PROCESSOR_PPC THEN
  170.            OpSys% = NTPPC
  171.         ELSE
  172.            OpSys% = NTUNK
  173.         END IF
  174.     ELSEIF ((mj% = 3) AND (mn% < 50)) THEN
  175.         OpSys% = WIN31
  176.     ELSE
  177.         i% = WOWGetNTcpu()
  178.         WriteToLogFile "^ WOWcpu number =" + STR$(i%)
  179.         IF i% = PROCESSOR_INTEL THEN
  180.             OpSys% = WIN95
  181.         ELSE
  182.             OpSys% = WIN95UNK
  183.         END IF
  184.     END IF
  185.     Prep
  186.     IF MODE% = 4 THEN
  187.         sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", APPHELPNT, HELPPROC$)
  188.     ELSE
  189.         sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfoDlgProc", APPHELP, HELPPROC$)
  190.     END IF
  191.     WriteToLogFile "^ Welcome box closed"
  192.     IF sz$ = "CONTINUE" THEN
  193.         UIPop 1
  194.     ELSEIF sz$ = "UNINSTALL" THEN
  195.         WriteToLogFile "^ Remove procedure started"
  196.         ReMove% = 1
  197.         AskPort% = 0
  198.     ELSE
  199.         Asktoquit
  200.         GOTO REWELCOME
  201.     END IF
  202. ' 日本語版ではここをコマントに
  203. '    IF AskPort% > 0 THEN
  204. '        IF QueryDrv() THEN
  205. '        ELSE
  206. '            CheckPorts
  207. '        END IF
  208. '    END IF
  209.  
  210.     IF ReMove% > 0 THEN
  211. '  ********** 変更 **********  96/09/24(火)
  212. 'アンインストール追加
  213. 'NTのアンインストールの場合はuninstnt.exeを実行する
  214. '95のアンインストールの場合はuninst.exeを実行する
  215.         IF OpSys% = NT386 THEN
  216.             IF DoesFileExist(WACOMDIR$ + UNINSTNT$, femExists) = 0 THEN
  217.                 CreateDir WacomDir$, cmoNone
  218.                 AddSectionFilesToCopyList "NT_Uninstall", SrcPath$, WacomDir$
  219.                 SetCopyGaugePosition 75,85
  220.                 CopyFilesInCopyList
  221.             END IF
  222.             uninst% = WinExec(WACOMDIR$ + UNINSTNT$, SW_SHOW)
  223.         ELSEIF OpSys% = WIN95 THEN
  224.             IF DoesFileExist(WACOMDIR$ + UNINST95$, femExists) = 0 THEN
  225.                 CreateDir WacomDir$, cmoNone
  226.                 AddSectionFilesToCopyList "Win95_Uninstall", SrcPath$, WacomDir$
  227.                 SetCopyGaugePosition 75,85
  228.                 CopyFilesInCopyList
  229.             END IF
  230.             uninst% = WinExec(WACOMDIR$ + UNINST95$, SW_SHOW)
  231.         ELSE
  232.             RemoveIt
  233.         END IF
  234. '  ************************** 
  235.     ELSE
  236.         CheckPen
  237.  
  238. OPTIONSET:
  239.  
  240.         IF MODE% = 4 THEN
  241.  
  242. TABLET:
  243.             SetSymbolValue "RadioDefault", OPTTAB$
  244.             sz$ = UIStartDlg(CUIDLL$, SELECTTABLET, "FRadioDlgProc", SELECTHELP, HELPPROC$)
  245.             OPTTAB$ = GetSymbolValue("ButtonChecked")
  246.             IF sz$ = "CONTINUE" THEN
  247.                 UIPop(1)
  248.             ELSEIF sz$ = "REACTIVATE" THEN
  249.                 GOTO TABLET
  250.             ELSE
  251.                 AsktoQuit
  252.                 GOTO TABLET
  253.             END IF
  254.             IF OPTTAB$ = "2" THEN
  255.                 WriteToLogFile "^ Select PL tablet"
  256.             ENDIF
  257.  
  258.             GOTO OK
  259.         END IF
  260.  
  261. ' ここでポートのチェックを入れる
  262.         CheckPorts
  263.  
  264. '        SetSymbolValue "RadioDefault", OPTCUR$
  265. 'OPTL2:
  266. '            sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", COMHELP, HELPPROC$)
  267. '        OPTCUR$ = GetSymbolValue("ButtonChecked")
  268. '        IF sz$ = "CONTINUE" THEN
  269. '            UIPop(1)
  270. '        ELSEIF sz$ = "REACTIVATE" THEN
  271. '            GOTO OPTL2
  272. '        ELSE
  273. '            AsktoQuit
  274. '            GOTO OPTIONSET
  275. '        END IF
  276.  
  277. COM_BAUDRATE:
  278.         SetSymbolValue "RadioDefault", OPTBAUD$
  279. COM_BAUD1:
  280.         sz$ = UIStartDlg(CUIDLL$, COMBAUD, "FRadioDlgProc", BAUDHELP, HELPPROC$)
  281.         OPTBAUD$ = GetSymbolValue("ButtonChecked")
  282.         IF sz$ = "CONTINUE" THEN
  283.             UIPop(1)
  284.         ELSEIF sz$ = "REACTIVATE" THEN
  285.             GOSUB COM_BAUD1
  286.         ELSE
  287.             AsktoQuit
  288.             GOTO COM_BAUDRATE
  289.         END IF
  290.  
  291. PEN_SELECT:
  292.         SetSymbolValue "RadioDefault", OPTPEN$
  293. PENSEL_1:
  294.         sz$ = UIStartDlg(CUIDLL$, PENTYPE, "FRadioDlgProc", PENHELP, HELPPROC$)
  295.         OPTPEN$ = GetSymbolValue("ButtonChecked")
  296.         IF sz$ = "CONTINUE" THEN
  297.             UIPop(1)
  298.         ELSEIF sz$ = "REACTIVATE" THEN
  299.             GOSUB PENSEL_1
  300.         ELSEIF sz$ = "BACK" THEN
  301.             UIPOP 1
  302.             GOTO OPTIONSET
  303.         ELSE
  304.             AsktoQuit
  305.             GOTO PEN_SELECT
  306.         END IF
  307.  
  308. OK:
  309.  
  310.         Install
  311.     END IF
  312.  
  313. Quit:
  314. '  ********** 変更 **********  96/09/24(火)
  315. '95,NTのアンインストールが実行された場合はその後のメッセージを出さない
  316.     IF NOT((OpSys% = NT386 OR OpSys% = WIN95) AND ReMove% > 0) THEN
  317.         Quitit
  318.     END IF
  319. '  ************************** 
  320.  
  321.     CloseLogFile
  322. END
  323. '**  END OF MAIN BODY
  324.  
  325.  
  326. '**  Quitit
  327. '** Purpose:
  328. '**     Quit the setup and clean up.
  329. '** Arguments:
  330. '**     none.
  331. '** Returns:
  332. '**     none.
  333. '*************************************************************************
  334. SUB Quitit STATIC
  335.     WriteToLogFile "^ Quit routine"
  336.     IF ReMove% = 1 THEN
  337.         WriteToLogFile ": Remove driver exit"
  338.         'i% = DoMsgBox("WACOM drivers successfully removed. Please restart windows in order to unload the drivers.", "Drivers Removed", MB_OK+MB_TASKMODAL+MB_ICONEXCLAMATION)
  339.         i% = DoMsgBox("ドライバを削除するために、タブレットドライバのフロッピーディスクを抜いてから Windows をリスタートしてください", "WACOM セットアップ終了", MB_OK+MB_TASKMODAL+MB_ICONEXCLAMATION)
  340.         END
  341.     END IF
  342.     IF ERR = 0 THEN
  343.         WriteToLogFile "^ No Error"
  344.         i% = RestartListEmpty()
  345. '  ********** 変更 **********  96/09/24(火)
  346.         IF (i% = 0) AND (OpSys% <> NT386) THEN
  347. '        IF i% = 0 THEN
  348. '  ************************** 
  349.           dlg% = EXITSUCCESS
  350.         ELSE
  351.            dlg% = EXITS1
  352.            IF OpSys% = WIN95 THEN
  353.                 RemoveFile WINDIR$ + "WACOMEXT.DLL", cmoForce
  354.                 RenameFile WINDIR$ + "WACOMEXT.TMP", "WACOMEXT.DLL"
  355.            ENDIF
  356.         END IF
  357.     ELSEIF ERR = STFQUIT THEN
  358.         WriteToLogFile ": Error EXITQUIT"
  359.         dlg% = EXITQUIT
  360.     ELSE
  361.         WriteToLogFile ": Error EXITFAILURE"
  362.         i% = DoMsgBox(ERROR$(ERR) + " in " + ERF + " on line" + STR$(ERL), "ERROR", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  363.         END
  364.     END IF
  365. QUITL1:
  366.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  367.     IF sz$ = "REACTIVATE" THEN
  368.         GOTO QUITL1
  369.     END IF
  370.     UIPop 1
  371.     IF dlg% = EXITSUCCESS THEN
  372.         WriteToLogFile "EXITSUCCESS"
  373.         '* we need to add some delete and rename lines
  374.         '* to _mssetup.bat so some in memory files will be
  375.         '* overwritten. This script does not seem to handle
  376.         '* 32 bit dll's in memory properly
  377.         IF OpSys% = WIN95 THEN
  378.            i% = AddLines2_mssetup()
  379.            WriteToLogFile "Add lines to mssetup =" + STR$(i%)
  380.         ENDIF
  381.         CloseLogFile
  382.         i% = ExitExecRestart()
  383.         IF i% = 0 THEN
  384.             'i% = DoMsgBox("Close MS-DOS applications, exit windows and type _MSSETUP", "Windows Exit Failure", MB_OK+MB_TASKMODAL+MB_ICONEXCLAMATION)
  385.             i% = DoMsgBox("MS-DOSのアプリケーションを終了させて Windows を抜けます。そしてDOSプロンプトより _MSSETUP.BAT を実行させてください。", "終了処理に問題があります", MB_OK+MB_TASKMODAL+MB_ICONEXCLAMATION)
  386.         ELSEIF i% = 1 THEN
  387.             Restart
  388.         END IF
  389.     END IF
  390. END SUB
  391.  
  392.  
  393. '**  RESTART
  394. '** Purpose:
  395. '**     Restart the computer.
  396. '**     This procedure needs fixed.
  397. '** Arguments:
  398. '**     none.
  399. '** Returns:
  400. '**     none.
  401. '*************************************************************************
  402. SUB Restart STATIC
  403.     'i% = DoMsgBox("Please restart windows to load the WACOM drivers.", "WACOM Restart", MB_OK+MB_TASKMODAL+MB_ICONEXCLAMATION)
  404.     i% = DoMsgBox("ドライバをロードするために Windows をリスタートさせてください", "WACOM リスタート", MB_OK+MB_TASKMODAL+MB_ICONEXCLAMATION)
  405. ''  Restart computer
  406.     END
  407. END SUB
  408.  
  409.  
  410. '**  ASKQUIT
  411. '** Purpose:
  412. '**     Ask the user if they want to quit the install.
  413. '** Arguments:
  414. '**     none.
  415. '** Returns:
  416. '**     none.
  417. '*************************************************************************
  418. SUB AsktoQuit STATIC
  419.     WriteToLogFile "^ Ask to Quit"
  420.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  421.     IF sz$ = "EXIT" THEN
  422.         WriteToLogFile "^ User Quit"
  423.         UIPopAll
  424.         ERROR STFQUIT
  425.     ELSE
  426.         WriteToLogFile "^ Continue"
  427.         UIPop 1
  428.     END IF
  429. END SUB
  430.  
  431.  
  432. '**  Prep
  433. '** Purpose:
  434. '**     Performs prep work.
  435. '** Arguments:
  436. '**     Operating system.
  437. '** Returns:
  438. '**     none.
  439. '*************************************************************************
  440. SUB Prep STATIC
  441.     SELECT CASE OpSys%
  442.         CASE NT386
  443.             WriteToLogFile "^ Windows NT system on Intel"
  444.             IF DoesDirExist(SrcPath$ + NTIntelPath$) THEN
  445.                 WriteToLogFile "^ Install Windows NT Intel"
  446.                 dlg% = WELCOMENT
  447.                 AskPort% = 0
  448.             ELSEIF DoesFileExist(SrcPath$ + "NTINTEL.TXT", femExists) THEN
  449.                 WriteToLogFile ": Incorrect disk expansion"
  450.                 i% = DoMsgBox("Could not find WACOM NT Intel files.  Expand the archive using the -d option.", "FILES NOT FOUND", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  451.                 END
  452.             ELSEIF MultiDisk% THEN
  453.                 WriteToLogFile "^ Multi Disk Enabled"
  454.                 dlg% = WELCOMENT
  455.                 AskPort% = 0
  456.             ELSE
  457.                 WriteToLogFile ": No NT Intel Driver info"
  458.                 i% = DoMsgBox("Contact WACOM for NT drivers for the INTEL platform.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  459.                 END
  460.             END IF
  461.         CASE WIN95
  462.             WriteToLogFile "^ Windows 95 system on Intel"
  463.             IF DoesDirExist(SrcPath$ + WinPath$) THEN
  464.                 WriteToLogFile "^ Install Windows 95"
  465.                 dlg% = WELCOME95
  466.             ELSEIF DoesFileExist(SrcPath$ + "WIN95.TXT", femExists) THEN
  467.                 WriteToLogFile ": Incorrect disk expansion"
  468.                 i% = DoMsgBox("Could not find WACOM Win95 Intel files.  Expand the archive using the -d option.", "FILES NOT FOUND", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  469.                 END
  470.             ELSEIF MultiDisk% THEN
  471.                 WriteToLogFile "^ Multi Disk Enabled"
  472.                 dlg% = WELCOME95
  473.             ELSE
  474.                 WriteToLogFile ": No WIN95 Intel Driver info"
  475.                 i% = DoMsgBox("Contact WACOM for Win95 drivers for the INTEL platform.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  476.                 END
  477.             END IF
  478.         CASE WIN31
  479.             WriteToLogFile "^ Windows 3.1 system"
  480.             IF DoesDirExist(SrcPath$ + WinPath$) THEN
  481.                 WriteToLogFile "^ Install Windows 3.1"
  482.                 dlg% = WELCOME31
  483.             ELSEIF DoesFileExist(SrcPath$ + "WIN31.TXT", femExists) THEN
  484.                 WriteToLogFile ": Incorrect disk expansion"
  485.                 i% = DoMsgBox("Could not find WACOM Windows 3.1 files.  Expand the archive using the -d option.", "FILES NOT FOUND", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  486.                 END
  487.             ELSEIF MultiDisk% THEN
  488.                 WriteToLogFile "^ Multi Disk Enabled"
  489.                 dlg% = WELCOME31
  490.             ELSE
  491.                 WriteToLogFile ": No Windows 3.1 Driver info"
  492.                 i% = DoMsgBox("Contact WACOM for Windows 3.1 drivers.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  493.                 END
  494.             END IF
  495.         CASE NTALPHA
  496.             WriteToLogFile "^ Windows NT system on Alpha"
  497.             IF DoesDirExist(SrcPath$ + NTAlphaPath$) THEN
  498.                 WriteToLogFile "^ Install Windows NT Alpha"
  499.                 dlg% = WELCOMENT
  500.                 AskPort% = 0
  501.             ELSEIF DoesFileExist(SrcPath$ + "NTALPHA.TXT", femExists) THEN
  502.                 WriteToLogFile ": Incorrect disk expansion"
  503.                 i% = DoMsgBox("Could not find WACOM NT Alpha files.  Expand the archive using the -d option.", "FILES NOT FOUND", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  504.                 END
  505.             ELSEIF MultiDisk% THEN
  506.                 WriteToLogFile "^ Multi Disk Enabled"
  507.                 dlg% = WELCOMENT
  508.                 AskPort% = 0
  509.             ELSE
  510.                 WriteToLogFile ": No NT Alpha Driver info"
  511.                 i% = DoMsgBox("Contact WACOM for NT drivers for the ALPHA platform.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  512.                 END
  513.             END IF
  514.         CASE NTPPC
  515.             WriteToLogFile "^ Windows NT system on PPC"
  516.             IF DoesDirExist(SrcPath$ + NTPPCPath$) THEN
  517.                 WriteToLogFile "^ Install Windows NT PPC"
  518.                 dlg% = WELCOMENT
  519.                 AskPort% = 0
  520.             ELSEIF DoesFileExist(SrcPath$ + "NTPPC.TXT", femExists) THEN
  521.                 WriteToLogFile ": Incorrect disk expansion"
  522.                 i% = DoMsgBox("Could not find WACOM NT PPC files.  Expand the archive using the -d option.", "FILES NOT FOUND", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  523.                 END
  524.             ELSEIF MultiDisk% THEN
  525.                 WriteToLogFile "^ Multi Disk Enabled"
  526.                 dlg% = WELCOMENT
  527.                 AskPort% = 0
  528.             ELSE
  529.                 WriteToLogFile ": No NT PPC Driver info"
  530.                 i% = DoMsgBox("Contact WACOM for NT drivers for the PPC platform.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  531.                 END
  532.             END IF
  533.         CASE NTMIPS
  534.             WriteToLogFile "^ Windows NT system on Mips"
  535.             IF DoesDirExist(SrcPath$ + NTMipsPath$) THEN
  536.                 WriteToLogFile "^ Install Windows NT Mips"
  537.                 dlg% = WELCOMENT
  538.                 AskPort% = 0
  539.             ELSEIF DoesFileExist(SrcPath$ + "NTMIPS.TXT", femExists) THEN
  540.                 WriteToLogFile ": Incorrect disk expansion"
  541.                 i% = DoMsgBox("Could not find WACOM NT Mips files.  Expand the archive using the -d option.", "FILES NOT FOUND", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  542.                 END
  543.             ELSEIF MultiDisk% THEN
  544.                 WriteToLogFile "^ Multi Disk Enabled"
  545.                 dlg% = WELCOMENT
  546.                 AskPort% = 0
  547.             ELSE
  548.                 WriteToLogFile ": No NT Mips Driver info"
  549.                 i% = DoMsgBox("Contact WACOM for NT drivers for the Mips platform.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  550.                 END
  551.             END IF
  552.         CASE WINUNK
  553.             WriteToLogFile ": Windows NT system on Unknown CPU"
  554.             i% = DoMsgBox("Could not determine the CPU type for WinNT.  Please contact tech support.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  555.             END
  556.         CASE WIN95UNK
  557.             WriteToLogFile ": Windows 95 system on Unknown CPU"
  558.             i% = DoMsgBox("Could not determine the CPU type for Win95.  Please contact tech support.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  559.             END
  560.         CASE ELSE
  561.             WriteToLogFile ": Could not determine the op system"
  562.             i% = DoMsgBox("Could not determine the operating system.  Please contact tech support.", "", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  563.             END
  564.     END SELECT
  565.     IF (Opsys% >= NT386) AND (Opsys% <= NTUNK) THEN
  566.         WriteToLogFile "^ Check for administrator"
  567.         IF 0 = IsAdmin() THEN
  568.             WriteToLogFile ": Not Administrator"
  569.             'i% = DoMsgBox("Please login as Administrator and run setup again.", "Access Denied", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  570.             i% = DoMsgBox("アドミニストレータでログインし、再度セットアップを行ってください", "アクセスが拒否されました", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  571.             END
  572.         ELSE
  573.             WriteToLogFile "^ Aministrator found"
  574.         END IF
  575.     END IF
  576. END SUB
  577.  
  578.  
  579. '**  QueryDrv
  580. '** Purpose:
  581. '**     Checks if the driver is load and not IgnoreStartErrors.
  582. '** Arguments:
  583. '**     none.
  584. '** Returns:
  585. '**     BOOLEAN.
  586. '*************************************************************************
  587. FUNCTION QueryDrv STATIC AS INTEGER
  588.     IF VAL(GetIniKeyString(WINDIR$ + "SYSTEM.INI", "Pen Driver", "IgnoreStartErrors")) THEN
  589.         QueryDrv = 0
  590.     ELSE
  591.         QueryDrv = IsWacomRunningOk()
  592.     END IF
  593. END FUNCTION
  594.  
  595.  
  596. '**  CheckPorts
  597. '** Purpose:
  598. '**     Checks the ports and gets the current comport.
  599. '** Arguments:
  600. '**     none.
  601. '** Returns:
  602. '**     none.
  603. '*************************************************************************
  604. SUB CheckPorts STATIC
  605.     DIM GL AS POINTER TO INTEGER
  606.     ALLOCATE GL,4
  607. OPTION:
  608.     SetSymbolValue "RadioDefault", OPTCUR$
  609.     SetSymbolValue "OptionsGreyed", GLST$
  610.     IF OPTCUR$ = "" THEN
  611.         OPTCUR$ = "1"
  612.     END IF
  613. '    GOTO SkipPortList
  614.     GL[0] = 0
  615.     GL[1] = 0
  616.     GL[2] = 0
  617.     GL[3] = 0
  618.     WriteToLogFile "^ Get the port list"
  619.     GetSerialPortsList PLST$
  620.     x% = GetListLength(PLST$)
  621.     WriteToLogFile "^ Port list length =" + STR$(x%)
  622.     FOR i% = 1 TO x%
  623.         ITM$ = GetListItem(PLST$,i%)
  624.         WriteToLogFile "^ The" + STR$(i%) + " port is " + ITM$
  625.         IF ITM$ = "COM1" THEN
  626.             GL[0] = 1
  627.             WriteToLogFile "^ Com1 is valid"
  628.         ELSEIF ITM$ = "COM2" THEN
  629.             GL[1] = 1
  630.             WriteToLogFile "^ Com2 is valid"
  631.         ELSEIF ITM$ = "COM3" THEN
  632.             GL[2] = 1
  633.             WriteToLogFile "^ Com3 is valid"
  634.         ELSEIF ITM$ = "COM4" THEN
  635.             GL[3] = 1
  636.             WriteToLogFile "^ Com4 is valid"
  637.         END IF
  638.     NEXT i%
  639.     IF (GL[0] = 0) AND (OPTCUR$ <> "1") THEN
  640.         AddListItem GLST$, "1"
  641.         WriteToLogFile "^ Com1 is invalid"
  642.     END IF
  643.     IF (GL[1] = 0) AND (OPTCUR$ <> "2") THEN
  644.         AddListItem GLST$, "2"
  645.         WriteToLogFile "^ Com2 is invalid"
  646.     END IF
  647.     IF (GL[2] = 0) AND (OPTCUR$ <> "3") THEN
  648.         AddListItem GLST$, "3"
  649.         WriteToLogFile "^ Com3 is invalid"
  650.     END IF
  651.     IF (GL[3] = 0) AND (OPTCUR$ <> "4") THEN
  652.         AddListItem GLST$, "4"
  653.         WriteToLogFile "^ Com4 is invalid"
  654.     END IF
  655. SkipPortList:
  656. OPTL1:
  657.     sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", COMHELP, HELPPROC$)
  658.     OPTCUR$ = GetSymbolValue("ButtonChecked")
  659.     IF sz$ = "CONTINUE" THEN
  660.         UIPop(1)
  661.     ELSEIF sz$ = "REACTIVATE" THEN
  662.         GOTO OPTL1
  663.     ELSE
  664.         Asktoquit
  665.         GOTO OPTION
  666.     END IF
  667.     DEALLOCATE GL
  668. END SUB
  669.  
  670.  
  671. '**  CheckPen
  672. '** Purpose:
  673. '**     Checks the ports and gets the current comport.
  674. '** Arguments:
  675. '**     none.
  676. '** Returns:
  677. '**     none.
  678. '*************************************************************************
  679. SUB CheckPen STATIC
  680.     WriteToLogFile "^ Check for pen driver"
  681.     bd1$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "drivers")
  682.     IF INSTR(UCASE$(bd1$), "PEN") THEN
  683.         pn1$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "drivers", "pen")
  684.         WriteToLogFile "^ PEN driver found - " + bd1$ + "=" + pn1$
  685.         IF INSTR(UCASE$(pn1$), "WAC") THEN
  686.             GOTO OK
  687.         ELSEIF INSTR(UCASE$(pn1$),"MSMOUS") THEN
  688.             GOTO OK
  689.         ELSE
  690. NONWAC:
  691.             WriteToLogFile "^ Do we overwrite the existing driver?"
  692.             sz$ = UIStartDlg(CUIDLL$, NOWAC, "FInfoDlgProc", NWHELP, HELPPROC$)
  693.             IF sz$ = "CONTINUE" THEN
  694.                 WriteToLogFile "^ Yes."
  695.                 UIPop 1
  696.             ELSE
  697.                 WriteToLogFile "^ NO."
  698.                 Asktoquit
  699.                 GOTO NONWAC
  700.             END IF
  701.         END IF
  702.     END IF
  703. OK:
  704.     pn1$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "drivers", "pen")
  705.     PenCk% = INSTR(UCASE$(pn1$), "WAC")
  706. END SUB
  707.  
  708.  
  709. '**  AdjInf
  710. '** Purpose:
  711. '**     Adjust the Inf.
  712. '** Arguments:
  713. '**     none.
  714. '** Returns:
  715. '**     none.
  716. '*************************************************************************
  717. SUB AdjInf STATIC
  718.     fu% = 0
  719. NEXTINFFILE:
  720.     IF fu% < oemck% THEN
  721.         fname$ = WINDIR$ + "INF\OEM" + LTRIM$(STR$(fu%)) + ".INF"
  722.         WriteToLogFile "^ Checking for " + fname$
  723.         IF DoesFileExist(fname$, femExists) THEN
  724.             IF ("PEN" = UCASE$(LTRIM$(RTRIM$(GetIniKeyString(fname$, "version", "class"))))) AND "WACOM" = UCASE$(LTRIM$(RTRIM$(GetIniKeyString(fname$, "Strings", "Mfg")))) THEN
  725.                 WriteToLogFile "^ Remove the INF file"
  726.                 RemoveFile fname$, cmoForce
  727.                 RemoveFile WINDIR$ + "INF\DRVDATA.BIN", cmoForce
  728.                 RemoveFile WINDIR$ + "INF\DRVIDX.BIN", cmoForce
  729.             ELSE
  730.                 fu% = fu% + 1
  731.                 GOTO NEXTINFFILE
  732.             END IF
  733.         ELSE
  734.             WriteToLogFile "^ File not found."
  735.             fu% = fu% + 1
  736.             GOTO NEXTINFFILE
  737.         END IF
  738.     ELSE
  739.         WriteToLogFile "^ Checked" + STR$(oemck%) + " oem files."
  740.     END IF
  741.     IF Check%=0 THEN
  742.         WriteToLogFile "^ Copy pen.inf"
  743.         CopyFile SrcPath$ + "PEN.INF", WINDIR$ + "INF\PEN.INF", cmoOverwrite, 0
  744.     END IF
  745. END SUB
  746.  
  747.  
  748. '**  FixSerenum
  749. '** Purpose:
  750. '**     Fix the Serenum.vxd
  751. '** Arguments:
  752. '**     none.
  753. '** Returns:
  754. '**     none.
  755. '*************************************************************************
  756. SUB FixSerenum STATIC
  757.     WriteToLogFile "^ Checking for SERENUM.VXD"
  758.     IF DoesFileExist(SYSDIR$ + "SERENUM.VXD", femExists) THEN
  759.         WriteToLogFile "^ SERENUM.VXD found"
  760.     ELSE
  761.         WriteToLogFile "^ SERENUM.VXD not found"
  762.         WriteToLogFile "^ Checking for SERENUM.000"
  763.         IF DoesFileExist(SYSDIR$ + "SERENUM.000", femExists) THEN
  764.             IF Check%=0 THEN
  765.                 WriteToLogFile "^ SERENUM.000 renamed"
  766.                 RenameFile SYSDIR$ + "SERENUM.000", "SERENUM.VXD"
  767.             ELSE
  768.                 WriteToLogFile "^ SERENUM.000 found"
  769.             END IF
  770.         ELSE
  771.             WriteToLogFile "^ SERENUM.000 not found"
  772.         END IF
  773.     END IF
  774. END SUB
  775.  
  776.  
  777. '**  ShortenTimeOut
  778. '** Purpose:
  779. '**     Modifies penwin.dll settings.
  780. '** Arguments:
  781. '**     none.
  782. '** Returns:
  783. '**     none.
  784. '*************************************************************************
  785. SUB ShortenTimeOut STATIC
  786.     '** right now we only work on Win3.1
  787.     '** it is highly unlikely that someone running is penwin 2.0 on Win95
  788.     '** exists; and if they are, they may not want the time out shortened
  789.     IF OpSys% = WIN31 THEN
  790.         WriteToLogFile "Shortening PenWindows time-out"
  791.         CreateIniKeyValue  WINDIR$ + "PENWIN.INI", "Current", "SelectTimeout", "50", cmoOverwrite
  792.     END IF
  793. END SUB
  794.  
  795.  
  796. '**  ClearSerenum
  797. '** Purpose:
  798. '**     Clear wacom from serenum.
  799. '** Arguments:
  800. '**     none.
  801. '** Returns:
  802. '**     none.
  803. '*************************************************************************
  804. SUB ClearSerenum STATIC
  805.     WriteToLogFile "^ Clear SERENUM from the registery"
  806.     DIM cbVal AS POINTER TO LONG
  807.     DIM phKey AS POINTER TO LONG
  808.     hKey& = HKEY_LOCAL_MACHINE
  809.     phKey = VARPTR(hKey&)
  810.     cb% = 512
  811.     cbl& = cb%
  812.     cbVal = VARPTR(cbl&)
  813.     szBuf$ = STRING$(cb%, 0)
  814.     k% = 0
  815.     WriteToLogFile "^ Find ENUM"
  816.     il& = RegOpenKey(hKey&, "ENUM", phKey)
  817.     IF il& <> ERROR_SUCCESS THEN
  818.         IF il& = ERROR_FILE_NOT_FOUND THEN
  819.             WriteToLogFile "^ ENUM does not exist"
  820.         ELSE
  821.             WriteToLogFile "^ Error -" + STR$(il&)
  822.         END IF
  823.         GOTO wExitLoop3
  824.     END IF
  825.     hK1& = hKey&
  826.     WriteToLogFile "^ Find SERENUM"
  827.     il& = RegOpenKey(hKey&, "SERENUM", phKey)
  828.     IF il& <> ERROR_SUCCESS THEN
  829.         IF il& = ERROR_FILE_NOT_FOUND THEN
  830.             WriteToLogFile "^ SERENUM does not exist"
  831.         ELSE
  832.             WriteToLogFile "^ Error -" + STR$(il&)
  833.         END IF
  834.         GOTO wExitLoop2
  835.     END IF
  836.     WriteToLogFile "^ Find Sub-Keys"
  837. Wloop1:
  838.     il& = RegEnumKey(hkey&, k%, szBuf$, cbl&)
  839.     IF il& <> ERROR_SUCCESS THEN
  840.         IF il& = ERROR_NO_MORE_ITEMS THEN
  841.             WriteToLogFile "^ Done"
  842.         ELSEIF il& = ERROR_FILE_NOT_FOUND THEN
  843.             WriteToLogFile "^ Sub-Keys do not exist"
  844.         ELSE
  845.             WriteToLogFile "^ Error -" + STR$(il&)
  846.         END IF
  847.         GOTO wExitLoop1
  848.     END IF
  849.     WriteToLogFile "^ " + szBuf$ + " found"
  850.     IF MID$(szBuf$,1,3)="WAC" THEN
  851.         il& = RegDeleteKey(hKey&, szBuf$)
  852.         WriteToLogFile "^ " + szBuf$ + " removed"
  853.         GOTO WLoop1
  854.     END IF
  855.     k% = k% + 1
  856.     GOTO Wloop1
  857. wExitLoop1:
  858.     il& = RegCloseKey(hKey&)
  859. wExitLoop2:
  860.     il& = RegCloseKey(hK1&)
  861. wExitLoop3:
  862. END SUB
  863.  
  864.  
  865. '**  BackUpSys
  866. '** Purpose:
  867. '**     Backs up the system files.
  868. '** Arguments:
  869. '**     none.
  870. '** Returns:
  871. '**     none.
  872. '*************************************************************************
  873. SUB BackUpSys STATIC
  874.     fu% = 0
  875. NEXTLOGFILE:
  876.     IF fu% < 10 THEN
  877.         ext$ = "00" + LTRIM$(STR$(fu%))
  878.     ELSEIF fu% < 100 THEN
  879.         ext$ = "0" + LTRIM$(STR$(fu%))
  880.     ELSEIF fu% < 1000 THEN
  881.         ext$ = LTRIM$(STR$(fu%))
  882.     ELSE
  883.         WriteToLogFile "^ Can not create Backup file."
  884.         'i% = DoMsgBox("Can not create a backup for the SYSTEM.INI.  Please delete the SYSWAC.??? files from the Windows directory", "Backup Failure", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  885.         i% = DoMsgBox("SYSTEM.INI ファイルのバックアップが出来ませんでした。Windows ディレクトリから SYSWAC.??? ファイルを削除してください", "バックアップの失敗", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  886.         GOTO ALLLOGFILES
  887.     END IF
  888.     WriteToLogFile "^ Checking for " + WINDIR$ + "SYSWAC." + ext$
  889.     IF DoesFileExist(WINDIR$ + "SYSWAC." + ext$, femExists) THEN
  890.         fu% = fu% + 1
  891.         GOTO NEXTLOGFILE
  892.     ELSEIF Check%=0 THEN
  893.         WriteToLogFile "^ Copy the SYSTEM.INI to SYSWAC." + ext$
  894.         CopyFile WINDIR$ + "SYSTEM.INI", WINDIR$ + "SYSWAC." + ext$, cmoVital, 0
  895.     END IF
  896. ALLLOGFILES:
  897. END SUB
  898.  
  899.  
  900. '**  DoDblClk
  901. '** Purpose:
  902. '**     Do the Double click setup.
  903. '** Arguments:
  904. '**     Option Flag.
  905. '** Returns:
  906. '**     none.
  907. '*************************************************************************
  908. SUB DoDblClk(flag%) STATIC
  909.     IF flag% = 1 THEN
  910.         dist% = VAL(GetIniKeyString("WIN.INI", "windows", "DoubleClickWidth"))
  911.         WriteToLogFile "^ Old Double Click Width =" + STR$(dist%)
  912.         IF dist% < 5 THEN
  913.             WriteToLogFile "^ Set to 5"
  914.             CreateIniKeyValue "WIN.INI", "windows", "DoubleClickWidth", "5", cmoNone
  915.         END IF
  916.         dist% = VAL(GetIniKeyString("WIN.INI", "windows", "DoubleClickHeight"))
  917.         WriteToLogFile "^ Old Double Click Height =" + STR$(dist%)
  918.         IF dist% < 5 THEN
  919.             WriteToLogFile "^ Set to 5"
  920.             CreateIniKeyValue "WIN.INI", "windows", "DoubleClickHeight", "5", cmoNone
  921.         END IF
  922.     END IF
  923. END SUB
  924.  
  925.  
  926. '**  DoWacPen
  927. '** Purpose:
  928. '**     Do the WacPen Setup.
  929. '** Arguments:
  930. '**     Option Flag.
  931. '** Returns:
  932. '**     none.
  933. '*************************************************************************
  934. SUB DoWacPen(flag%) STATIC
  935.     mou$ = UCASE$(LTRIM$(RTRIM$(GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "mouse.drv"))))
  936.     IF mou$ = "WACPEN.DRV" THEN
  937.         mou$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", ";oldmouse")
  938.         WriteToLogFile "^ The ;oldmouse driver is " + mou$
  939.         IF mou$ <> "" THEN
  940.             IF DoesFileExist(WINDIR$ + "SYSTEM\" + mou$, femExists) THEN
  941.                 WriteToLogFile "^ Reset the MOUSE DRIVER to " + mou$
  942.                 CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "mouse.drv", mou$, cmoOverwrite
  943.                 IF INSTR(UCASE$(LTRIM$(RTRIM$(mou$))),"OLDMOUSE.DRV") THEN
  944.                 ELSE
  945.                     WriteToLogFile "^ Remove Oldmouse.drv"
  946.                     RemoveFile WINDIR$ + "SYSTEM\OLDMOUSE.DRV", cmoForce
  947.                 END IF
  948.             END IF
  949.         ELSE
  950.             WriteToLogFile "^ Reset the MOUSE DRIVER to oldmouse.drv"
  951.             CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "mouse.drv", "oldmouse.drv", cmoOverwrite
  952.             IF DoesFileExist(WINDIR$ + "SYSTEM\OLDMOUSE.DRV", femExists) THEN
  953.             ELSE
  954.                 WriteToLogFile "^ Add OLDMOUSE.DRV to file list"
  955.                 AddSectionFilesToCopyList "NoMouse", SrcPath$, SYSDIR$
  956.             END IF
  957.         END IF
  958.     END IF
  959.     WriteToLogFile "^ Remove the ;oldmouse key"
  960.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "boot", ";oldmouse", cmoNone
  961.     mou$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot.description", "mouse.drv")
  962.     WriteToLogFile "^ The description of the mouse is " + mou$
  963.     IF MID$(UCASE$(mou$),1,29) = "WACOM PEN DRIVER SPOOLING TO " THEN
  964.         IF LEN(mou$) = 29 THEN
  965.             WriteToLogFile "^ Clear the description"
  966.             mou$ = ""
  967.         ELSE
  968.             WriteToLogFile "^ Remove 'WACOM pen driver spooling to'"
  969.             mou$ = MID$(mou$,30)
  970.         END IF
  971.         CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot.description", "mouse.drv", mou$, cmoOverwrite
  972.     END IF
  973.     IF flag% > 0 THEN
  974.         mou$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "mouse.drv")
  975.         WriteToLogFile "^ The mouse driver is " + mou$
  976.         CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", ";oldmouse", mou$, cmoNone
  977.         WriteToLogFile "^ Set ;oldmouse to " + mou$
  978.         IF INSTR(mou$,"\") THEN
  979.             mouw$ = mou$
  980.             mous$ = mou$
  981.         ELSE
  982.             mouw$ = WINDIR$ + mou$
  983.             mous$ = WINDIR$ + "SYSTEM\" + mou$
  984.         END IF
  985.         IF INSTR(UCASE$(mou$),"WAC") THEN
  986.             WriteToLogFile "^ Mouse driver is WAC"
  987.             IF DoesFileExist(WINDIR$ + "SYSTEM\OLDMOUSE.DRV", femExists) THEN
  988.                 WriteToLogFile "^ OLDMOUSE.DRV already exists"
  989.             ELSE
  990.                 WriteToLogFile "^ Add OLDMOUSE.DRV to file list"
  991.                 AddSectionFilesToCopyList "NoMouse", SrcPath$, SYSDIR$
  992.             END IF
  993.         ELSEIF DoesFileExist(WINDIR$ + "SYSTEM\OLDMOUSE.DRV", femExists) THEN
  994.             WriteToLogFile "^ OLDMOUSE.DRV exists"
  995.         ELSEIF Check%=0 THEN
  996.             IF DoesFileExist(mouw$, femExist) THEN
  997.                 WriteToLogFile "^ Copy windows mouse.drv to oldmouse.drv"
  998.                 CopyFile mouw$, WINDIR$ + "SYSTEM\OLDMOUSE.DRV", cmoNone, 0
  999.             ELSEIF DoesFileExist(mous$, femExists) THEN
  1000.                 WriteToLogFile "^ Copy windows system mouse.drv to oldmouse.drv"
  1001.                 CopyFile mous$, WINDIR$ + "SYSTEM\OLDMOUSE.DRV", cmoNone, 0
  1002.             END IF
  1003.         END IF
  1004.         IF wacp% = 1 THEN
  1005.             WriteToLogFile "^ Set mouse driver to WACPEN.DRV"
  1006.             CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "mouse.drv", "wacpen.drv", cmoOverwrite
  1007.             mou$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot.description", "mouse.drv")
  1008.             WriteToLogFile "^ The description of the mouse is now " + mou$
  1009.             CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot.description", "mouse.drv", "WACOM pen driver spooling to " + mou$, cmoOverwrite
  1010.             WriteToLogFile "^ Add 'WACOM pen driver spooling to'"
  1011.         END IF
  1012.     END IF
  1013. END SUB
  1014.  
  1015.  
  1016. '**  DoWacVxd
  1017. '** Purpose:
  1018. '**     Do the Wacom vxd Setup.
  1019. '** Arguments:
  1020. '**     Option Flag.
  1021. '** Returns:
  1022. '**     none.
  1023. '*************************************************************************
  1024. SUB DoWacVxd(flag%) STATIC
  1025.     IF flag% = 1 THEN
  1026.         WriteToLogFile "^ Add WACOM.386 to list"
  1027.         AddListItem ILST$, "wacom.386"
  1028.     ELSEIF flag% = 2 THEN
  1029.         WriteToLogFile "^ Add WACOM.VXD to list"
  1030.         AddListItem ILST$, "wacom.vxd"
  1031.     END IF
  1032. TOP:
  1033.     FlushIniFile(WINDIR$ + "SYSTEM.INI")
  1034.     ini$ = GetIniKeyString(WINDIR$ + "SYSTEM.INI", "386Enh", "device")
  1035.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "386Enh", "device", cmoVital
  1036.     WriteToLogFile "^ Device = " + ini$ + "; Removed"
  1037.     IF INSTR(UCASE$(ini$), "WAC") THEN
  1038.         WriteToLogFile "^ WAC driver found"
  1039.     ELSEIF INSTR(UCASE$(ini$), "VPEN") THEN
  1040.         WriteToLogFile "^ VPEN driver found"
  1041.     ELSEIF ini$ = "" THEN
  1042.         WriteToLogFile "^ Last driver found"
  1043.     ELSE
  1044.         AddListItem ILST$, ini$
  1045.         GOTO TOP
  1046.     END IF
  1047.     x% = GetListLength(ILST$)
  1048.     WriteToLogFile "^ There are" + STR$(x%) + " drivers in the list"
  1049.     FOR i% = x% TO 1 STEP -1
  1050.         FlushIniFile(WINDIR$ + "SYSTEM.INI")
  1051.         ini$ = GetListItem(ILST$, i%)
  1052.         CreateSysIniKeyValue WINDIR$ + "SYSTEM.INI", "386Enh", "device", ini$, cmoVital
  1053.         WriteToLogFile "^ " + ini$ + " put back; " + GetIniKeyString(WINDIR$ + "SYSTEM.INI", "386Enh", "device") + " written"
  1054.     NEXT i%
  1055. END SUB
  1056.  
  1057.  
  1058. '**  DoWacDrv
  1059. '** Purpose:
  1060. '**     Do the Wacom driver Setup.
  1061. '** Arguments:
  1062. '**     Option Flag.
  1063. '** Returns:
  1064. '**     none.
  1065. '*************************************************************************
  1066. SUB DoWacDrv(flag%) STATIC
  1067.     bd1$ = LTRIM$(RTRIM$(GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "drivers")))
  1068.     WriteToLogFile "^ drivers = " + bd1$
  1069.     IF LEN(bd1$) > 2 THEN
  1070.         ps% = INSTR(UCASE$(bd1$)," PEN ")
  1071.         IF INSTR(LEN(bd1$)-2,UCASE$(bd1$),"PEN") THEN
  1072.             WriteToLogFile "^ PEN found at the end"
  1073.             IF LEN(bd1$) = 3 THEN
  1074.                 WriteToLogFile "^ Clear the drivers line"
  1075.                 bdt$ = ""
  1076.                 bd1$ = ""
  1077.             ELSEIF MID$(bd1$,LEN(bd1$)-3,1) = " " THEN
  1078.                 WriteToLogFile "^ Remove PEN from the line"
  1079.                 bdt$ = MID$(bd1$,1,LEN(bd1$) - 4)
  1080.                 bd1$ = LTRIM$(RTRIM$(bdt$))
  1081.             END IF
  1082.         ELSEIF MID$(UCASE$(bd1$),1,4) = "PEN " THEN
  1083.             WriteToLogFile "^ PEN found in the beginning"
  1084.             WriteToLogFile "^ Remove PEN from the line"
  1085.             bdt$ = MID$(bd1$,5)
  1086.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1087.         ELSEIF ps% THEN
  1088.             WriteToLogFile "^ PEN found in the line; @" + STR$(ps%)
  1089.             WriteToLogFile "^ Remove PEN from line"
  1090.             bdt$ = MID$(bd1$,1,ps% - 1) + MID$(bd1$,ps% + 4)
  1091.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1092.         END IF
  1093.         WriteToLogFile "^ New drivers line is " + bd1$
  1094.         CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "drivers", bd1$, cmoOverwrite
  1095.         FlushIniFile(WINDIR$ + "SYSTEM.INI")
  1096.     END IF
  1097.     WriteToLogFile "^ Remove PEN= line from drivers section"
  1098.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "drivers", "pen", cmoNone
  1099.     WriteToLogFile "^ Remove PEN.DRV= from descriptions"
  1100.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "boot.description", "pen.drv", cmoNone
  1101.     IF flag% > 0 THEN
  1102.         IF flag% < 2 THEN
  1103.             bd1$ = LTRIM$(RTRIM$(GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "drivers")))
  1104.             WriteToLogFile "^ drivers = " + bd1$
  1105.             WriteToLogFile "^ Add PEN to drivers line"
  1106.             bdt$ = bd1$ + " pen"
  1107.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1108.             WriteToLogFile "^ New drivers line is " + bd1$
  1109.             CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "drivers", bd1$, cmoOverwrite
  1110.             FlushIniFile(WINDIR$ + "SYSTEM.INI")
  1111.         END IF
  1112.         WriteToLogFile "^ Add PEN=WACOM.DRV"
  1113.         CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "drivers", "pen", "wacom.drv", cmoOverwrite
  1114.         WriteToLogFile "^ Add PEN.DRV= to boot.description"
  1115.         CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot.description", "pen.drv", "WACOM pen driver", cmoNone
  1116.     END IF
  1117.     WriteToLogFile "^ New drivers line is " + bd1$
  1118.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "boot", "drivers", cmoNone
  1119.     CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "drivers", bd1$, cmoOverwrite
  1120.     WriteToLogFile "^ Drivers line now equals " + GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "drivers")
  1121. END SUB
  1122.  
  1123.  
  1124. '**  DoPenWin
  1125. '** Purpose:
  1126. '**     Do the Pen Windows Setup.
  1127. '** Arguments:
  1128. '**     Option Flag.
  1129. '** Returns:
  1130. '**     none.
  1131. '*************************************************************************
  1132. SUB DoPenWin(flag%) STATIC
  1133.     bd1$ = LTRIM$(RTRIM$(GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "drivers")))
  1134.     WriteToLogFile "^ drivers = " + bd1$
  1135.     IF LEN(bd1$) > 9 THEN
  1136.         WriteToLogFile "^ Check for PENWINDOWS"
  1137.         ps% = INSTR(UCASE$(bd1$)," PENWINDOWS ")
  1138.         IF INSTR(LEN(bd1$)-9,UCASE$(bd1$),"PENWINDOWS") THEN
  1139.             WriteToLogFile "^ PENWINDOWS found at the end"
  1140.             IF LEN(bd1$) = 10 THEN
  1141.                 WriteToLogFile "^ Clear the drivers line"
  1142.                 bdt$ = ""
  1143.                 bd1$ = ""
  1144.             ELSEIF MID$(bd1$,LEN(bd1$)-10,1) = " " THEN
  1145.                 WriteToLogFile "^ Remove PENWINDOWS from the line"
  1146.                 bdt$ = MID$(bd1$,1,LEN(bd1$) - 11)
  1147.                 bd1$ = LTRIM$(RTRIM$(bdt$))
  1148.             END IF
  1149.         ELSEIF MID$(UCASE$(bd1$),1,11) = "PENWINDOWS " THEN
  1150.             WriteToLogFile "^ PENWINDOWS found in the beginning"
  1151.             WriteToLogFile "^ Remove PENWINDOWS from the line"
  1152.             bdt$ = MID$(bd1$,12,LEN(bd1$) - 11)
  1153.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1154.         ELSEIF ps% THEN
  1155.             WriteToLogFile "^ PENWINDOWS found in the line"
  1156.             WriteToLogFile "^ Remove PENWINDOWS from the line"
  1157.             bdt$ = MID$(bd1$,1,ps% - 1) + MID$(bd1$,ps% + 11,LEN(bd1$) - 10 - ps%)
  1158.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1159.         ELSE
  1160.             WriteToLogFile "^ PENWINDOWS not found"
  1161.         END IF
  1162.  
  1163.         WriteToLogFile "^ Check for IDLLMAN"
  1164.         ps% = INSTR(UCASE$(bd1$)," IDLLMAN ")
  1165.         IF INSTR(LEN(bd1$)-6,UCASE$(bd1$),"IDLLMAN") THEN
  1166.             WriteToLogFile "^ PENWINDOWS found at the end"
  1167.             IF LEN(bd1$) = 7 THEN
  1168.                 WriteToLogFile "^ Clear the drivers line"
  1169.                 bdt$ = ""
  1170.                 bd1$ = ""
  1171.             ELSEIF MID$(bd1$,LEN(bd1$)-7,1) = " " THEN
  1172.                 WriteToLogFile "^ Remove IDLLMAN from the line"
  1173.                 bdt$ = MID$(bd1$,1,LEN(bd1$) - 8)
  1174.                 bd1$ = LTRIM$(RTRIM$(bdt$))
  1175.             END IF
  1176.         ELSEIF MID$(UCASE$(bd1$),1,8) = "IDLLMAN " THEN
  1177.             WriteToLogFile "^ IDLLMAN found in the beginning"
  1178.             WriteToLogFile "^ Remove IDLLMAN from the line"
  1179.             bdt$ = MID$(bd1$,12,LEN(bd1$) - 8)
  1180.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1181.         ELSEIF ps% THEN
  1182.             WriteToLogFile "^ IDLLMAN found in the line"
  1183.             WriteToLogFile "^ Remove IDLLMAN from the line"
  1184.             bdt$ = MID$(bd1$,1,ps% - 1) + MID$(bd1$,ps% + 8,LEN(bd1$) - 7 - ps%)
  1185.             bd1$ = LTRIM$(RTRIM$(bdt$))
  1186.         ELSE
  1187.             WriteToLogFile "^ IDLLMAN not found"
  1188.         END IF
  1189.  
  1190.         WriteToLogFile "^ New drivers line is " + bd1$
  1191.     END IF
  1192.     WriteToLogFile "^ Remove PENWINDOWS= line from the drivers section"
  1193.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "drivers", "penwindows", cmoNone
  1194.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "drivers", "idllman", cmoNone
  1195.     IF flag% > 0 THEN
  1196.         WriteToLogFile "^ Add PENWINDOWS IDLLMAN to drivers line"
  1197.         bdt$ = bd1$ + " penwindows" + " idllman"
  1198.         bd1$ = LTRIM$(RTRIM$(bdt$))
  1199.         IF flag% > 1 THEN
  1200.             WriteToLogFile "^ Add PENWINDOWS=PENWIN.DLL"
  1201.             CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "drivers", "penwindows", "penwin.dll", cmoOverwrite
  1202.             WriteToLogFile "^ Add IDLLMAN=IDLLMAN.DLL"
  1203.             CreateIniKeyValue WINDIR$+"SYSTEM.INI", "drivers", "idllman", "idllman.dll", cmoOverwrite
  1204.         END IF
  1205.     END IF
  1206.     WriteToLogFile "^ New drivers line is " + bd1$
  1207.     RemoveIniKey WINDIR$ + "SYSTEM.INI", "boot", "drivers", cmoNone
  1208.     CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "boot", "drivers", bd1$, cmoOverwrite
  1209.     WriteToLogFile "^ Drivers line now equals " + GetIniKeyString(WINDIR$ + "SYSTEM.INI", "boot", "drivers")
  1210. END SUB
  1211.  
  1212.  
  1213. '**  Install
  1214. '** Purpose:
  1215. '**     Performs all installation operations.
  1216. '** Arguments:
  1217. '**     Operating System.
  1218. '** Returns:
  1219. '**     none.
  1220. '*************************************************************************
  1221. SUB Install STATIC
  1222.     WriteToLogFile "^ Display wait message"
  1223.     wt$ = UIStartDlg(CUIDLL$, PLSWAIT, "FModelessDlgProc", 0, "")
  1224.     CreateDir WacomDir$, cmoNone
  1225.  
  1226.     IF DoesDirExist(SrcPath$ + HelpPath$) THEN
  1227.         AddSectionFilesToCopyList "Helps", SrcPath$, WINDIR$
  1228.     END IF
  1229.  
  1230.     IF OpSys% = NT386 THEN
  1231.         WriteToLogFile "^ <DOS/V> Add NT Intel files to list"
  1232.         AddSectionFilesToCopyList "WTest", SrcPath$, WacomDir$
  1233. '  ********** 変更 **********  96/09/24(火)
  1234. ' uninstallの追加
  1235.         AddSectionFilesToCopyList "NT_Uninstall", SrcPath$, WacomDir$
  1236. '  ************************** 
  1237.         AddSectionFilesToCopyList "NT_USR_386", SrcPath$, WINDIR$ + "System32"
  1238.         AddSectionFilesToCopyList "NT_KRNL_386", SrcPath$, WINDIR$ + "System32\Drivers"
  1239.         ' PL-200V用にレジストリを作成する場合は"PL"パラメータをつける
  1240.         IF OPTTAB$ = "2" THEN
  1241.             Regfile$ = "SETREG_I PL"
  1242.         ELSE
  1243.             Regfile$ = "SETREG_I"
  1244.         END IF
  1245.         Readme$ = "NTINTEL.TXT"
  1246.  
  1247. '  ********** 変更 **********  96/09/24(火)
  1248. ' NTは領域外トラッキングをwintab.iniの設定でONにする
  1249.         CreateIniKeyValue WINDIR$ + "WINTAB.INI", "WACOM Tablet", "OutOfBoundsTracking", "1", cmoNone
  1250. '  ************************** 
  1251.  
  1252.     ELSEIF OpSys% = NTALPHA THEN
  1253.         WriteToLogFile "^ Add NT Alpha files to list"
  1254.         AddSectionFilesToCopyList "NT_USR_ALPHA", SrcPath$, WINDIR$ + "System32"
  1255.         AddSectionFilesToCopyList "NT_KRNL_ALPHA", SrcPath$, WINDIR$ + "System32\Drivers"
  1256.         Regfile$ = "SETREG_A"
  1257.         Readme$ = "NTALPHA.TXT"
  1258.     ELSEIF OpSys% = NTPPC THEN
  1259.         WriteToLogFile "^ Add NT Power PC files to list"
  1260.         AddSectionFilesToCopyList "NT_USR_PPC", SrcPath$, WINDIR$ + "System32"
  1261.         AddSectionFilesToCopyList "NT_KRNL_PPC", SrcPath$, WINDIR$ + "System32\Drivers"
  1262.         Regfile$ = "SETREG_P"
  1263.         Readme$ = "NTPPC.TXT"
  1264.     ELSEIF OpSys% = NTMIPS THEN
  1265.         WriteToLogFile "^ Add NT Mips files to list"
  1266.         AddSectionFilesToCopyList "NT_USR_MIPS", SrcPath$, WINDIR$ + "System32"
  1267.         AddSectionFilesToCopyList "NT_KRNL_MIPS", SrcPath$, WINDIR$ + "System32\Drivers"
  1268.         Regfile$ = "SETREG_M"
  1269.         Readme$ = "NTMIPS.TXT"
  1270.     ELSEIF OpSys% = WIN31 THEN
  1271.         BackUpSys
  1272.             WriteToLogFile "^ <DOS/V> Add windows 3.1 files to list"
  1273.             AddSectionFilesToCopyList "WTest", SrcPath$, WacomDir$
  1274.             AddSectionFilesToCopyList "Common", SrcPath$, SYSDIR$
  1275.             AddSectionFilesToCopyList "Wintabs", SrcPath$, SYSDIR$
  1276.             AddSectionFilesToCopyList "Win31_Files", SrcPath$, SYSDIR$
  1277.         Readme$ = "WIN31.TXT"
  1278.     ELSEIF OpSys% = WIN95 THEN
  1279.         BackUpSys
  1280.         WriteToLogFile "^ Add windows 95 files to list"
  1281.             AddSectionFilesToCopyList "WTest", SrcPath$, WacomDir$
  1282. '  ********** 変更 **********  96/09/24(火)
  1283. ' uninstallの追加
  1284.             AddSectionFilesToCopyList "Win95_Uninstall", SrcPath$, WacomDir$
  1285. '  ************************** 
  1286.             AddSectionFilesToCopyList "Common", SrcPath$, SYSDIR$
  1287.             AddSectionFilesToCopyList "Load_Save", SrcPath$, WINDIR$
  1288.             AddSectionFilesToCopyList "Eraser", SrcPath$, WINDIR$
  1289.             AddSectionFilesToCopyList "Wintabs", SrcPath$, SYSDIR$
  1290.             AddSectionFilesToCopyList "Win95_Files", SrcPath$, SYSDIR$
  1291.         Regfile$ = "regedit /s " + SYSDIR$ + "wacom95.reg"
  1292.         Readme$ = "WIN95.TXT"
  1293.     END IF
  1294.  
  1295.     UIPop 1
  1296.  
  1297.     IF Check%=0 THEN
  1298.         SetCopyGaugePosition 75,85
  1299.         CopyFilesInCopyList
  1300.         WriteToLogFile "^ Copy the appropriate readme and the files in the file list"
  1301.         CopyFile SrcPath$ + "README.TXT", WacomDir$ + "README.TXT", cmoOverwrite, 0
  1302. ' 日本語版ではOS毎のReadme.txtは作成していないので、この項はコメントとする
  1303. '        CopyFile SrcPath$ + HelpPath$ + Readme$, WacomDir$ + Readme$, cmoOverwrite, 0
  1304.  
  1305. '  ********** 変更 **********  96/09/24(火)
  1306. ' NTのwacomkey.exeとwintab32.exeが上書きされないので、その処理を行うCopyServ.batを実行する
  1307.         IF ( OpSys% = NT386 ) THEN
  1308.  
  1309.             Wintab32Check% = DoesFileExist(WINDIR$ + "system32\wintab32.exe", femExists)
  1310.             WacomkeyCheck% = DoesFileExist(WINDIR$ + "system32\wacomkey.exe", femExists)
  1311.  
  1312.             ComLine$ = SrcPath$ + NTIntelPath$ + "CopyServ.bat " + SrcPath$ + NTIntelPath$ + " " + WINDIR$ + "System32\" + STR$(WacomkeyCheck%)  + " " + STR$(Wintab32Check%)
  1313.             RUN ComLine$
  1314.  
  1315.         ENDIF
  1316. '  ************************** 
  1317.  
  1318.         IF (OpSys%>=WIN95) THEN
  1319.             WriteToLogFile "^ Modify registry by " + Regfile$
  1320.             fu% = WinExec(Regfile$, SW_HIDE)
  1321.         END IF
  1322.         IF OpSys% = WIN95 THEN
  1323.             AdjInf
  1324.             FixSerenum
  1325.             ClearSerenum
  1326.             ShortenTimeOut
  1327.             dblclk% = 0
  1328.             wacp%   = 2
  1329.             pend%   = 2
  1330.             w386%   = 3
  1331.             penw%   = 0
  1332.         ELSEIF OpSys% = WIN31 THEN
  1333.             ShortenTimeOut
  1334.             dblclk% = 1
  1335.             wacp%   = 2
  1336.             pend%   = 1
  1337.             w386%   = 1
  1338.             penw%   = 1
  1339.         END IF
  1340.         IF (OpSys%<NT386) THEN
  1341.             WriteToLogFile "^ Double click =" + STR$(dblclk%)
  1342.             WriteToLogFile "^ Wacpen       =" + STR$(wacp%)
  1343.             WriteToLogFile "^ Wacom Drv    =" + STR$(pend%)
  1344.             WriteToLogFile "^ Wacom Vxd    =" + STR$(w386%)
  1345.             WriteToLogFile "^ Pen Windows  =" + STR$(penw%)
  1346.             DoDblClk(dblclk%)
  1347.             DoWacPen(wacp%)
  1348.             DoWacVxd(w386%)
  1349.             DoWacDrv(pend%)
  1350.             DoPenWin(penw%)
  1351.             IF OPTCUR$ = "X" THEN
  1352.                 WriteToLogFile "^ Remove ComPort="
  1353.                 RemoveIniKey WINDIR$ + "SYSTEM.INI", "Pen Driver", "ComPort", cmoNone
  1354.             ELSEIF OPTCUR$ = "" THEN
  1355.                 WriteToLogFile "^ Did not change ComPort="
  1356.             ELSE
  1357.                 WriteToLogFile "^ ComPort=" + OPTCUR$
  1358.                 CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "Pen Driver", "ComPort", OPTCUR$, cmoOverwrite
  1359.             END IF
  1360.  
  1361.             ' ボーレートを書き込む
  1362.             IF OPTBAUD$ = "2" THEN
  1363.                 WriteToLogFile "9600Baud=0"
  1364.                 CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "Pen Driver", "9600baud", "0", cmoOverwrite
  1365.             ELSE
  1366.                 WriteToLogFile "9600Baud=1"
  1367.                 CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "Pen Driver", "9600baud", "1", cmoOverwrite
  1368.             END IF
  1369.  
  1370.             ' 追加
  1371.             CreateIniKeyValue WINDIR$ + "SYSTEM.INI", "Pen Driver", "IgnoreStartErrors", "0", cmoNone
  1372.  
  1373.             ' ver2.14からダブルクリックディスタンスのデフォリト値を15にする。これまでは4。(記述がなければ4となる)
  1374.             CreateIniKeyValue WINDIR$+"WIN.INI", "windows", "DoubleClickWidth",  "15", cmoOverwrite
  1375.             CreateIniKeyValue WINDIR$+"WIN.INI", "windows", "DoubleClickHeight",  "15", cmoOverwrite
  1376.  
  1377.             IF OpSys% = WIN31 THEN
  1378.                 CreateIniKeyValue WINDIR$+"WIN.INI", "IMEUserInterface", "installPenUi",  "1", cmoOverwrite
  1379.                 CreateIniKeyValue WINDIR$+"WIN.INI", "IMEUserInterface", "activePenUi",   "1", cmoOverwrite
  1380.                 CreateIniKeyValue WINDIR$+"WIN.INI", "IMEUserInterface", "PENUI1","MSPENUI.DLL,1.0,マイクロソフトペンユ-ザインターフェイス", cmoOverwrite
  1381.             ENDIF
  1382.  
  1383.             ' 筆圧ペンの使用の有無を wacom.ini に書き込む。
  1384.             IF OPTPEN$ = "2" THEN
  1385.                 CreateIniKeyValue WINDIR$ + "WACOM.INI", "BOOT", "Pressure", "0", cmoOverwrite
  1386. '  ********** 変更 **********  96/09/26(木)
  1387. ' 筆圧ペンを選択した時はwacom.iniに何も書かないようにする(デフォルトが変わるから)
  1388. '            ELSE
  1389. '                CreateIniKeyValue WINDIR$ + "WACOM.INI", "BOOT", "Pressure", "1", cmoOverwrite
  1390. '  ************************** 
  1391.             END IF
  1392.  
  1393. '  ********** 変更 **********  96/09/24(火)
  1394. '追加2.43(Comポートの占有処理)
  1395.             CreateIniKeyValue WINDIR$ + "WACOM.INI", "boot", "SolveComPortConflict", "0", cmoNone
  1396. '  ************************** 
  1397.  
  1398.         END IF
  1399.     END IF
  1400. END SUB
  1401.  
  1402.  
  1403. '**  RemoveIt
  1404. '** Purpose:
  1405. '**     Performs all Removal operations.
  1406. '** Arguments:
  1407. '**     Operating System.
  1408. '** Returns:
  1409. '**     none.
  1410. '*************************************************************************
  1411. SUB RemoveIt STATIC
  1412.     WriteToLogFile "^ Display wait message"
  1413.     wt$ = UIStartDlg(CUIDLL$, PLSWAIT, "FModelessDlgProc", 0, "")
  1414.  
  1415.     IF OpSys% = WIN31 THEN
  1416.         DoDblClk(0)
  1417.         DoWacPen(0)
  1418.         DoWacVxd(0)
  1419.         DoWacDrv(0)
  1420.         DoPenWin(0)
  1421.  
  1422.         WriteToLogFile "^ Remove the Pen Driver Section"
  1423.         i% = WritePrivateProfileString("Pen Driver", NULL, NULL, WINDIR$ + "SYSTEM.INI")
  1424.  
  1425.         UIPop 1
  1426.     ELSEIF OpSys% = WIN95 THEN
  1427. ''        ClearSerenum
  1428.  
  1429.         DoWacDrv(0)
  1430.  
  1431.         WriteToLogFile "^ Remove the Pen Driver Section"
  1432.         i% = WritePrivateProfileString("Pen Driver", NULL, NULL, WINDIR$ + "SYSTEM.INI")
  1433.  
  1434.         WriteToLogFile "^ Clear the wacom setting from the registry"
  1435.         fu% = WinExec("delreg.pif", SW_HIDE)
  1436.  
  1437.         UIPop 1
  1438.     ELSEIF OpSys% = NT386 THEN
  1439.     ELSEIF OpSys% = NTALPHA THEN
  1440.     ELSEIF OpSys% = NTPPC THEN
  1441.     ELSEIF OpSys% = NTMIPS THEN
  1442.     END IF
  1443. END SUB
  1444.