home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 July / VPR9707A.ISO / OLS / Win32 / Wbat128p / WBAT128P.LZH / SAMPLE / VIEWSCR.BTW < prev    next >
Text File  |  1995-11-15  |  3KB  |  83 lines

  1. @batchwnd off
  2. @executewnd off
  3. :/    --------------------------------------------------------------
  4. :/    WinBatchEhサンプルバッチ - VIEWSCR.BTW
  5. :/    任意のディレクトリのスクリーンセーバーを選択して起動する
  6. :/
  7. :/    Author : Yohei Shimizu
  8. :/    Version: 1.01
  9. :/    Date   : 1995/11/15
  10. :/
  11. :/    History: 1.0    1995/08/16
  12. :/            Initial Version
  13. :/         1.01    1995/11/15
  14. :/            Windows95で長いファイルでも動作するようにした
  15. :/    --------------------------------------------------------------
  16.  
  17. :/ WinBatchEhのバージョンのチェック(1.13以上が必要)
  18.  
  19. :/ バージョン 1.01 以前ではgetversionがサポートされてないので先にERRORLEVEL
  20. :/ に入れておく
  21. set ERRORLEVEL=101
  22. getversion
  23. if not ERRORLEVEL 113
  24.   messagebox このバッチを動作させるには WinBatchEh バージョン 1.13 以降を使用してください.
  25.   exit
  26. endif
  27.  
  28. messagebox=MB_OKCANCEL+MB_FORMAT スクリーンセーバービューア(^^;)\n任意のドライブ/ディレクトリのScreenSaver(.SCR)を選択してください\nそのセーバーを起動します
  29. if %ERRORLEVEL%==IDCANCEL exit
  30.  
  31. messagebox=MB_OKCANCEL+MB_FORMAT 現在コントロールパネルで設定されているセーバー名はそのままです(行儀がいいでしょ:-)\nセーバー起動後マウスを動かすとセーバーが終了します\nセーバー起動時にSHIFTキーを押し続けているとセーバーの設定を行なえます
  32. if %ERRORLEVEL%==IDCANCEL exit
  33.  
  34. :/ 開始処理 - 最後に元に戻せるように現在のセーバー名を取得しておく
  35. getinistring boot SCRNSAVE.EXE ORGSCR system.ini
  36.  
  37. :/ STOPが押されたときにも元に戻せるように
  38. on stop goto END
  39.  
  40. while 1
  41.   :/ .SCRのファイル名を入力する
  42.   getopenfilename SAVER ScreenSaver(*.scr)
  43.  
  44.   :/ キャンセルならループを抜ける
  45.   if ERRORLEVEL 1 break
  46.  
  47.   :/ SHIFTキーの状態を調べる
  48.   getkeystate VK_SHIFT
  49.  
  50.   if ERRORLEVEL 1
  51.     :/ SHIFTを押していれば /c を付けて起動して設定画面で起動
  52.  
  53.     exec=SW_NOEXT %SAVER% /c
  54.  
  55.   else
  56.     :/ SHIFTを押して無ければ普通に起動
  57.  
  58.     :/ Windows95で長いファイル名だと起動しないので短いファイル名に変換する
  59.     strtokfile=STF_DRV+STF_PATHNAME+STF_SHORT SAVER "%SAVER%"
  60.  
  61.     :/ セーバー名を書き込み
  62.     writeinistring boot SCRNSAVE.EXE "%SAVER%" system.ini
  63.  
  64.     :/ exec=SW_NOEXT %SAVER% で起動すると設定になってしまうセーバーがあるので
  65.     :/ postmessageの方でやる
  66.     postmessage @Desktop WM_SYSCOMMAND SC_SCREENSAVE
  67.  
  68.     :/ 現在のマウスの位置を取得
  69.     getcursorpos X Y
  70.  
  71.     :/ マウスを動かすまでループ
  72.       while 1
  73.         getcursorpos X1 Y1
  74.         if not %X%-%Y%==%X1%-%Y1% break
  75.       endwhile
  76.   endif
  77.  
  78. endwhile
  79.  
  80. :END
  81. :/ 終了処理 - セーバーの設定を元に戻す
  82. writeinistring boot SCRNSAVE.EXE "%ORGSCR%" system.ini
  83.