home *** CD-ROM | disk | FTP | other *** search
/ Windows 95 v2.4 Fix / W95-v2.4fix.iso / NT95 / SHUPDATE.CMD < prev    next >
Encoding:
Text File  |  1996-02-24  |  19.1 KB  |  594 lines

  1. @echo off
  2. rem
  3. rem  This script installs the Shell Technology Preview
  4. rem  on Windows NT 3.51
  5. rem
  6.  
  7. SETLOCAL
  8. set action=install
  9.  
  10. :ArgParse
  11. if "%1" == "/u" set action=uninstall& shift& goto ArgParse
  12. if "%1" == "/U" set action=uninstall& shift& goto ArgParse
  13.  
  14. set releasename=Shell Technology Preview
  15.  
  16. echo.
  17. echo              Windows NT 3.51 %releasename% %action%
  18. echo.
  19. echo  This program will modify system-critical files in your current Windows NT
  20. echo     installation and %action% the new %releasename% for
  21. echo                          Windows NT 3.51.
  22. echo.
  23.  
  24. if NOT "%1" == "" goto usage
  25.  
  26. rem
  27. rem Set up our commands for non test mode
  28.  
  29. set shtools=shuttle inxtoreg mv rm imagecfg
  30. set copycmd=copy
  31. set rencmd=ren
  32. set inxtoregcmd=inxtoreg
  33. set delcmd=del
  34. set rmdircmd=rmdir
  35. set newdir=mkdir
  36. set cdcmd=cd
  37. set delboot=rm /x /d
  38. set moveboot=mv /x /d
  39. set rebootcmd=shuttle -x
  40. set imagecfg40cmd=imagecfg -v 4.0
  41. set imagecfg351cmd=imagecfg -v 3.51
  42. set freespacecmd=shuttle -f
  43. set freevschecksyscmd=shuttle -b
  44. set freevscheckbincmd=shuttle -y
  45. set adminprvcmd=shuttle -a
  46. set ynccmd=shuttle -c
  47. set rmassoccmd=shuttle -k
  48. set restassoccmd=shuttle -z
  49. set setshellcmd=shuttle -s
  50. set setwelcomecmd=shuttle -w
  51. set checkversioncmd=shuttle -l
  52. set old_user=spbackup
  53. rem
  54. rem ************ Set up our lists of files.  These are the files that replace
  55. rem ************ existing files so we should back them up first.
  56. rem
  57. set userexefiles=user control notepad
  58. set userdllfiles=user32 kernel32 winsrv shell32 mpr ntlanman ntlanui comctl32
  59.  
  60. rem
  61. rem ************  set these to the names of files that should be copied install
  62. rem ************  directory to the %systemroot%\system32 directory
  63. set system32exefiles=explorer grpconv rundll32 runonce syncapp
  64. set system32dllfiles=linkinfo docprop shscrap synceng syncui ntshrui
  65. set system32cplfiles=appwiz
  66. set systemttffiles=marlett
  67. set viewerexefiles=quikview
  68. set viewerdllfiles=
  69. set miscfiles=
  70.  
  71. rem
  72. rem ************  set these to the name of files that should be
  73. rem ************  version stamp revised only
  74. rem
  75. set stampinuseexefiles=winlogon printman winfile
  76. set stampinusedllfiles=comdlg32 mprui netui0 netui1 netui2 acledit
  77. set stampexefiles=ntoskrnl ntkrnlmp
  78. set stampdllfiles=
  79.  
  80. rem
  81. rem ************  set this to the names of files that should be inxtoreg'd.
  82. set inxfiles=shell
  83.  
  84. rem
  85. rem ************ Check to make sure the tools we need are in the current
  86. rem ************ directory.
  87.  
  88. echo Checking for needed tools...
  89. for %%i in (%shtools%) do (if NOT exist .\%%i.exe goto no_tools)
  90. goto check_admin_priv
  91.  
  92. :no_tools
  93. rem
  94. echo.
  95. echo Some files are missing.  One (or more) of the following files could not
  96. echo be found in the current directory.  To install the new shell, make sure
  97. echo you are running this script from the same directory where all the
  98. echo distrubition files are located.
  99. echo.
  100. echo Could not find one of the following tools:
  101. echo.
  102. echo     %shtools%
  103. echo.
  104. goto end
  105.  
  106. :check_admin_priv
  107. echo Checking for correct privileges...
  108. %adminprvcmd%
  109. if errorlevel 1 goto check_uninstall
  110. echo.
  111. echo  You do not have administrator privileges on this machine!  Administrator
  112. echo  privileges are required to be able to install/uninstall the Shell Preview.
  113. echo  Please log off and log back on with an user account that is a member of the
  114. echo  administrator security group.
  115. echo.
  116. goto end
  117.  
  118.  
  119. :check_uninstall
  120. rem
  121. rem check what function we are performing
  122. rem
  123. if %action% == uninstall goto uninstall
  124.  
  125.  
  126. rem
  127. rem ************ Check to make sure we are installing on an NT 3.51 system
  128. echo Checking system version...
  129. %checkversioncmd%
  130. if errorlevel 1 goto wrong_version
  131. goto check_disk_space
  132. :wrong_version
  133. echo.
  134. echo  You are trying to install the %releasename%
  135. echo  on a beta or pre 3.51 version of Windows NT.  The
  136. echo  %releasename% can only be installed on the
  137. echo  retail release of Windows NT version 3.51.
  138. echo.
  139. goto end
  140.  
  141.  
  142. :check_disk_space
  143. rem
  144. rem ************ Check to make sure we have enough disk space
  145. echo Checking free disk space...
  146. %freespacecmd% 20000000 %systemroot%
  147. if errorlevel 1 goto not_enough_space
  148. goto check_free_vs_checked
  149.  
  150. :not_enough_space
  151. echo.
  152. echo  There is not enough disk space on the drive your
  153. echo  system is installed on (%systemroot%).
  154. echo  You need at least 20MB of free space.  Please free up
  155. echo  some space on your system drive and run %0 again.
  156. echo.
  157. goto end
  158.  
  159. :check_free_vs_checked
  160. echo Verifying system type...
  161. rem
  162. rem Check whether the Shell Preview binaries are retail
  163. rem or debug binaries (so as to match the binaries with
  164. rem the correct type of system).
  165. rem
  166. %freevscheckbincmd%
  167. if errorlevel 1 goto need_checked_build
  168.  
  169. rem
  170. rem we're trying to install free/retail binaries, make sure
  171. rem the system is a free/retail one.
  172. rem
  173. %freevschecksyscmd%
  174. if errorlevel 1 goto needed_free_build
  175. goto check_files
  176.  
  177. :needed_free_build
  178. echo.
  179. echo  You are attempting the install the free/retail Shell Preview on a
  180. echo  checked/debug system.  This is not supported!  For a checked/debug
  181. echo  system, you need to install the checked/debug Shell Preview.
  182. echo.
  183. goto end
  184.  
  185. :need_checked_build
  186. rem
  187. rem we're trying to install debug binaries, make sure
  188. rem the system is a debug one.
  189. rem
  190. %freevschecksyscmd%
  191. if errorlevel 1 goto check_files
  192.  
  193. echo.
  194. echo  You are attempting the install the checked/debug Shell Preview on a
  195. echo  free/retail system.  This is not supported!  For a free/retail system,
  196. echo  you need to install a free/retail Shell Preview.
  197. echo.
  198. goto end
  199.  
  200. :check_files
  201.  
  202.  
  203.  
  204. rem
  205. rem Check to make sure all needed files exist in the current
  206. rem directory.  This will ensure that we don't hose
  207. rem any systems.
  208. rem
  209.  
  210. echo Checking for %releasename% files...
  211. for %%i in (%userexefiles%)     do (if NOT exist .\%%i.exe goto missing_files)
  212. for %%i in (%userdllfiles%)     do (if NOT exist .\%%i.dll goto missing_files)
  213. for %%i in (%system32exefiles%) do (if NOT exist .\%%i.exe goto missing_files)
  214. for %%i in (%system32dllfiles%) do (if NOT exist .\%%i.dll goto missing_files)
  215. for %%i in (%system32cplfiles%) do (if NOT exist .\%%i.cpl goto missing_files)
  216. for %%i in (%systemttffiles%)   do (if NOT exist .\%%i.ttf goto missing_files)
  217. for %%i in (%viewerexefiles%)   do (if NOT exist .\%%i.exe goto missing_files)
  218. for %%i in (%inxfiles%)         do (if NOT exist .\%%i.inx goto missing_files)
  219. goto check_already_installed
  220.  
  221.  
  222. :missing_files
  223. echo.
  224. echo ***** Some file(s) are missing! *****
  225. echo.
  226. echo One (or more) of the following files could not  be found in the
  227. echo current directory.  To install the new shell, make sure you are
  228. echo running this script from the same directory where all the
  229. echo distrubition files are located.
  230. echo.
  231. echo %0 could not find one of the following distribution files:
  232. echo   .EXEs:
  233. echo     %userexefiles%
  234. echo     %system32exefiles%
  235. echo     %viewerexefiles%
  236. echo.
  237. echo   .DLLs:
  238. echo     %userdllfiles%
  239. echo     %system32dllfiles%
  240. echo     %viewerdllfiles%
  241. echo.
  242. echo   .CPLs:
  243. echo     %system32cplfiles%
  244. echo.
  245. echo   .TTFs
  246. echo     %systemttffiles%
  247. echo.
  248. goto end
  249.  
  250. :check_already_installed
  251. for %%i in (%userexefiles%) do (if exist %SystemRoot%\System32\%old_user%\%%i.exe goto warn_user)
  252. for %%i in (%userdllfiles%) do (if exist %SystemRoot%\System32\%old_user%\%%i.dll goto warn_user)
  253. for %%i in (%stampinuseexefiles%) do (if exist %SystemRoot%\System32\%old_user%\%%i.exe goto warn_user)
  254. for %%i in (%stampinusedllfiles%) do (if exist %SystemRoot%\System32\%old_user%\%%i.dll goto warn_user)
  255. goto make_backup
  256.  
  257. :warn_user
  258. echo.
  259. echo  *** WARNING!  WARNING!  WARNING! ***
  260. echo.
  261. echo  The directory %SystemRoot%\system32\%old_user% already
  262. echo  exists.  This is most likely because you have already installed
  263. echo  or tried to install the Shell Preview.  If you try to install
  264. echo  the Shell Preview again now, you might lose the ability to uninstall
  265. echo  the Shell Preview and recover your NT 3.51 installation!!!!
  266. echo.
  267. echo.
  268. %ynccmd% "yn" "Are you sure you want to try to install the Shell Preview?"
  269. if errorlevel 1 goto end
  270. echo.
  271. %ynccmd% "yn" "Are you REALLY SURE you want to try to install the Shell Preview?"
  272. if errorlevel 1 goto end
  273.  
  274. :make_backup
  275. rem
  276. rem Do a few more checks...
  277. rem
  278.  
  279.  
  280. rem
  281. rem Verify that TEMP= and TMP= are valid
  282.  
  283. if not "%tmp%" == "" goto tempset
  284. if not "%temp%" == "" set tmp=%temp%&&goto tempset
  285.  
  286. echo.
  287. echo Neither the TMP or TEMP environment variable is set.  Please set one
  288. echo of them and then re-run this script.
  289. echo.
  290. goto end
  291.  
  292. :tempset
  293. if exist %tmp% goto tmpexists
  294. echo.
  295. echo Your TMP or TEMP environment variable is set to %tmp%
  296. echo.
  297. echo That directory does not exist.
  298. echo.
  299. %ynccmd% "yn" "Do you wish to create %tmp%?"
  300. if errorlevel 1 goto end
  301. %newdir% %tmp% 2>nul 1>nul
  302. if not exist %tmp% goto end
  303.  
  304. :tmpexists
  305. echo.
  306. echo.
  307. echo.
  308. echo.
  309. echo.
  310. echo  *****************************************************************************
  311. echo   Notes on using the %releasename% with Windows NT version 3.51
  312. echo  *****************************************************************************
  313. echo.
  314. echo  This preview is intended to enable software developers and vendors
  315. echo  to test their applications on both Windows 95 and Windows NT version 3.51
  316. echo  platforms.  This user interface will be integrated into the base Windows NT
  317. echo  product and made available in a future release of Windows NT.  The date of
  318. echo  this release is to be determined.
  319. echo.
  320. echo  Reporting Problems
  321. echo.
  322. echo  The %releasename% has not been fully tested and should not be
  323. echo  deployed in production environments.  There is currently no official
  324. echo  Microsoft Product Support Services support available for using the
  325. echo  %releasename% on Windows NT version 3.51.  If you wish to join
  326. echo  other customers using and exchanging feedback on the %releasename%,
  327. echo  the CompuServe location is MSDR forum, Section 15.
  328. echo.
  329. pause
  330. echo.
  331. echo  If you wish to report a problem, please do so through our CompuServe or
  332. echo  Internet services as follows.  These are not support locations, but may
  333. echo  be used to submit problems you encounter using PROBREP.TXT.
  334. echo.
  335. echo  CompuServe: upload PROBREP.TXT to the WINNT forum, Library 3.
  336. echo.
  337. echo  FTP: Connect to ftp.microsoft.com
  338. echo.
  339. echo        (ftp)cd e:
  340. echo        (ftp)cd incoming/bussys/winnt/probrep
  341. echo        (ftp)bin
  342. echo        (ftp)put probrep.txt
  343. echo.
  344. echo  Internet mail: send to ntbug@microsoft.com
  345. echo.
  346. echo  If after installing the %releasename% you wish to remove it, run
  347. echo  %0 /U.  This command will remove the %releasename%
  348. echo  and reinstate Program Manager from the previous Windows NT 3.51
  349. echo  configuration.
  350. echo.
  351. pause
  352. echo.
  353. echo  If you have read this statement, and still want to install the
  354. echo  %releasename%, press 'y' now or press 'n' to escape.
  355. echo.
  356. %ynccmd% "yn" "Do you wish to continue?"
  357. if errorlevel 1 goto end
  358. echo.
  359.  
  360. %delcmd% %SystemRoot%\system32\~* 2>nul
  361.  
  362. if exist %SystemRoot%\system32\~* goto renamerr
  363. if exist %SystemRoot%\mstools\~* goto renamerr
  364.  
  365. %newdir% %SystemRoot%\system32\%old_user% 2>nul 1>nul
  366. if NOT "%userexefiles%" == "" for %%i in (%userexefiles%) do (if exist %SystemRoot%\system32\%%i.exe %copycmd% %SystemRoot%\system32\%%i.exe %SystemRoot%\system32\%old_user%)
  367. if NOT "%userdllfiles%" == "" for %%i in (%userdllfiles%) do (if exist %SystemRoot%\system32\%%i.dll %copycmd% %SystemRoot%\system32\%%i.dll %SystemRoot%\system32\%old_user%)
  368. if NOT "%stampinuseexefiles%" == "" for %%i in (%stampinuseexefiles%) do (if exist %SystemRoot%\system32\%%i.exe %copycmd% %SystemRoot%\system32\%%i.exe %SystemRoot%\system32\%old_user%)
  369. if NOT "%stampinusedllfiles%" == "" for %%i in (%stampinusedllfiles%) do (if exist %SystemRoot%\system32\%%i.dll %copycmd% %SystemRoot%\system32\%%i.dll %SystemRoot%\system32\%old_user%)
  370.  
  371. echo.
  372. echo            **********************************************************
  373. echo              A backup of the original files has been made in
  374. echo              %SystemRoot%\system32\%old_user% for uninstall purposes.
  375. echo            **********************************************************
  376. echo.
  377.  
  378. :backup_done
  379. rem
  380. rem ************ Copy files into the appropriate system locations
  381. rem
  382. echo.
  383. echo Copying files...
  384.  
  385. for %%i in (%userexefiles%) do (%copycmd% .\%%i.exe %SystemRoot%\system32\~%%i.exe && %moveboot% %SystemRoot%\system32\~%%i.exe %SystemRoot%\system32\%%i.exe)
  386. for %%i in (%userdllfiles%) do (%copycmd% .\%%i.dll %SystemRoot%\system32\~%%i.dll && %moveboot% %SystemRoot%\system32\~%%i.dll %SystemRoot%\system32\%%i.dll)
  387. for %%i in (%stampinuseexefiles%) do (%copycmd% %SystemRoot%\system32\%%i.exe %SystemRoot%\system32\~%%i.exe && %moveboot% %SystemRoot%\system32\~%%i.exe %SystemRoot%\system32\%%i.exe)
  388. for %%i in (%stampinusedllfiles%) do (%copycmd% %SystemRoot%\system32\%%i.dll %SystemRoot%\system32\~%%i.dll && %moveboot% %SystemRoot%\system32\~%%i.dll %SystemRoot%\system32\%%i.dll)
  389.  
  390. for %%i in (%system32exefiles%) do (%copycmd% .\%%i.exe %SystemRoot%\system32\~%%i.exe && %moveboot% %SystemRoot%\system32\~%%i.exe %SystemRoot%\system32\%%i.exe)
  391. for %%i in (%system32dllfiles%) do (%copycmd% .\%%i.dll %SystemRoot%\system32\~%%i.dll && %moveboot% %SystemRoot%\system32\~%%i.dll %SystemRoot%\system32\%%i.dll)
  392. for %%i in (%system32cplfiles%) do (%copycmd% .\%%i.cpl %SystemRoot%\system32\~%%i.cpl && %moveboot% %SystemRoot%\system32\~%%i.cpl %SystemRoot%\system32\%%i.cpl)
  393. for %%i in (%systemttffiles%)   do (%copycmd% .\%%i.ttf %SystemRoot%\system\~%%i.ttf   && %moveboot% %SystemRoot%\system\~%%i.ttf   %SystemRoot%\system\%%i.ttf)
  394.  
  395. for %%i in (%miscfiles%) do (%copycmd% %%i %SystemRoot%\system32\~%%i && %moveboot% %SystemRoot%\system32\~%%i %SystemRoot%\system32\%%i)
  396.  
  397. %newdir% %SystemRoot%\system32\viewers 2>nul 1>nul
  398.  
  399. for %%i in (%viewerexefiles%) do (%copycmd% %%i.exe %SystemRoot%\system32\viewers\~%%i.exe && %moveboot% %SystemRoot%\system32\viewers\~%%i.exe %SystemRoot%\system32\viewers\%%i.exe)
  400. for %%i in (%viewerdllfiles%) do (%copycmd% %%i.exe %SystemRoot%\system32\viewers\~%%i.dll && %moveboot% %SystemRoot%\system32\viewers\~%%i.dll %SystemRoot%\system32\viewers\%%i.dll)
  401.  
  402. rem
  403. rem ************ Run inxtoreg as necessary
  404. rem
  405.  
  406. if NOT "%inxfiles%" == "" for %%i in (%inxfiles%) do %inxtoregcmd% %%i.inx >nul
  407.  
  408. rem
  409. rem ************ Set explorer as shell
  410. rem
  411.  
  412. %setshellcmd% Explorer.exe
  413.  
  414. rem
  415. rem ************ Set welcome executable
  416. rem
  417.  
  418. %setwelcomecmd% grpconv.exe
  419.  
  420. rem
  421. rem ************* Version stamp exes
  422. rem
  423.  
  424. for %%i in (%stampinuseexefiles%) do %imagecfg40cmd% %SystemRoot%\system32\~%%i.exe >nul
  425. for %%i in (%stampinusedllfiles%) do %imagecfg40cmd% %SystemRoot%\system32\~%%i.dll >nul
  426. for %%i in (%stampexefiles%) do (if exist %SystemRoot%\system32\%%i.exe %imagecfg40cmd% %SystemRoot%\system32\%%i.exe >nul)
  427. for %%i in (%stampdllfiles%) do %imagecfg40cmd% %SystemRoot%\system32\%%i.dll >nul
  428.  
  429. rem
  430. rem ************ Tell the user to reboot
  431. rem
  432.  
  433. echo.
  434. echo After rebooting you may uninstall by running '%0 /u'.
  435. echo.
  436.  
  437. :needreboot
  438. %ynccmd% "yn" "The Shell Preview has been %action%ed.  Press 'y' to reboot."
  439. if errorlevel 1 goto end
  440.  
  441. echo.
  442. echo Rebooting system...
  443. %rebootcmd%
  444. goto end
  445.  
  446. :usage
  447. echo.
  448. echo %0 [/u] : Install or uninstall the Shell Preview files
  449. echo.
  450. echo    - /u : Perform an uninstall instead of an install
  451. echo.
  452. goto end
  453.  
  454. rem
  455. rem ************ Perform an uninstall
  456. rem
  457.  
  458. :uninstall
  459.  
  460. echo.
  461. rem
  462. rem Check to make sure the old file exist
  463. if not exist %SystemRoot%\system32\%old_user% goto cantundo
  464. for %%i in (%userexefiles%) do (if not exist %SystemRoot%\system32\%old_user%\%%i.exe goto cantundo)
  465. for %%i in (%userdllfiles%) do (if not exist %SystemRoot%\system32\%old_user%\%%i.dll goto cantundo)
  466. for %%i in (%stampinuseexefiles%) do (if not exist %SystemRoot%\system32\%old_user%\%%i.exe goto cantundo)
  467. for %%i in (%stampinusedllfiles%) do (if not exist %SystemRoot%\system32\%old_user%\%%i.dll goto cantundo)
  468. %ynccmd% "yn" "Press 'y' to %action% the Shell Preview for Windows NT 3.51"
  469. if errorlevel 1 goto end
  470. echo.
  471.  
  472. rem
  473. rem ************* Unversion stamp exes
  474. rem
  475.  
  476. for %%i in (%stampexefiles%) do (if exist %SystemRoot%\system32\%%i.exe %imagecfg351cmd% %SystemRoot%\system32\%%i.exe >nul)
  477. for %%i in (%stampdllfiles%) do %imagecfg351cmd% %SystemRoot%\system32\%%i.dll >nul
  478.  
  479. rem Restore progman as the default shell.
  480. %setshellcmd% progman.exe
  481.  
  482. rem Restore the original NT 3.51 files
  483. for %%i in (%userexefiles%) do (%moveboot% %SystemRoot%\system32\%old_user%\%%i.exe %SystemRoot%\system32\%%i.exe)
  484. for %%i in (%userdllfiles%) do (%moveboot% %SystemRoot%\system32\%old_user%\%%i.dll %SystemRoot%\system32\%%i.dll)
  485. for %%i in (%stampinuseexefiles%) do (%moveboot% %SystemRoot%\system32\%old_user%\%%i.exe %SystemRoot%\system32\%%i.exe)
  486. for %%i in (%stampinusedllfiles%) do (%moveboot% %SystemRoot%\system32\%old_user%\%%i.dll %SystemRoot%\system32\%%i.dll)
  487. %delcmd% /q /s %SystemRoot%\system32\viewers\*.*
  488. %rmdircmd% /q /s %SystemRoot%\system32\viewers
  489.  
  490. rem
  491. rem ************* Remove newly added associations
  492. rem
  493. echo.
  494. echo Restoring original NT 3.51 registry settings.  Depending on the speed of
  495. echo your machine, this could take one or two minutes...
  496. echo.
  497. %rmassoccmd% "*"
  498. %rmassoccmd% .386
  499. %rmassoccmd% .ani
  500. %rmassoccmd% .bat
  501. %rmassoccmd% .bfc
  502. %rmassoccmd% .bmp
  503. %rmassoccmd% .cmd
  504. %rmassoccmd% .com
  505. %rmassoccmd% .cpl
  506. %rmassoccmd% .cur
  507. %rmassoccmd% .dll
  508. %rmassoccmd% .drv
  509. %rmassoccmd% .exe
  510. %rmassoccmd% .fnd
  511. %rmassoccmd% .fon
  512. %rmassoccmd% .grp
  513. %rmassoccmd% .hlp
  514. %rmassoccmd% .ico
  515. %rmassoccmd% .inf
  516. %rmassoccmd% .ini
  517. %rmassoccmd% .lnk
  518. %rmassoccmd% .pif
  519. %rmassoccmd% .reg
  520. %rmassoccmd% .rtf
  521. %rmassoccmd% .scr
  522. %rmassoccmd% .shb
  523. %rmassoccmd% .shs
  524. %rmassoccmd% .sys
  525. %rmassoccmd% .ttf
  526. %rmassoccmd% .txt
  527. %rmassoccmd% .vxd
  528. %rmassoccmd% .wav
  529. %rmassoccmd% anifile
  530. %rmassoccmd% AudioCD
  531. %rmassoccmd% batfile
  532. %rmassoccmd% Briefcase
  533. %rmassoccmd% cmdfile
  534. %rmassoccmd% comfile
  535. %rmassoccmd% cplfile
  536. %rmassoccmd% curfile
  537. %rmassoccmd% Directory
  538. %rmassoccmd% dllfile
  539. %rmassoccmd% DocShortcut
  540. %rmassoccmd% Drive
  541. %rmassoccmd% drvfile
  542. %rmassoccmd% exefile
  543. %rmassoccmd% fndfile
  544. %rmassoccmd% Folder
  545. %rmassoccmd% fonfile
  546. %rmassoccmd% hlpfile
  547. %rmassoccmd% icofile
  548. %rmassoccmd% inffile
  549. %rmassoccmd% inifile
  550. %rmassoccmd% lnkfile
  551. %rmassoccmd% MSProgramGroup
  552. %rmassoccmd% Network
  553. %rmassoccmd% piffile
  554. %rmassoccmd% QuickView
  555. %rmassoccmd% regfile
  556. %rmassoccmd% ShellScrap
  557. %rmassoccmd% scrfile
  558. %rmassoccmd% sysfile
  559. %rmassoccmd% ttffile
  560. %rmassoccmd% txtfile
  561. %rmassoccmd% vxdfile
  562.  
  563. rem Add back default associations
  564. %restassoccmd%
  565.  
  566. echo.
  567. goto needreboot
  568.  
  569. :cantundo
  570. echo   The files required to perform an uninstall of the Shell Preview
  571. echo   could not be found in (%systemroot%\system32\%old_user%).
  572. echo   This may be because the Shell Preview has never been installed
  573. echo   on this system, or because the Shell Preview has already been
  574. echo   uninstalled, or because these files have deleted by some other
  575. echo   means.
  576. echo.
  577. goto end
  578.  
  579. rem
  580. rem ************ Error condition
  581. rem
  582. :renamerr
  583. echo.
  584. echo   Some files which had to be deleted could not be deleted.  This probably
  585. echo   means that you have not rebooted since you last ran %0, and those
  586. echo   files are still in use.  Reboot and try again.
  587. echo.
  588. goto end
  589.  
  590.  
  591. :end
  592. ENDLOCAL
  593. echo.
  594.