home *** CD-ROM | disk | FTP | other *** search
/ ProfitPress Mega CDROM2 …eeware (MSDOS)(1992)(Eng) / ProfitPress-MegaCDROM2.B6I / WINDOWS / DESKTOP / CPOSTUTL.ZIP / CMDPOST.CPM next >
Encoding:
Text File  |  1990-06-18  |  19.8 KB  |  565 lines

  1. ; Define addon menu   USER menus should go into CMDUSER.CPM...by convention...
  2.  
  3. #NextFile CMDUSER.CPM
  4.  
  5. ; CmdPost menu      initialization code
  6.  
  7.     ; Initialize a few variables here.  You may dink the CP names below
  8.     ; Just keep the two names different.
  9.       
  10.     a=Version()
  11.         CP="CmdPost"
  12.  
  13.         ; Lines below good only for licensed versions.
  14.  
  15.     TitleFirst="[Omega]"   ; Name of your primary CP Window
  16.     TitleRest= "<Omega>"   ; Name of your other CP Windows
  17.         b=strsub(";",1,IsLicensed())
  18.         execute %b% TitleFirst="Command Post %a% - Eval Only"
  19.         execute %b% TitleRest ="Command Post %a% # Eval Only"
  20.     crlf=strcat(num2char(13),num2char(10))
  21.     tab=num2char(9)
  22.  
  23. ; Setting up the View menu item here.
  24.  
  25.         ViewShortLong=iniread(CP,"ViewShortLong","SHORT")
  26.  
  27.         MenuChange("ViewShort", (ViewShortLong=="SHORT")*@CHECK)
  28.         MenuChange("ViewLong",  (ViewShortLong=="LONG")*@CHECK)
  29.         
  30.         ViewBy=iniread(CP,"ViewBy","NAME")
  31.         MenuChange("ViewByName", (ViewBy=="NAME")*@CHECK)
  32.         MenuChange("ViewByDate", (ViewBy=="DATE")*@CHECK)
  33.         MenuChange("ViewBySize", (ViewBy=="SIZE")*@CHECK)
  34.         MenuChange("ViewByKind", (ViewBy=="KIND")*@CHECK)
  35.         MenuChange("ViewUnsorted",(ViewBy=="UNSORTED")*@CHECK)
  36.  
  37.         ViewWhat=iniread(CP,"ViewWhat","ALL")
  38.         MenuChange("ViewAll",      (ViewWhat=="ALL")     *@CHECK)
  39.         MenuChange("ViewPartial",  (ViewWhat=="PARTIAL") *@CHECK)
  40.         MenuChange("ViewPrograms", (ViewWhat=="PROGRAMS")*@CHECK)
  41.  
  42.         a=iniread(CP,"Partial","*.*")
  43.         SD3=strcat(strsub("*.*",1,IsMenuChecked("ViewAll")*3),strsub(a,1,IsMenuChecked("ViewPartial")*strlen(a)),strsub("*.EXE *.COM *.BAT *.PIF",1,IsMenuChecked("ViewPrograms")*23))
  44.         SetDisplay(ViewShortLong,ViewBy,SD3)
  45.         drop(a,ViewShortLong,ViewBy,ViewWhat,SD3)
  46.  
  47. ; Setup Print menu item...Kill it if no text printer
  48.  
  49.         MenuChange("FilePrint", (IniRead(CP,"TextPrinter","")=="NONE") *@DISABLE)
  50.  
  51. ; Setup Screen Blank Time.  Get time from win.ini
  52.         
  53.         run("cp_blnk.exe",iniread(CP,"BlankTime",5))
  54.                              ;    <0....blanking with no clock
  55.                              ;     0... no blanking, but have a clock
  56.                              ;    >0... blanking and clock
  57.                              ;    multiple startups ignored.
  58.  
  59.     ; This obscure code just names the two Command Post windows.
  60.     ; This code also is depended upon by the Main.CommandPost item below
  61.  
  62.         IfOnlyMe=strsub(";",1,IsRunning()==@TRUE) ;Funny reverse logic...
  63.  
  64.         ErrorMode(@OFF)
  65.         Execute %IfOnlyMe%    WinTitle("",TitleFirst);Title of first 'Post
  66.         Execute %IfOnlyMe%    WinPlace(0,0,1000,@ABOVEICONS,"")
  67.         Execute %IfOnlyMe%    Exit
  68.  
  69.     TitleTemp=TitleRest
  70.         a=WinActivate(TitleFirst)
  71.     a=strsub(";",1,a)
  72.     Execute %a% TitleTemp=TitleFirst
  73.     WinTitle("",TitleTemp);Title of this 'Post
  74.     WinPlace(0,0,500,@ABOVEICONS,TitleFirst)
  75.     WinPlace(500,0,1000,@ABOVEICONS,TitleRest)
  76.         ErrorMode(@CANCEL)
  77.  
  78.     ;Do not Drop TitleFirst,TitleRest,crlf,tab,CP as these are used
  79.     ;in following menu items.
  80.  
  81.     Drop(a,TitleTemp,IfOnlyMe)
  82.  
  83. ; And the menu starts.  Notice that we are emulating the MS-DOS Window
  84.  
  85. &File
  86.  &Run...
  87.         r=FileItemize("")
  88.         r=strcat(strtrim(r)," ")
  89.         i=strindex(r," ",0,@FWDSCAN)
  90.         r=strsub(r,1,i-1)
  91.         a=strsub(";",1,IsKeyDown(@SHIFT))
  92.         execute %a% r=askline("Run","Enter file to run",r)
  93.         r=strcat(strtrim(r)," ")
  94.         i=strindex(r," ",0,@FWDSCAN)
  95.         run(strsub(r,1,i-1),strtrim(strsub(r,i,strlen(r)-i+1)))
  96.         drop(a,r,i)
  97.  
  98.  &Load...
  99.         l=FileItemize("")
  100.         l=strcat(strtrim(l)," ")
  101.         i=strindex(l," ",0,@FWDSCAN)
  102.         l=strsub(l,1,i-1)
  103.         a=strsub(";",1,IsKeyDown(@SHIFT))
  104.         execute %a% l=askline("Load","Enter file to load",l)
  105.         l=strcat(strtrim(l)," ")
  106.         i=strindex(l," ",0,@FWDSCAN)
  107.         runicon(strsub(l,1,i-1),strtrim(strsub(l,i,strlen(l)-i+1)))
  108.         drop(a,i,l)
  109.  
  110.  &Copy...
  111.         r=OtherDir()
  112.         a=strsub(";",1,IsKeyDown(@SHIFT))
  113.         s=strcat(DirItemize("")," ",FileItemize(""))
  114.         IfNoFiles=(strsub(";",1,strlen(s)>1))
  115.         execute %IfNoFiles% s=askline("Copy","Enter file(s) to copy","")
  116.         execute %IfNoFiles% s=strcat(strtrim(s)," ")
  117.         drop(IfNoFiles)
  118.         terminate(strlen(s)==1,"Copy Error","No files selected")
  119.         execute %a% r=askline("Copy",StrCat(s,crlf,crlf,"to"),r)
  120.         terminate(r=="","Copy Error","Cannot copy to null file name")        
  121.         FileCopy(s,r,@TRUE)
  122.         OtherUpdate()
  123.         q=strindex(r,"\",0,@FWDSCAN) ; Directory Name in there??
  124.         q=strsub(";",1,q!=0)
  125.         execute %q% SetDisplay("","","") 
  126.         drop(a,r,s,q)
  127.  
  128.  &Move...
  129.         r=OtherDir()
  130.         a=strsub(";",1,IsKeyDown(@SHIFT))
  131.         s=strcat(DirItemize("")," ",FileItemize(""))
  132.         IfNoFiles=(strsub(";",1,strlen(s)>1))
  133.         execute %IfNoFiles% s=askline("Move","Enter file(s) to move","")
  134.         execute %IfNoFiles% s=strcat(strtrim(s)," ")
  135.         drop(IfNoFiles)
  136.         terminate(strlen(s)==1,"Move Error","No files selected")
  137.         execute %a% r=askline("Move",StrCat(s,crlf,crlf,"to"),r)
  138.         terminate(r=="","Move Error","Cannot move to null file name")
  139.         FileMove(s,r,@TRUE)
  140.         SetDisplay("","","")
  141.         OtherUpdate()
  142.         drop(a,r,s)
  143.  
  144.  &Delete...
  145.         f=FileItemize("")
  146.         g=DirItemize("")
  147.         c=strsub( ";", 1, (strlen(g)==0) )
  148.         b=0
  149.         execute %c% b=AskYesNo("!!! Warning !!! ",strcat("Delete files from these directories too?",crlf,g))
  150.         c=strsub(";",1,abs(b-1))
  151.         execute %c% f=strcat(g," ",f)
  152.         IfNoFiles=(strsub(";",1,strlen(f)>0))
  153.         execute %IfNoFiles% f=askline("Delete","Enter file(s) to delete","")
  154.         drop(IfNoFiles)
  155.         terminate(strlen(f)==0,"DELETE","No files specified")
  156.         terminate(askyesno("Delete",f)==0,"Delete","File(s) not deleted")
  157.         FileDelete(f)
  158.         SetDisplay("","","")
  159.         OtherUpdate()  ; Well if the "other" CmdPost Window points to the
  160.                     ; same directory, it *IS* nice...
  161.         drop(f,g,a)
  162.  
  163.  &Print...
  164.         s=FileItemize("")
  165.         IfNoFiles=(strsub(";",1,strlen(s)>0))
  166.         execute %IfNoFiles% s=askline("Print","Enter file(s) to print","")
  167.         execute %IfNoFiles% s=strcat(strtrim(s)," ")
  168.         drop(IfNoFiles)
  169.         terminate(strlen(s)==0,"Print Error","No files selected")
  170.         Printer=iniread("Windows","device","")
  171.     i=StrIndex(Printer,",",1,@FWDSCAN)
  172.         PrinterName=StrSub(Printer,1,I-1)
  173.     i=StrIndex(Printer,",",StrLen(Printer),@BACKSCAN)
  174.     Port=StrSub(Printer,I+1,(StrLen(Printer)-(I+1)))
  175.     IfPostScript=strsub(";",1,StriCmp(PrinterName,"PostScript Printer")<>0)
  176.     q=strcat(s,CRLF,CRLF,"Using ",PrinterName," on ",Port)
  177.         terminate(askyesno("Print",q)==0,"","")
  178.         Execute %IfPostScript% run("command.com",strcat("/c POST L 15 T 756 B 36 <",s," >",Port))
  179.         Execute %IfPostScript% drop(q,s,i,IfPostScript,Printer,PrinterName,Port)
  180.         Execute %IfPostScript% exit
  181.         FileCopy(s,Port,@FALSE)
  182.         drop(q,s,i,IfPostScript,Printer,PrinterName,Port)
  183.  
  184.  Re&name...
  185.         r=CurrentFile()
  186.         a=strsub(";",1,IsKeyDown(@SHIFT))
  187.         s=strcat(DirItemize("")," ",FileItemize(""))
  188.         IfNoFiles=(strsub(";",1,strlen(s)>1))
  189.         execute %IfNoFiles% s=askline("Rename","Enter file(s) to rename","")
  190.         execute %IfNoFiles% s=strcat(strtrim(s)," ")
  191.         drop(IfNoFiles)
  192.         terminate(strlen(s)==1,"Rename Error","No files selected")
  193.         execute %a% r=askline("Rename",StrCat(s,crlf,crlf,"to"),r)
  194.         terminate(r=="","Rename Error","Cannot rename to null file name")
  195.         FileRename(s,r)
  196.         SetDisplay("","","")
  197.         OtherUpdate()
  198.         drop(a,r,s)
  199.  
  200.  Bro&wse...
  201.         l=CurrentFile()
  202.         a=strsub(";",1,IsKeyDown(@SHIFT))
  203.         execute %a% l=askline("Browse","Enter file to browse",l)
  204.         RunZoom("browser.exe",l)
  205.         drop(a,l)
  206.  
  207.  _&Size of selected files
  208.         message("Total size of files",strcat(FileSize(FileItemize(""))," Bytes"))
  209.  
  210.  &Freespace on Drives   
  211.  
  212. ;        This code initially asks for your last drive
  213. ;        (It does assume you have no holes between C and the
  214. ;         last drive...)
  215. ;        and then computes disk space based on the last drive
  216.  
  217.         NextDrive="C"
  218.         crlf=strcat(num2char(13),num2char(10))
  219.         LastDrive=iniread("CmdPost","LastDrive","ASK") 
  220.         xxx=strsub(";",1,(LastDrive!="ASK"))
  221.         execute %xxx% LastDrive=AskLine("Setup Question",strcat("Enter letter of last (contiguous) disk drive",crlf,"C D E F G H ...Z"),"C")
  222.         execute %xxx% LastDrive=StrUpper(LastDrive)
  223.         execute %xxx% iniwrite("CmdPost","LastDrive",LastDrive)
  224.  
  225.         ; Always do C drive
  226.         a=DiskFree(NextDrive)/1024
  227.         TotalSize=a
  228.         DriveReport=strcat(NextDrive," = ",a,"K")
  229.         NextDrive=num2char(char2num(NextDrive)+1)
  230.         xxx=strsub(";",1,NextDrive>LastDrive)
  231.  
  232.         ; Check on D drive
  233.         execute %xxx% a=DiskFree(NextDrive)/1024
  234.         execute %xxx% TotalSize=TotalSize+a
  235.         execute %xxx% DriveReport=strcat(DriveReport,crlf,NextDrive," = ",a,"K")
  236.         execute %xxx% NextDrive=num2char(char2num(NextDrive)+1)
  237.         execute %xxx% xxx=strsub(";",1,NextDrive>LastDrive)
  238.  
  239.         ; Check on E drive
  240.         execute %xxx% a=DiskFree(NextDrive)/1024
  241.         execute %xxx% TotalSize=TotalSize+a
  242.         execute %xxx% DriveReport=strcat(DriveReport,crlf,NextDrive," = ",a,"K")
  243.         execute %xxx% NextDrive=num2char(char2num(NextDrive)+1)
  244.         execute %xxx% xxx=strsub(";",1,NextDrive>LastDrive)
  245.  
  246.         ; Check on F drive
  247.         execute %xxx% a=DiskFree(NextDrive)/1024
  248.         execute %xxx% TotalSize=TotalSize+a
  249.         execute %xxx% DriveReport=strcat(DriveReport,crlf,NextDrive," = ",a,"K")
  250.         execute %xxx% NextDrive=num2char(char2num(NextDrive)+1)
  251.         execute %xxx% xxx=strsub(";",1,NextDrive>LastDrive)
  252.  
  253.         ; Check on G drive
  254.         execute %xxx% a=DiskFree(NextDrive)/1024
  255.         execute %xxx% TotalSize=TotalSize+a
  256.         execute %xxx% DriveReport=strcat(DriveReport,crlf,NextDrive," = ",a,"K")
  257.         execute %xxx% NextDrive=num2char(char2num(NextDrive)+1)
  258.         execute %xxx% xxx=strsub(";",1,NextDrive>LastDrive)
  259.  
  260.         ; Well if you have more than G drives, just repeat the
  261.         ; Code blocks above
  262.  
  263.         Message("Total Space = %TotalSize%K",DriveReport)
  264.         Drop(xxx,TotalSize,DriveReport,NextDrive,LastDrive)
  265.  
  266.  Space on &A and size of files
  267.         message(strcat("Drive A ",DiskFree("A")),strcat("Selected Files ",FileSize(FileItemize(""))))
  268.  
  269.  Space on &B and size of files
  270.         message(strcat("Drive B ",DiskFree("B")),strcat("Selected Files ",FileSize(FileItemize(""))))
  271.  
  272.  _&Extensions...
  273.         a=strtrim(CurrentFile())
  274.         i=strindex(a,".",0,@FWDSCAN)
  275.         terminate(i==0,"Association Error","Associated files must have an extension")
  276.         b=strsub(a,i+1,strlen(a)-i)
  277.         c=iniread("extensions",b,"???.EXE ^.%b%")
  278.         d=askline("Associate","%b% files are associated with",c)
  279.         terminate(c==d,"","")
  280.         iniwrite("extensions",b,d)
  281.  
  282.  _Cl&ose Second CmdPost Window
  283.         Terminate(StrIndex(WinItemize(),TitleRest,1,@FWDSCAN)==0,"Error","No Second Cmdpost Window")
  284.         WinActivate(TitleFirst)
  285.         WinClose(TitleRest)
  286.     WinPlace(0,0,1000,@ABOVEICONS,TitleFirst)
  287.  
  288.  Make CmdPost Window Ori&ginal Size
  289.     WinPlace(0,0,1000,@ABOVEICONS,TitleFirst)
  290.  
  291.  E&xit Windows
  292.         EndSession()
  293.         
  294. &Dir
  295.  C&reate Directory...
  296.         a=askline("Create Directory","Enter directory to create","")
  297.         terminate(a=="","Create Error","Cannot create directory with null name")
  298.         DirMake(a)
  299.         SetDisplay("","","")
  300.         drop(a)
  301.  
  302.  &Delete Directory...
  303.         f=DirItemize("")
  304.         IfNoFiles=(strsub(";",1,strlen(f)>0))
  305.         execute %IfNoFiles% s=askline("Delete Directory","Enter directory to delete","")
  306.         execute %IfNoFiles% s=strcat(strtrim(s)," ")
  307.         drop(IfNoFiles)
  308.         terminate(strlen(f)==0,"Delete Directory","No directory specified")
  309.         terminate(@no==askyesno("Delete Directory",f),"Delete Directory","Directory not deleted")
  310.         DirRemove(f)
  311.         SetDisplay("","","")
  312.         OtherUpdate()   ; Well if the "other" CmdPost Window points to the
  313.                       ; same directory, it *is* nice
  314.         drop(f)
  315.  
  316.  &Change Directory...
  317.         a=DirGet()
  318.         b=strindex(a,':',1,@fwdscan)
  319.         c=askline("Change Directory","Enter directory name",strsub(a,b+1,strlen(a)-b-1))
  320.         terminate(c=="","Directory Error","Directory with null name does not exist")
  321.         DirChange(c)
  322.         SetDisplay("","","")
  323.         drop(a,b,c)
  324.  
  325.  _Directory &Tree
  326.         run("cp_tree.exe","")
  327.  
  328. &View
  329.  &Short
  330.         SetDisplay("SHORT","","")
  331.         MenuChange("ViewShort",@CHECK)
  332.         MenuChange("ViewLong",@UNCHECK)
  333.         iniwrite(CP,"ViewShortLong","SHORT")
  334.  
  335.  &Long
  336.         SetDisplay("LONG","","")
  337.         MenuChange("ViewShort",@UNCHECK)
  338.         MenuChange("ViewLong",@CHECK)
  339.         iniwrite(CP,"ViewShortLong","LONG")
  340.  
  341.  _&All
  342.         SetDisplay("","","*.*")
  343.         MenuChange("ViewAll",@CHECK)
  344.         MenuChange("ViewPartial",@UNCHECK)
  345.         MenuChange("ViewPrograms",@UNCHECK)
  346.         iniwrite(CP,"ViewWhat","ALL")
  347.  
  348.  &Partial...
  349.         a=iniread(CP,"Partial","*.*")
  350.         a=AskLine("View Partial","Enter types of files desired",a)
  351.         iniwrite(CP,"Partial",a)
  352.         SetDisplay("","",a)
  353.         MenuChange("ViewAll",@UNCHECK)
  354.         MenuChange("ViewPartial",@CHECK)
  355.         MenuChange("ViewPrograms",@UNCHECK)
  356.         iniwrite(CP,"ViewWhat","PARTIAL")
  357.  
  358.  P&rograms
  359.         SetDisplay("","","*.EXE *.COM *.BAT *.PIF")
  360.         MenuChange("ViewAll",@UNCHECK)
  361.         MenuChange("ViewPartial",@UNCHECK)
  362.         MenuChange("ViewPrograms",@CHECK)
  363.         iniwrite(CP,"ViewWhat","PROGRAMS")
  364.  
  365.  _By &Name
  366.         SetDisplay("","NAME","")
  367.         MenuChange("ViewByName",@CHECK)
  368.         MenuChange("ViewByDate",@UNCHECK)
  369.         MenuChange("ViewBySize",@UNCHECK)
  370.         MenuChange("ViewByKind",@UNCHECK)
  371.         MenuChange("ViewUnsorted",@UNCHECK)
  372.         iniwrite(CP,"ViewBy","NAME")
  373.  
  374.  By &Date
  375.         SetDisplay("","DATE","")
  376.         MenuChange("ViewByName",@UNCHECK)
  377.         MenuChange("ViewByDate",@CHECK)
  378.         MenuChange("ViewBySize",@UNCHECK)
  379.         MenuChange("ViewByKind",@UNCHECK)
  380.         MenuChange("ViewUnsorted",@UNCHECK)
  381.         iniwrite(CP,"ViewBy","DATE")
  382.  
  383.  By Si&ze
  384.         SetDisplay("","SIZE","")
  385.         MenuChange("ViewByName",@UNCHECK)
  386.         MenuChange("ViewByDate",@UNCHECK)
  387.         MenuChange("ViewBySize",@CHECK)
  388.         MenuChange("ViewByKind",@UNCHECK)
  389.         MenuChange("ViewUnsorted",@UNCHECK)
  390.         iniwrite(CP,"ViewBy","SIZE")
  391.  
  392.  By &Kind       
  393.         SetDisplay("","KIND","")
  394.         MenuChange("ViewByName",@UNCHECK)
  395.         MenuChange("ViewByDate",@UNCHECK)
  396.         MenuChange("ViewBySize",@UNCHECK)
  397.         MenuChange("ViewByKind",@CHECK)
  398.         MenuChange("ViewUnsorted",@UNCHECK)
  399.         iniwrite(CP,"ViewBy","KIND")
  400.  
  401.  &Unsorted
  402.         SetDisplay("","UNSORTED","")
  403.         MenuChange("ViewByName",@UNCHECK)
  404.         MenuChange("ViewByDate",@UNCHECK)
  405.         MenuChange("ViewBySize",@UNCHECK)
  406.         MenuChange("ViewByKind",@UNCHECK)
  407.         MenuChange("ViewUnsorted",@CHECK)
  408.         iniwrite(CP,"ViewBy","UNSORTED")
  409.  
  410.  |&1 Stack
  411.         winarrange(1)
  412.  
  413.  &2 Arrange
  414.         winarrange(2)
  415.  
  416.  &3 Arrange in Rows
  417.         winarrange(3)
  418.  
  419.  &4 Arrange in Columns
  420.         winarrange(4)
  421.  
  422.  _&5 (w/o CP) Stack
  423.         winiconize("")
  424.         winarrange(1)
  425.  
  426.  &6 (w/o CP) Arrange
  427.         winiconize("")
  428.         winarrange(2)
  429.  
  430.  &7 (w/o CP) Arrange in Rows
  431.         winiconize("")
  432.         winarrange(3)
  433.  
  434.  &8 (w/o CP) Arrange in Cols
  435.         winiconize("")
  436.         winarrange(4)
  437.  
  438. &Main
  439.  &Command Post
  440.         a=strcat("abcdefghijk",WinGetActive())
  441.         b=strlen(a)
  442.         c=strsub(a,b-9,10)!="Unlicensed"
  443.         c=strsub(";",1,c)
  444.         Execute %c% run("cmdpost.exe","")
  445.         Execute %c% Exit
  446.     ErrorMode(@OFF)
  447.     a=WinActivate(TitleFirst)
  448.     b=WinActivate(TitleRest)
  449.     ErrorMode(@CANCEL)
  450.     c=strsub(";",1, a&b )
  451.     Execute %c% run("cmdpost.exe","")
  452.     Execute %c% Exit
  453.     WinPlace(0,0,500,@ABOVEICONS,TitleFirst)
  454.     WinPlace(500,0,1000,@ABOVEICONS,TitleRest)
  455.         drop(a,b,c)
  456.  
  457.  Control &Panel
  458.         errormode(@off)
  459.         winactivate("Control Panel")
  460.         terminate(LastError()==0,"","")
  461.         errormode(@cancel)
  462.         run("control.exe","")
  463.  
  464.  C&lipboard
  465.         errormode(@off)
  466.         terminate(winactivate("Clipboard"),"","") ;Already Running
  467.         errormode(@cancel)
  468.         run("clipbrd.exe","")
  469.  
  470.  &DOS Prompt
  471.         run("command.com","")
  472.  
  473.  _Get &Help Cardfile
  474.         run("cardfile.exe","cp_help.crd")
  475.  
  476.  Reset &Options...
  477.         a=iniread(CP,"BlankTime",5)
  478.         b1="Enter screen blanker delay time"
  479.         b2="or 0 to disable blanker"
  480.         b3="or negative time to disable clock"
  481.         b1=strcat(b1,crlf,b2,crlf,b3)
  482.         a=AskLine("Screen Blanker",b1,iniread(CP,"BlankTime",5))
  483.         iniwrite(CP,"BlankTime",a)
  484.         ErrorMode(@OFF)
  485.         WinClose("CmdPost Clock")
  486.         ErrorMode(@CANCEL)
  487.         run("CP_BLNK.EXE",a)
  488.         b1="Do you wish to reset CmdPost's Printer"
  489.         b2="and Disk Drive information?"
  490.         b1=strcat(b1,crlf,b2)
  491.         a=AskYesNo("Information Reset",b1)
  492.         a=strsub(";",1,a==@NO)
  493.         execute %a% iniwrite(CP,"TextPrinter","ASK")
  494.         execute %a% iniwrite(CP,"LastDrive","ASK")
  495.         execute %a% iniwrite(CP,"DriveA","ASK")
  496.         execute %a% iniwrite(CP,"DriveB","ASK")
  497.         execute %a% MenuChange("FilePrint",@ENABLE)
  498.         b1="CmdPost's saved information reset."
  499.         b2="You will be prompted to re-enter the"
  500.         b3="necessary information when it is required."
  501.         b1=strcat(b1,crlf,b2,crlf,b3)
  502.         execute %a% Message("Information Reset",b1)
  503.         drop(a,b1,b2,b3)
  504.  
  505.  _&System Information
  506.         run("cp_info.exe","")
  507.  
  508.  |P&rogram Manager
  509.     errormode(@off)
  510.         terminate(winactivate("Program Manager"),"","") ;Already Running
  511.         errormode(@cancel)
  512.         run("Progman.exe","")
  513.  
  514.  &File Manager
  515.     errormode(@off)
  516.         terminate(winactivate("File Manager"),"","") ;Already Running
  517.         errormode(@cancel)
  518.         run("winfile.exe","")
  519.  
  520.  Print &Manager
  521.     run("printman.exe","")   ; takes care of itself
  522.  
  523.  &Windows Setup
  524.         a=Filelocate("system.ini")
  525.         b=strindex(a,"\",0,@BACKSCAN)
  526.         a=strsub(a,1,b)
  527.         run(strcat(strsub(a,1,b),"setup.exe"),"")
  528.  
  529.  _&Edit CmdPost menus
  530.         a=FileLocate("CMDPOST.CPM")
  531.         b=strindex(a,"\",0,@BACKSCAN)
  532.         DirChange(strsub(a,1,b))
  533.         a=FileItemize("*.CPM")
  534.         a=ItemSelect("Select menu to edit",a," ")
  535.         terminate(a=="","Edit","No file selected")
  536.         ;it it already running???  Find it...
  537.         ErrorMode(@OFF)
  538.         terminate(WinActivate("Notepad - %a%"),"","") ;Already being edited
  539.         dot=strindex(a,".",0,@FWDSCAN)
  540.         bak=strcat(strsub(a,1,dot),"BAK")
  541.         FileCopy(a,bak,@FALSE)
  542.         RunZoom("notepad.exe",a)
  543.  
  544.  Edit &INI files
  545.     a=FileLocate("WIN.INI")
  546.     b=strindex(a,"\",0,@BACKSCAN)
  547.     DirChange(strsub(a,1,b))
  548.     NotWin2 = strsub(";",1,(WinVersion(@MAJOR)==2))
  549.     a="WIN.INI"
  550.     execute %NotWin2% a=FileItemize("*.INI")
  551.     execute %NotWin2% a=ItemSelect("Select INI file to edit",a," ")
  552.     execute %NotWin2% terminate(a=="","Edit","No file selected")
  553.     drop(NotWin2,b)
  554.     ;it it already running???  Find it...
  555.     ErrorMode(@OFF)
  556.     terminate(WinActivate("Notepad - %a%"),"","") ;Already being edited
  557.     dot=strindex(a,".",0,@FWDSCAN)
  558.     bak=strcat( strsub(a,1,dot),"BAK")
  559.     FileCopy(a,bak,@FALSE);
  560.     RunZoom("notepad.exe",a)
  561.     drop(a,dot,bak)
  562.  
  563.  Edit System Confi&guration
  564.         run("sysedit.exe","")  ;takes care of itself
  565.