/* Install VAC 4.03 for Windows Icons */ /* This requires Regina Rexx and the W32Funcs and RexxUtil packages */ vacdir = 'D:\IBMCPPW40' /* directory where VAC is installed */ netqdir = 'D:\IMNnq_NT' /* directory where netQuestion is installed */ rtdir = 'd:\Programs\IBM\RunTime' /* directory where the runtime is installed */ edmacDir= 'd:\editor_macros' /* directory where editor macros are stored */ call rxfuncadd 'sysloadfuncs','rexxutil','sysloadfuncs' call sysloadfuncs call rxfuncadd 'w32loadfuncs','w32util','w32loadfuncs' call w32loadfuncs sysdir = sysSystemDirectory() /* directory where windows files are installed, e.g. C:\WinNT\System32 */ /*************************************************************************** The location of the sysdir can be overridden here if necessary. Usually that should not be necessary. This location is where notepad.exe and write.exe are located sysdir = 'C:\WINNT\SYSTEM32' sysdir = 'C:\WINDOWS\SYSTEM32' --- Windows XP, VISTA **************************************************************************/ say '' say 'Installation directories' say '--------------------------------------------------' say 'Windows system ' sysdir say 'VAC files ' vacdir say 'NetQuestion ' netqdir say 'Runtime files ' rtdir say 'Editor macros ' edmacDir say '' say 'Installing icons' rc = w32menuadditem('all','VisualAge C++ Professional 4.03','LxPM Editor',vacdir||'\BIN\SETENV.BAT',vacdir||'\BIN',vacdir||'\BIN\CPPWLX40.EXE -c',0,vacdir||'\BIN\CPPWLX40.EXE') rc = w32menuadditem('all','VisualAge C++ Professional 4.03','IDE',vacdir||'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\bin\VACide.exe -c',0,vacdir||'\BIN\DTWIN.ICO') rc = w32menuadditem('all','VisualAge C++ Professional 4.03','Resource Editor',vacdir||'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\bin\IRE.exe',0,vacdir||'\BIN\IRE.EXE') rc = w32menuadditem('all','VisualAge C++ Professional 4.03','Command Line',vacdir'\bin\setenv.bat',vacdir||'\BIN','cmd.exe',0,sysdir||'\cmd.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03','Help Home Page',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\bin\vachlp40.exe Open index.htm',0,vacdir||'\BIN\vacHlpHome.ico') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Tech Preview','IDE - Tech Preview',vacdir||'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\bin\VACide.exe -TECHPREVIEW',0,vacdir||'\BIN\DTWIN.ICO') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Tech Preview','Readme',sysdir||'\notepad.exe',sysdir,vacdir||'\TechPrev\readme.pa',0,sysdir||'\notepad.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\IPF Compiler Docs','IPC Programmers Guide and Reference',vacdir'\bin\setenv.bat',vacdir||'\BIN', vacdir||'\BIN\iview.exe ipfwref',0,vacdir||'\BIN\iview.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\IPF Compiler Docs','IPC Users Guide',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'bin\iview.exe ipfwug',0,vacdir||'\BIN\iview.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','DDE Spy',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\ddespy.exe',0,vacdir||'\MSTools\bin\ddeSpy.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Spy',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\spy.exe',0,vacdir||'\MSTools\bin\Spy.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','ZoomIn',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\zoomin.exe',0,vacdir||'\MSTools\bin\zoomin.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Win Diff',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\winDiff.exe',0,vacdir||'\MSTools\bin\WinDiff.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','VidCap',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\VidCap32.exe',0,vacdir||'\MSTools\bin\VidCap32.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Help Workshop',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\hcw.exe',0,vacdir||'\MSTools\bin\HCW.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','CPU Stress',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\WinNT\cpustres.exe',0,vacdir||'\MSTools\bin\WinNT\cpuStres.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Process Viewer',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\WinNT\pview.exe',0,vacdir||'\MSTools\bin\WinNT\Pview.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Hot SPot Editor',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\WinNT\shed.exe',0,vacdir||'\MSTools\bin\WinNT\shed.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','TAPI Browser',vacdir'\bin\setenv.bat',vacdir||'\BIN',vacdir||'\MSTools\bin\WinNT\TB20.exe',0,vacdir||'\MSTools\bin\WinNT\TB20.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Resource Compiler Help',vacdir||'\MSTools\bin\rc.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Message Compiler Help',vacdir||'\MSTools\bin\mc.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\Win32 SDK','Resource Script Language Help',vacdir||'\HELP\rsl.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','Enhanced Meta File Help',vacdir||'\MSTools\old_sdk_docs\filefrmt\enhmeta.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','SDK Reference (1995)',vacdir||'\MSTools\old_sdk_docs\hlp\win32.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','POSIX Conformance',vacdir||'\MSTools\old_sdk_docs\misc\pcd.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','Debug 16Bit Apps',vacdir||'\MSTools\old_sdk_docs\misc\vdmdbg.hlp',sysdir) rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','Generic Thunk Overview',sysdir||'\notepad.exe',sysdir,vacdir||'\MSTools\old_sdk_docs\misc\genthunk.txt',0,sysdir||'\notepad.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','Writing Great Applications',sysdir||'\write.exe',sysdir,vacdir||'\MSTools\old_sdk_docs\misc\great.wri',0,sysdir||'\write.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','IP Multicasting',sysdir||'\notepad.exe',sysdir,vacdir||'\MSTools\old_sdk_docs\misc\multcast.txt',0,sysdir||'\notepad.exe') rc = w32menuadditem('all','VisualAge C++ Professional 4.03\OLD Win32SDK Docs','Windows Sockets for Appletalk',sysdir||'\write.exe',sysdir,vacdir||'\MSTools\old_sdk_docs\misc\sfmwshat.wri',0,sysdir||'\write.exe') say 'Installing Registry settings' lmkey = w32RegOpenKey('LOCAL_MACHINE') if rc=1 then do;es='Local_Machine';signal oops;end; lmsoftkey = w32RegOpenKey(lmkey,'Software') if rc=1 then do;es='Software';signal oops;end; ibm = w32RegCreateKey(lmsoftkey,'IBM') if rc=1 then do;es='IBM';signal oopsCreate;end; /* ----- NetQuestion ---- */ netq = w32RegCreateKey(ibm,'NetQuestion') if rc=1 then do;es='NetQuestion';signal oopsCreate;end; netq_cv = w32RegCreateKey(netq,'CurrentVersion') if rc=1 then do;es='NetQuestion - CurrentVersion';signal oopsCreate;end; netq_dbcs = w32RegCreateKey(netq_cv,'DBCS') if rc=1 then do;es='NetQuestion - CurrentVersion - DBCS';signal oopsCreate;end; rc = w32RegSetValue(netq_dbcs,'Installed?','REG_DWORD',0) if rc=1 then do;es='DBCS - Installed?';signal oopsData;end; rc = w32RegSetValue(netq_dbcs,'Version','REG_DWORD',0) if rc=1 then do;es='DBCS - Version?';signal oopsData;end; call w32RegFlushKey netq_dbcs call w32RegCloseKey netq_dbcs netq_id = w32RegCreateKey(netq_cv,'Installation Directory') if rc=1 then do;es='NetQuestion - CurrentVersion - Installation Directory';signal oopsCreate;end; if netq_id=1 then signal oopsCreate rc = w32RegSetValue(netq_id,'Directory','REG_SZ',netqdir) if rc=1 then do;es='Installation Directory - Directory='||netqdir;signal oopsData;end; call w32RegFlushKey netq_id call w32RegCloseKey netq_id netq_xx = w32RegCreateKey(netq_cv,'Internet Connection Server Lite') if rc=1 then do;es='Internet Connection Server Lite';signal oopsCreate;end; rc = w32RegSetValue(netq_xx,'Installed?','REG_DWORD',1) if rc=1 then do;es='Internet Connection Server Lite - installed?';signal oopsData;end; rc = w32RegSetValue(netq_xx,'Version','REG_DWORD',20000002) if rc=1 then do;es='Internet Connection Server Lite - version';signal oopsData;end; call w32RegFlushKey netq_xx call w32RegCloseKey netq_xx netq_vn = w32RegCreateKey(netq_cv,'VersionNumber') if netq_vn=1 then signal oopsCreate rc = w32RegSetValue(netq_vn,'Version','REG_DWORD',10203001) if rc=1 then do;es='VersionNumber - version';signal oopsData;end; call w32RegFlushKey netq_vn call w32RegCloseKey netq_vn call w32RegFlushKey netq_cv call w32RegCloseKey netq_cv call w32RegFlushKey netq call w32RegCloseKey netq /* --- Runtime --- */ rt = w32RegCreateKey(ibm,'RunTime') if rt=1 then do;es='RunTime';signal oopsCreate;end rt1 = w32RegCreateKey(rt,'1.00') if rt=1 then do;es='RunTime - 1.00';signal oopsCreate;end rtx = w32RegCreateKey(rt1,'Install') if rt=1 then do;es='RunTime - 1.00 - Install';signal oopsCreate;end rc = w32RegSetValue(rtx,'Directory','REG_SZ',rtdir) if rc=1 then do;es='RunTime - Install dir='||rtdir;signal oopsData;end; rc = w32RegSetValue(rtx,'Level','REG_SZ',"2.64") if rc=1 then do;es='RunTime - Install Level';signal oopsData;end; rc = w32RegSetValue(rtx,'Size','REG_SZ',"23640589") if rc=1 then do;es='RunTime - Install Size';signal oopsData;end; rc = w32RegSetValue(rtx,'RefCount','REG_SZ',"1") if rc=1 then do;es='RunTime - Install RefCount';signal oopsData;end; call w32RegFlushKey rtx call w32RegCloseKey rtx call w32RegFlushKey rt1 call w32RegCloseKey rt1 call w32RegFlushKey rt call w32RegCloseKey rt /* ---- VAC stuff ---- */ vac = w32RegCreateKey(ibm,'VisualAge C++') if vac=1 then do;es='VAC';signal oopsCreate;end vac4 = w32RegCreateKey(vac,'4.0') if vac4=1 then do;es='VAC-4.0';signal oopsCreate;end vacc= w32RegCreateKey(vac4,'COMMON') if vacc=1 then do;es='VAC-4.0-COMMON';signal oopsCreate;end rc = w32RegSetValue(vacc,'VACPPMAIN','REG_SZ',vacdir) /* vacdir = var holding directory where vac installed */ if rc=1 then do;es='VAC-4.0-COMMON-VACPPMAIN';signal oopsData;end; rc = w32RegSetValue(vacc,'VACPPWORK','REG_SZ',vacdir) if rc=1 then do;es='VAC-4.0-COMMON-VACPPWORK';signal oopsData;end; call w32RegFlushKey vacc call w32RegCloseKey vacc vach= w32RegCreateKey(vac4,'HLP') if vach=1 then do;es='VAC-4.0-HLP';signal oopsCreate;end rc = w32RegSetValue(vach,'HELP','REG_SZ',vacdir||"\help") if rc=1 then do;es='VAC-4.0-HLP value HELP='||vacdir||"\help";signal oopsData;end; rc = w32RegSetValue(vach,'HTML_DOC_ROOT','REG_SZ',vacdir||"\doc") if rc=1 then do;es='VAC-4.0-HLP value HTML_DOC_ROOT='||vacdir||"\doc";signal oopsData;end; rc = w32RegSetValue(vach,'HTML_HOSTNAME','REG_SZ',"localhost:49213") if rc=1 then do;es='VAC-4.0-HLP value HTML_HOSTNAME=localhost:49213';signal oopsData;end; rc = w32RegSetValue(vach,'SAMPLE_ROOT','REG_SZ',vacdir||"\samples") if rc=1 then do;es='VAC-4.0-HLP value SAMPLE_ROOT='||vacdir||"\samples";signal oopsData;end; rc = w32RegSetValue(vach,'NETQ_DAEMON','REG_SZ',"1") if rc=1 then do;es='VAC-4.0-HLP value NETQ_DAEMON=1';signal oopsData;end; rc = w32RegSetValue(vach,'ICS_DAEMON','REG_SZ',"1") if rc=1 then do;es='VAC-4.0-HLP value ICS_DAEMON=1';signal oopsData;end; rc = w32RegSetValue(vach,'ZIPPED_WEB','REG_SZ',"1") if rc=1 then do;es='VAC-4.0-HLP value ZIPPED_WEB=1';signal oopsData;end; rc = w32RegSetValue(vach,'HTML_DBCSNETQ','REG_SZ',"NO") if rc=1 then do;es='VAC-4.0-HLP value HTML_DBCSNETQ=NO';signal oopsData;end; call w32RegFlushKey vach call w32RegCloseKey vach vaci= w32RegCreateKey(vac4,'INSTALL') if vaci=1 then do;es='VAC-4.0-INSTALL';signal oopsCreate;end rc = w32RegSetValue(vaci,'NetQ','REG_SZ',"Y") if rc=1 then do;es='VAC-4.0-INSTALL value NETQ=Y';signal oopsData;end; rc = w32RegSetValue(vaci,'NetQLocation','REG_SZ',netqdir) /* netqdir = var set to directory where NetQuestion is installed */ if rc=1 then do;es='VAC-4.0-INSTALL value NetQLocation='||netqdir;signal oopsData;end; rc = w32RegSetValue(vaci,'Directory','REG_SZ',vacdir) if rc=1 then do;es='VAC-4.0-INSTALL value =Directory'||vacdir;signal oopsData;end; rc = w32RegSetValue(vaci,'Release Level','REG_SZ',"3") if rc=1 then do;es='VAC-4.0-INSTALL value Release Level=3';signal oopsData;end; rc = w32RegSetValue(vaci,'Folder','REG_SZ','VisualAge C++ Professional 4.03') if rc=1 then do;es='VAC-4.0-INSTALL value Folder=VisualAge C++ Professional 4.03';signal oopsData;end; rc = w32RegSetValue(vaci,'Product Type','REG_SZ','Professional') if rc=1 then do;es='VAC-4.0-INSTALL value Product Type=Professional';signal oopsData;end; rc = w32RegSetValue(vaci,'Fixpak','REG_SZ',"3") if rc=1 then do;es='VAC-4.0-INSTALL value Fixpak=3';signal oopsData;end; vacic = w32RegCreateKey(vaci,'Components') if vacic=1 then do;es='VAC-4.0-INSTALL-Components';signal oopsCreate;end rc = w32RegSetValue(vacic,'IDE','REG_DWORD',29240701) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: IDE=29240701';signal oopsData;end; rc = w32RegSetValue(vacic,'Compiler and Runtime','REG_DWORD',49666922) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Compiler and Runtime=49666922';signal oopsData;end; rc = w32RegSetValue(vacic,'Uninstall','REG_DWORD',797919) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Uninstall=797919';signal oopsData;end; rc = w32RegSetValue(vacic,'Root','REG_DWORD',87464) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Root=87464';signal oopsData;end; rc = w32RegSetValue(vacic,'HTML Help Files','REG_DWORD',73292660) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: HTML Help Files=73292660';signal oopsData;end; rc = w32RegSetValue(vacic,'Visual Builder','REG_DWORD',15776487) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Visual Builder=15776487';signal oopsData;end; rc = w32RegSetValue(vacic,'Microsoft Win32 Toolkit','REG_DWORD',9164834) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Microsoft Win32 Toolkit=9164834';signal oopsData;end; rc = w32RegSetValue(vacic,'IBM Open Class (IOC) Libraries','REG_DWORD',36613952) if rc=1 then do;es='VAC-4.0-INSTALL-Components value IBM Open Class (IOC) Libraries=36613952';signal oopsData;end; rc = w32RegSetValue(vacic,'Samples','REG_DWORD',39248702) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Samples=39248702';signal oopsData;end; rc = w32RegSetValue(vacic,'Data Access Builder','REG_DWORD',7656904) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Data Access Builder=7656904';signal oopsData;end; rc = w32RegSetValue(vacic,'Microsoft Win32 Toolkit HdrsLibs','REG_DWORD',75472993) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Microsoft Win32 Toolkit HdrsLibs=75472993';signal oopsData;end; rc = w32RegSetValue(vacic,'IDE-rw','REG_DWORD',143157) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: IDE-rw=143157';signal oopsData;end; rc = w32RegSetValue(vacic,'Search Engine-rw','REG_DWORD',1342324) if rc=1 then do;es='VAC-4.0-INSTALL-Components value: Search Engine-rw=1342324';signal oopsData;end; call w32RegFlushKey vacic call w32RegCloseKey vacic call w32RegFlushKey vaci call w32RegCloseKey vaci vack = w32RegCreateKey(vac4,'KERNEL') if vack=1 then do;es='VAC-4.0-KERNEL';signal oopsCreate;end rc = w32RegSetValue(vack,'SYSTEM_ICE','REG_SZ',vacdir||"\etc\system.ice") if rc=1 then do;es='VAC-4.0-KERNEL value: SYSTEM_ICE='||vacdir||"\etc\system.ice";signal oopsData;end; rc = w32RegSetValue(vack,'USER_ICE','REG_SZ',"") if rc=1 then do;es='VAC-4.0-KERNEL value: USER_ICE=""';signal oopsData;end; call w32RegFlushKey vack call w32RegCloseKey vack call w32RegFlushKey vac4 call w32RegCloseKey vac4 call w32RegFlushKey vac call w32RegCloseKey vac call w32RegFlushKey ibm call w32RegCloseKey ibm /****************** Environment Settings ****************/ say 'Installing environment variables' lmsys = w32RegOpenKey(lmkey,'System') if rc=1 then do;es='system';signal oops;end; ccs = w32RegOpenKey(lmsys,'CurrentControlSet') if rc=1 then do;es='CurrentControlSet';signal oops;end; ccs1 = w32RegOpenKey(ccs,'Control') if rc=1 then do;es='Control';signal oops;end; sm = w32RegOpenKey(ccs1,'Session Manager') if rc=1 then do;es='Session Manager';signal oops;end; smev = w32RegOpenKey(sm,'Environment') if rc=1 then do;es='Session Manager - Environment';signal oops;end; /* get existing path */ savePath = strip(w32regqueryvalue(smev,"Path")) rtDirUC = translate(rtDir) savePathUC = translate(savePath) alreadyThereFlag = pos(rtDirUC||";",savePathUC) alreadyThereFlag = alreadyThereFlag + pos(";"||rtDirUC,savePathUC) /* add runtime directory to the path, if not already in path */ if alreadyThereFlag = 0 then do rc = w32RegSetValue(smev,'PATH','REG_SZ',savePath||";"||rtDirUC) if rc=1 then do;es='Session Manager - Environment value: PATH';signal oopsData;end; end rc = w32RegSetValue(smev,'VACPPMAIN','REG_SZ',vacdir) if rc=1 then do;es='Session Manager - Environment value: VACCPMAIN='||vacdir;signal oopsData;end; rc = w32RegSetValue(smev,'VACPPWORK','REG_SZ',vacdir) if rc=1 then do;es='Session Manager - Environment value: VACPPWORK='||vacdir;signal oopsData;end; rc = w32RegSetValue(smev,'CPPLPATH4','REG_SZ',edmacDir) if rc=1 then do;es='Session Manager - Environment value: CPPLPATH4='||edmacDir;signal oopsData;end; rc = w32RegSetValue(smev,'IPF_PATH32','REG_SZ',rtDir||'\ipf') if rc=1 then do;es='Session Manager - Environment value: IPF_PATH32';signal oopsData;end; rc = w32RegSetValue(smev,'LOCPATH','REG_SZ',rtDir||'\LOCALE') if rc=1 then do;es='Session Manager - Environment value: LOCPATH';signal oopsData;end; rc = w32RegSetValue(smev,'NLSPATH','REG_SZ',rtDir||'\%N') if rc=1 then do;es='Session Manager - Environment value: NLSPATH';signal oopsData;end; rc = w32RegSetValue(smev,'IMNINST','REG_SZ','help') if rc=1 then do;es='Session Manager - Environment value: NLSPATH';signal oopsData;end; rc = w32RegSetValue(smev,'IMNINSTSRV','REG_SZ',netqdir) if rc=1 then do;es='Session Manager - Environment value: NLSPATH';signal oopsData;end; call w32RegFlushKey smev call w32RegCloseKey smev call w32RegFlushKey sm call w32RegCloseKey sm call w32RegFlushKey ccs1 call w32RegCloseKey ccs1 call w32RegFlushKey ccs call w32RegCloseKey ccs call w32RegFlushKey lmsys call w32RegCloseKey lmsys say 'Installing Help System Startup Registry settings' ms = w32RegCreateKey(lmsoftkey,'Microsoft') if rc=1 then do;es='Microsoft';signal oopsCreate;end; ms = w32RegCreateKey(lmsoftkey,'Microsoft') if rc=1 then do;es='Microsoft';signal oopsCreate;end; win = w32RegCreateKey(ms,'Windows') if rc=1 then do;es='Microsoft - Windows';signal oopsCreate;end; cv = w32RegCreateKey(win,'CurrentVersion') if rc=1 then do;es='Microsoft - Windows - CurrentVersion';signal oopsCreate;end; rn = w32RegCreateKey(cv,'Run') if rc=1 then do;es='Microsoft - Windows - CurrentVersion - Run';signal oopsCreate;end; netqString = netqdir||'\nqdetach.exe '||netqdir||'\httpdl.exe -r '||netqdir||'\httpd.cnf' rc = w32RegSetValue(rn,'NetQuestion Autostart','REG_SZ',netqstring) if rc=1 then do;es='Run - netQuesion autostart value: '||netqstring;signal oopsData;end; call w32RegFlushKey cv call w32RegCloseKey cv call w32RegFlushKey win call w32RegCloseKey win call w32RegFlushKey ms call w32RegCloseKey ms call w32RegFlushKey lmsoftkey call w32RegCloseKey lmsoftkey call w32RegFlushKey lmkey call w32RegCloseKey lmkey /******* Make setenv.bat file with variables *****/ say 'Updating setenv.bat' say '' fname1 = vacdir||'\bin\setenv1.bat' fname = vacdir||'\bin\setenv.bat' ' @echo del 'fname1 call lineout fname1,'@ECHO' call lineout fname1,'SET VACPPMAIN='||vacdir call lineout fname1,'SET RUNTIME='||rtdir call lineout /* close the file */ ' @echo copy ' fname1 '+ setenv.txt' fname say '' say 'Done' return oops: say '' say 'Error - could not open key' say es return oopsCreate: say '' say 'Error - could not create key' say es return oopsData: say '' say 'Error - could not create data' say es return oopsDelete: say '' say 'Error - could not delete registry key' say es return