THE WELCH COMPANY
440 Davis Court #1602
San Francisco, CA 94111-2496
415 781 5700
rodwelch@pacbell.net


S U M M A R Y


DIARY: October 20, 2003 02:17 PM Monday; Rod Welch

Gary suggests new function to launch other programs from SDS.

1...Summary/Objective
2...Interoperability Integrates Other Applications to Construct Knowledge
3...Applications Called by SDS Build Bridge from Information to Knowledge
....Testing Long Filenames that Failed with Error Message from Windows
....Anchors for HTML Filenames are Failing
....Testing Filenames that Succeeded Exept for HTML Anchors
4...Applications Can be Launched from SDS Using Windows Start Command
5...Function Key Proposed to Enter Files on Internet Rather than Enter
6...000006 Macro 1063 Modify to Apply Start Command
7...000008 Macro 1363 Enter Modify Process for Opening Links
8...F1 F7 in SDS Launches New Op to Execute Start with a Filename
9...009030 Open File in SDS Record
....SDS Documents Can Omit Path Delimiters by Using Quotes
....Results Meeting Some Requirements
10...00903.BAT Call Start Command to Open a Document with Another Program
11...SDS.BAT Set Command for New Start Open a File in Another Program
12...Start Command to Launch Applications under Windows 2000
13...ASSOC Command for Start to Launch Applications Under Windows 2000
14...FTYPE Command for Start to Launch Applications Under Windows 2000


..............
Click here to comment!

CONTACTS 

SUBJECTS
Programs Launch from Within SDS Based on File Extension to Microsoft
Other Programs Launch from Within SDS Based on File Extension to Mic
Launch Other Programs to Open Files with Long Filenames Failing
Launch Other Programs to Open HTML Internet Files on the Web Failing
Start DOS CMD Windows Command Launches Other Programs Called with DO
Other Programs Launch Within SDS Based on File Extension to Microsof
DOS Start Command Batch File Launch Other Programs from Within SDS B

2909 -
2909 -    ..
2910 - Summary/Objective
2911 -
291101 - Follow up ref SDS 14 0000, ref SDS 1 0000.
291102 -
291103 - Interoperability integrating other programs with new functions in SDS
291104 - now makes opening a wide range of files fast and easy. ref SDS 0 6L6N
291105 - Enter and double click open the file, extending existing features.
291106 - ref SDS 0 I25K  If a document for another application is listed in the
291107 - Reference field, then clicking on a citation to the document is
291108 - another way to launch an application that opens a document listed in
291109 - the Reference field. ref SDS 0 ZE4L  Gary provided guidelines,
291110 - ref SDS 0 LS7L, with examples of filenames to process. ref SDS 0 LS91
291111 - and requirements for User interface. ref SDS 0 LS53  Created another
291112 - processor, ref SDS 0 TC4K, to set up a batch op for a Windows Start op
291113 - ref SDS 0 TC6G, using a new set command in sds.bat, ref SDS 0 NW3N.
291114 - Initial problems ref SDS 0 Y45I, were resolved, ref SDS 0 NW3N, so
291115 - that the system now seems to be operational, providing a bridge
291116 - between the two worlds of information based on documents, and
291117 - knowledge based on SDS.
291118 -
291119 -        [On 031026 Gary was notified his idea was implemented for
291120 -        developing SDS support to open files for other programs, and
291121 -        code was submitted to Gary that enabled this new feature.
291122 -        ref SDS 17 ET5V
291124 -         ..
291125 -        [On 031102 modified code to process http files separately using
291126 -        both 00903.bat and a new utility 00903.cmd to handle long
291127 -        filenames and HTML anchors for opening files on the Internet.
291128 -        ref SDS 20 0001
291130 -         ..
291131 -        [On 040417 added functionality to 00903 for opening the current
291132 -        file that is saved in html format on the local server to
291133 -        support proofreading, and to open the current file on the
291134 -        Internet, to verify whether the file has been published.
291135 -        ref SDS 21 TT5H
291137 -         ..
291138 -        [On 040513 Gary suggests system to manage and look up acronyms.
291139 -        ref SDS 22 TJ5J  He wants to the new function assigned to a
291140 -        function key rather than overload Enter and double clicking.
291141 -        ref SDS 22 6I8I
291143 -         ..
291144 -        [On 040701 Gary provided solution to problem of opening
291145 -        filenames with % characters. ref SDS 25 0001
291147 -         ..
291148 -        [On 040705 Gary reported new problem; the new function 00903
291149 -        that applies cmd batch files to open files for other programs
291150 -        is not supported by w98. ref SDS 26 U693
291151 -
291152 -
291153 -
291154 -
291155 -
291156 -
291158 -  ..
2912 -
2913 -
2914 - Evaluation
2915 -
291501 - Interoperability Integrates Other Applications to Construct Knowledge
291502 - Applications Called by SDS Build Bridge from Information to Knowledge
291503 -
291504 - The work today provides inteoperability that integrates SDS with other
291505 - software programs.  This narrows the gap between the two (2) worlds of
291506 - information technology (IT) and SDS support for converting information
291507 - into knowledge.  Interoperability significantly increases access to a
291508 - wider range of information resources for working "intelligently,"
291509 - called out in POIMS. ref OF 18 PT4O
291511 -  ..
291512 - Entering a file with another application is fast and easy by listing a
291513 - filename in the narrative of an SDS record or in References and then
291514 - pressing Enter.  This reduces keystrokes and clicks estimated in the
291515 - range of 10 to 20, and so increases time saved using SDS, reported on
291516 - 030823, ref SDS 13 LD9L, and citing the list of improvements on
291517 - 000824. ref SDS 4 JJ9M The amount of time and money saved by reducing
291518 - keystrokes is calculated in the record on 021228. ref SDS 9 6C9M
291520 -  ..
291521 - Once listed, a file can be entered at will by pressing Enter or double
291522 - clicking.  Opening a file with another applicaton extends SDS
291523 - capability to open external resources, and so this improvement is
291524 - transparent to the User requiring no change in how SDS is used,
291525 - including the standard format to specify an external document.  Since
291526 - some external documents created with other applications use a format
291527 - with spaces in the filename, this is also supported. ref SDS 0 UN9M
291528 - F1 F7 is a new function that can, also, be used along with Enter and
291529 - double clicking to open other applications.  All other features are
291530 - retained, so there is nothing new to learn.  Experience will show if
291531 - Enter and double clicking to open a file causes conflicts with using
291532 - Enter for a carriage return when typing up the record.  Limitations on
291533 - opening long filenames may not be significant, but we need to find a
291534 - way to include anchors in opening HTML files on the Internet.
291535 -
291536 -      [On 031024 Gary reported slow progress using Enter and double
291537 -      clicking to execute SDS functionality for navigating through
291538 -      Knowledge Space.  Some of this may be due to legacy habits using
291539 -      Enter like a carriage return on a typewriter. ref SDS 16 MF6H
291541 -       ..
291542 -      [On 031026 Gary was notified his idea was implemented for
291543 -      developing SDS support to open files for other programs, and code
291544 -      was submitted to Gary that enabled this new feature. ref SDS 17
291545 -      ET5V
291547 -       ..
291548 -      [On 040417 added functionality to 00903 for opening the current
291549 -      file that is saved in html format on the local server to support
291550 -      proofreading, and to open the current file on the Internet, to
291551 -      verify whether the file has been published. ref SDS 21 TT5H
291553 -       ..
291554 -      [On 040513 Gary suggests system to manage and look up acronyms.
291555 -      ref SDS 22 TJ5J  He wants to avoid overloading Enter and double
291556 -      clicking. ref SDS 22 6I8I
291557 -
291558 -
291560 -     ..
291561 -    Testing Long Filenames that Failed with Error Message from Windows
291562 -
291563 -
291564 - The record on 030304 reviews a document on the Internet with the kind
291565 - of identification Gary wants to support. ref SDS 12 5T8J
291566 -
291567 -         http://story.news.yahoo.com/news?tmpl=story&cid=578&ncid=578&e=10&u=/nm/20040617/ts_nm/pga_open_dc
291568 -
291569 - ...and has a reference to an even longer string...
291570 -
291571 -         http://rd.yahoo.com/dailynews/nm/ts_nm/inlinks/*http://rd.yahoo.com/DailyNews/manual/*http://search.news.yahoo.com/search/news?p=%22NASA%22&c=&n=20&yn=c&c=news&cs=nw
291573 -     ..
291574 -    Actually, these fail, because they do not have an extension.  They
291575 -    seem to work when loaded into a browser.
291577 -     ..
291578 -    Even when .htm or .html is appended, DOS returns an error message
291579 -    saying...
291580 -
291581 -           Program too big to fit into memory.
291583 -     ..
291584 -    This suggests the long lines cannot be read in a DOS batch file,
291585 -    but don't know for sure.
291586 -
291587 -        [On 031030 same problem with much shorter line. ref SDS 18 TF5G
291588 -
291589 -        [On 031030 research suggests Microsoft issued a patch that
291590 -        prevents long filenames. ref SDS 19 WJ7P
291592 -         ..
291593 -        [On 031102 modified code to process http files separately using
291594 -        both 00903.bat and a new utility 00903.cmd to handle long
291595 -        filenames and HTML anchors for opening files on the Internet.
291596 -        ref SDS 20 5G4H
291598 -         ..
291599 -        [On 040701 Gary provided solution to problem of opening
291600 -        filenames with % characters. ref SDS 25 0001
291601 -
291602 -
291603 -
291605 -     ..
291606 -    Anchors for HTML Filenames are Failing
291607 -    Testing Filenames that Succeeded Exept for HTML Anchors
291608 -
291609 -
291610 - Gary gives this example...
291611 -
291612 -         http://www.incose-la.org/about_incosela.htm
291614 -     ..
291615 -    This one works, if the appended string is omitted, and only the
291616 -    filename is processed. ref SDS 0 LT46,
291618 -  ..
291619 - Example using SDS web structure...
291620 -
291621 -         http://www.welchco.com/sd/08/00101/02/03/10/26/005234.HTM
291622 -
291623 -    This works without an anchor, but adding an anchor...
291624 -
291625 -         http://www.welchco.com/sd/08/00101/02/03/10/26/005234.HTM#0001
291626 -
291627 -    ...fails.  Could be we need to shear off the anchor and enter it as
291628 -    a parameter with a particular syntax.
291629 -
291630 -           [On 031102 modified code to process http files separately
291631 -           using both 00903.bat and a new utility 00903.cmd to handle
291632 -           long filenames and HTML anchors for opening files on the
291633 -           Internet. ref SDS 20 5G4H
291635 -  ..
291636 - Examples of Word documents....
291637 -
291638 -         f:\03\00050\08\03\00101.doc
291639 -
291640 -         f: 03 00050 00 06 030708fg.doc
291641 -
291642 -    These two (2) examples work.
291644 -     ..
291645 -    Notice the second example omits path delimiters, suggesting that
291646 -    others have adopted the SDS standard.
291648 -     ..
291649 -    We can open these files also from the Reference field as a
291650 -    citation. ref OF 10 and ref OF 12, using the new code explained
291651 -    below. ref SDS 0 JY7G
291653 -  ..
291654 - Excel spreadsheets; was able to open one.
291656 -  ..
291657 - Placing a filename in quotes has not run yet.  Found a reference on
291658 - the Internet saying that the start command views the first string in
291659 - quotes as a title.  Experience shows that putting the filename in
291660 - quotes results in the filename listed as the title of a DOS prompt
291661 - window, rather than launching the application.  Could try including a
291662 - quoted string in the set command, then that would be the first quoted
291663 - text and then anything after that might be handled as the param for
291664 - the command.  That seems to work, so we can put the quotes back.
291665 - ref SDS 0 FL4O
291666 -
291667 -
291668 -
291669 -
291671 -  ..
2917 -
2918 -
2919 - Background
2920 -
292001 - Applications Can be Launched from SDS Using Windows Start Command
292002 -
292003 - On 911103 did some work on enabling SDS to call other programs.
292004 - ref SDS 1 0001
292006 -  ..
292007 - On 000821 work was expanded on Enter and double clicking to empower
292008 - users with a common interface that executes commands for multi-tasking
292009 - in order to make entering other locations fast and easy. ref SDS 3
292010 - 0G6N  This built on development to improve command and control of the
292011 - work reported in the record for 990530 that empowers users with
292012 - "intelligence" applying situational awareness to construct and
292013 - navigate through Knowledge Space. ref SDS 2 0001
292015 -  ..
292016 - More recently, on 011222 Gary asked how SDS handles files from other
292017 - programs. ref SDS 5 N28N  Later, on 021016 Gary asked about developing
292018 - this new feature. ref SDS 6 UZ6G  In another record the same day, Gary
292019 - suggested developing an interface between SDS and common tools people
292020 - use for creating work product. ref SDS 7 SYTS Later on 021228
292021 - developed some macro code for Gary to experiment with ideas on
292022 - accomplishing this objective. ref SDS 8 0001  On 030109 began
292023 - developing applications of the Windows "start" command to enhance SDS.
292024 - ref SDS 10 0001  Recently on 030902 created an application of the
292025 - start command to enhance the subject index system, and this effort
292026 - yielded experience that supports the goal today for interoperability
292027 - where SDS launches other applications.  This is another dimension of
292028 - automated integration called out in POIMS. ref OF 18 1731
292029 -
292030 -        [On 031026 Gary was notified his idea was implemented for
292031 -        developing SDS support to open files created using other
292032 -        programs, and code was submitted to Gary that enabled this new
292033 -        feature. ref SDS 17 ET5V
292035 -         ..
292036 -        [On 040417 added functionality to 00903 for opening the current
292037 -        file that is saved in html format on the local server to
292038 -        support proofreading, and to open the current file on the
292039 -        Internet, to verify whether the file has been published.
292040 -        ref SDS 21 TT5H
292042 -  ..
292043 - Today, received a letter from Gary saying....
292044 -
292045 -    1.  Subject: Launching programs
292046 -        Date: Mon, 20 Oct 2003 11:07:06 -0700
292047 -        From: "EXT-Johnson, Garold L"
292048 -        To: "Rod Welch (E-mail)"
292050 -         ..
292051 -    2.  Rod,
292053 -         ..
292054 -        The START command will launch programs based on the file
292055 -        extension.
292057 -  ..
292058 - This objective was presented in Gary's letter last year on 021016.
292059 - ref SDS 7 SYTS
292061 -  ..
292062 - Gary continues...
292063 -
292064 -    3.  Given the fragment of an SDS record below:
292066 -         ..
292067 -        040501 -  0001 Follow up
292068 -        040502 -
292069 -        040503 -       C:\glj\Documents\combat_SDS.TXT
292070 -        040504 -
292071 -        040505 -       C:\glj\Documents\HLAarmory.ppt
292072 -        040506 -
292073 -        040507 -       C:\glj\Documents\MS_Office_Handbook_01.doc
292074 -        040508 -
292075 -         ..
292076 -        040509 -
292077 -        040510 -       C:\glj\Documents\Admin\5-9-03  combat Phones 17-6.xls
292078 -        040511 -
292080 -  ..
292081 - Below, develop support for filenames with spaces that are not path
292082 - delimiters. ref SDS 0 UN9M  Used Gary's suggestion to put the
292083 - specification in quotes. ref SDS 0 783K
292084 -
292085 -
292086 -
292088 -  ..
292089 - Function Key Proposed to Enter Files on Internet Rather than Enter
292090 -
292091 - Gary's SDS record continues...
292092 -
292093 -        040512 -
292094 -        040513 -       C:\glj\Documents\Tools_for_MSWord.htm
292095 -        040514 -
292096 -        040515 -
292097 -        040516 -       http://www.staffordbeer.com/
292098 -        040517 -
292100 -         ..
292101 -        ...the desired action is:
292102 -
292103 -        1)  Place cursor on a line
292105 -             ..
292106 -        2)  Press a function key
292108 -  ..
292109 - Assigned this to F1 F7. ref SDS 0 F14N  Gary called and explained he
292110 - feels more comfortable using a function key for this task, rather than
292111 - using the Enter key and double clicking to enter another location.
292112 -
292113 -            [On 031102 Gary explains F1 F7 adds utility to the program
292114 -            by adding potential support for opening files for
292115 -            applications not expressly listed in macro 136 for Enter
292116 -            and clicking. ref SDS 20 QF6M
292118 -             ..
292119 -            [On 040513 Gary cautions against "overloading" Enter with
292120 -            multi-tasking to manage acronyms. ref SDS 22 6I8I
292122 -             ..
292123 -            [On 040701 Gary submits letter explaining intent to remove
292124 -            overloading Enter key; action item to analyse planning on
292125 -            990530. ref SDS 24 PX63
292127 -  ..
292128 - Gary continues...
292129 -
292130 -        3)  SDS creates a batch file with a single line
292131 -
292132 -            a)  Command string %SDS_CMD /c START
292134 -  ..
292135 - Implemented this with the set command. ref SDS 0 NW3N
292137 -  ..
292138 - Gary continues...
292139 -
292140 -            b)  Quotes the text of the line
292142 -  ..
292143 - This was a challenge, per below, ref SDS 0 I57K, to support filenames
292144 - with spaces per Gary's example above. ref SDS 0 UK7H
292146 -                 ..
292147 -            c)  Execute the batch file
292148 -
292150 -         ..
292151 -    4.  Result is that the appropriate program opens the file.
292153 -             ..
292154 -            Opens the file using whatever editor is linked to .txt
292155 -            files START
292156 -
292157 -               [...below, got start to process a filename with an
292158 -               extension to open an application, ref SDS 0 Y45I, and
292159 -               eventually got some success on filenames of the kind
292160 -               Gary lists in his letter today. ref SDS 0 I19I  Finally,
292161 -               seem to have accomplished a substantial amount of Gary's
292162 -               goal. ref SDS 0 JQ3G
292163 -
292164 -            "C:\glj\Documents\combat_SDS.TXT"
292166 -             ..
292167 -            PowerPoint
292169 -             ..
292170 -            START "C:\glj\Documents\HLAarmory.ppt"
292172 -             ..
292173 -            Word
292175 -             ..
292176 -            START "C:\glj\Documents\MS_Office_Handbook_01.doc"
292178 -             ..
292179 -            Excel (note spaces in file name, that's why the quotes)
292180 -            START "C:\glj\Documents\Admin\5-9-03  combat Phones 17-6.xls"
292182 -             ..
292183 -            Default browser, local file
292184 -            START "C:\glj\Documents\Tools_for_MSWord.htm"
292186 -             ..
292187 -            Default browser, opens the URL
292188 -            START "http://www.incose-la.org/about_incosela.htm <http://www.staffordbeer.com/> "
292189 -
292191 -         ..
292192 -    5.  Thanks,
292194 -         ..
292195 -        Gary
292197 -
292198 -
292199 -
292200 -
292201 -
292202 -
292204 -  ..
2923 -
2924 -
2925 - Progress
2926 -
292601 - 000006  Macro 1063 Modify to Apply Start Command
292602 -
292603 - Line 2040, ref OF 5 OV3J, -label doc_of in 000006 about 40 lines
292604 - below
292605 -
292606 -    savescr 10
292607 -    macro 1363
292608 -    -if @0 = 12 -goto nofwaap
292609 -    macro 7
292610 -    -exit
292611 -    -label nofwaap
292612 -    setcnt 0 0
292613 -    macro 107
292614 -    -label fCite
292615 -
292616 -        savescr 10 sets up macro 107 later.  New macro 1363 in 000008
292617 -        evaluates the line to open the file with another application,
292618 -        if the file extension meets specified criteria, per above, -if
292619 -        @0 = 12 it means none of the criteria passed, so go run normal
292620 -        code to open SDS system file.  If 0 did not equal 12, it means
292621 -        an extension for another file was found and so the macro 1363
292622 -        opened the file in another Windows session, so macro 7 restores
292623 -        the cursor to the original situation, then -exit to return
292624 -        control to the user.  -label nofwaap occurs, when another
292625 -        application is not used, so call macro 107 macro 107 calls code
292626 -        that opens the file, which now uses new code in -entry 1062 to
292627 -        call the new processor, per below. ref SDS 0 6P8M  Flag 0 = 999
292628 -        means the code opened a file with another program rather than
292629 -        open the file in SDS, so simply return to the citation and exit
292630 -        the op.
292631 -
292632 -
292633 -
292635 -  ..
292636 - 000008  Macro 1363 Enter Modify Process for Opening Links
292637 -
292638 - Line 1100, ref OF 7 2736, -entry 136 in 000008
292640 -         ..
292641 -        [On 040513 Gary suggests system to manage and look up acronyms.
292642 -        ref SDS 22 TJ5J  He wants to avoid overloading Enter and double
292643 -        clicking. ref SDS 22 6I8I
292644 -
292645 -
292647 -  ..
292648 - Line 1190, ref OF 7 J35J, -entry 1363 in 000008 about 30 lines below
292649 -
292650 -    -entry 1363
292651 -    loc_cur 0 10
292652 -    z 1 230
292653 -    errorcnt 0 0
292654 -    fr /.asc/
292655 -    fr /.ASC/
292656 -    fr /.doc/
292657 -    fr /.DOC/
292658 -    fr /.xls/
292659 -    fr /.XLS/
292660 -    fr /.ppt/
292661 -    fr /.PPT/
292662 -    fr /.htm/
292663 -    fr /.HTM/
292664 -    fr /.html/
292665 -    fr /.HTML/
292666 -    fr /.txt/
292667 -    fr /.TXT/
292668 -    -if @0 = 12 -exit
292669 -    @c:\sd\03\00903
292670 -    macro 68
292671 -    -exit
292672 -
292673 -        New macro -entry 1361 supports situational awareness for
292674 -        managing the work by strengthening navigation through Knowledge
292675 -        Space.  Documents with extensions listed above are now treated
292676 -        like links to the application programs represented by the
292677 -        filename extensions, per Gary's list above. ref SDS 0 LS91 and
292678 -        ref SDS 0 LT30  This provides the "interface" to tools which
292679 -        Gary discussed in a letter on 021016, ref SDS 7 SYTS, also
292680 -        cited above. ref SDS 0 LS8U
292681 -
292682 -           [On 031102 modified this code to process http files
292683 -           separately using both 00903.bat and a new utility 00903.cmd
292684 -           to handle long filenames and HTML anchors for opening files
292685 -           on the Internet. ref SDS 20 5G4H
292686 -
292688 -  ..
292689 - Line 1260, ref OF 7 0672, -label clfE in 000008 about 70 lines below
292690 -
292691 -    -if @1 = 48 -if @2 < 52 -goto nlinKem
292692 -
292693 -        Code branches here after determining cursor is in the
292694 -        Reference field.
292695 -
292696 -
292698 -  ..
292699 - Line 1660, ref OF 7 8461, -label lSDS in 000008
292700 -
292701 -    macro 982
292702 -    -exit
292703 -
292704 -        This code calls macro 107 in 000006, per above. ref SDS 0 JY7G
292705 -
292707 -  ..
292708 - F1 F7 in SDS Launches New Op to Execute Start with a Filename
292709 -
292710 - Line 2400, ref OF 7 4562, -entry 158 in 000008
292711 -
292712 -    pf7 @c:\sd\03\00903 #3
292713 -
292714 -        Call new function to open application with Start command.
292715 -        ref SDS 0 TC4K  This implements requirements in Gary's letter.
292716 -        ref SDS 0 R18I
292717 -
292718 -            [On 031102 Gary explains F1 F7 adds utility to the program
292719 -            by adding potential support for opening files for
292720 -            applications not expressly listed in macro 136 for Enter
292721 -            and clicking. ref SDS 20 QF6M
292722 -
292723 -
292724 -
292725 -
2928 -

SUBJECTS
Other Programs Launch from Within SDS Based on File Extension to Mic
Programs Launch from Within SDS Based on File Extension to Microsoft

3004 -
300501 -  ..
300502 - 009030  Open File in SDS Record
300503 -
300504 -
300505 - Line 130, ref OF 1 PW5H, -label start in 00903
300506 -
300507 -    New macro to capture a line in an SDS record and launch a start
300508 -    command to open the file with another application.
300510 -     ..
300511 -    Requires a new function key for SDS. ref SDS 0 8G9N
300513 -     ..
300514 -    macro 153
300515 -    macro 157
300516 -    savescr 8
300517 -    setlen 70 0
300518 -    -if @70 > 10 -goto glto
300519 -    beep
300520 -    errormsg  Need filename to run application!
300521 -    -goto end2
300522 -
300523 -        Macro 153 and 157 reset SDS profile.  savescr 8 captures
300524 -        current condition to restore at end of process, per below.
300525 -        ref SDS 0 YZ97  setlen 70 gets the length of the line to
300526 -        determine when the full line has been loaded into the Start
300527 -        batch file.  -if @70 > 10 it means the line is not blank, so
300528 -        continue the process. -goto glto. ref SDS 0 YP9F  beep when the
300529 -        line is blank, give an error message trying to tell someone to
300530 -        enter a string of some kind, then go end the thing. ref SDS 0
300531 -        YQ4K
300532 -
300533 -           [On 031102 modified this code to use both 00903.bat and a
300534 -           new utility 00903.cmd to handle long filenames and HTML
300535 -           anchors for opening files on the Internet. ref SDS 20 TC4K
300537 -            ..
300538 -           [On 040417 added functionality to 00903 for opening the
300539 -           current file that is saved in html format on the local
300540 -           server to support proofreading, and to open the current file
300541 -           on the Internet, to verify whether the file has been
300542 -           published. ref SDS 21 TT5H
300543 -
300545 -  ..
300546 - Line 60, ref OF 1 BW6N, -label glto in 00903
300547 -
300548 -    -label glto
300549 -    loc_cur 0 8
300550 -    aw
300551 -    setcur 71 0
300552 -    of @71
300553 -
300554 -        Put cursor on col 8 which is the dash that ends line number,
300555 -        and aw jumps to the next non-blank char.  setcur 71 0 gets the
300556 -        col where the string begins.  of 71 shifts the screen so there
300557 -        is room to read the entire thing.
300558 -
300559 -
300561 -     ..
300562 -    SDS Documents Can Omit Path Delimiters by Using Quotes
300563 -
300564 -    Gary wants support for filenames with spaces that are not path
300565 -    delimiters, ref SDS 0 UK7H, which is supported by adding quotes to
300566 -    the specification. ref SDS 0 783K and ref SDS 0 I57K  The code
300567 -    today accomplishes this requirement to complement SDS formats.
300568 -    There is an added refinement that the SDS standard for omitting
300569 -    delimiters is also supported.
300570 -
300571 -        [On 040417 added functionality to 00903 for opening the current
300572 -        file that is saved in html format on the local server to
300573 -        support proofreading, and to open the current file on the
300574 -        Internet, to verify whether the file has been published.
300575 -        ref SDS 21 TT5H
300577 -  ..
300578 - Line 80, ref OF 1 UJ4F, -label glto in 00903 about 40 lines below
300579 -
300580 -    setcnt 50 0
300581 -    setcnt 83 0
300582 -
300583 -        Turn off flags that convert spaces to path delimiters.
300585 -     ..
300586 -    macro 1361
300587 -    loc_cur 0 1
300588 -    -if @1 > 64 -if @1 < 91 -goto msds1
300589 -    -if @1 > 96 -if @1 < 122 -goto msds1
300590 -    -goto dnapd
300591 -
300592 -        Need to distinguish SDS work product from other methods so we
300593 -        can avoid entering path delimiters.  Ultimately, this
300594 -        distinction may fall away, but for the now, a consistant order
300595 -        and method for managing documents maintains comprehension that
300596 -        makes work fast and easy and accurate.  Path delimiters cannot
300597 -        be omitted from all documents, because in recent years some
300598 -        people have been using word strings with common sentence
300599 -        structure to specify a document.  These strings have spaces
300600 -        which are different from directories.  macro 1361 reads 7
300601 -        characters and these can be used to get very close to selecting
300602 -        out which documents are created under SDS and which come from
300603 -        other schemes where spaces may be needed for the filename
300604 -        specification.  1st criteria is for the first char to be a
300605 -        letter, either capital or lower case.
300606 -
300608 -  ..
300609 - Line 100, ref OF 1 6Y5I, -label msds1 in 00903
300610 -
300611 -    -label msds1
300612 -    -if @2 != 58 -goto dnapd
300613 -    -if @3 != 32 -goto dnapd
300614 -    -if @4 > 47 -if @4 < 58 -if @5 > 47 -if @5 < 58 -goto msds2
300615 -    -goto dnapd
300616 -
300617 -        2nd criteria is for the 2nd position to be a colon; 3rd
300618 -        position must be a space; 4th and 5th positions must be
300619 -        numbers
300620 -
300622 -  ..
300623 - Line 120, ref OF 1 E13I, -label msds2 in 00903
300624 -
300625 -    -label msds2
300626 -    getgbl 6 6
300627 -    -if @6 != 32 -goto dnapd
300628 -    setcnt 1 @70
300629 -    subcnt 1 @71
300630 -    -if @1 > 35 -goto dnapd
300631 -    setcnt 50 4000
300632 -    setcnt 83 92
300633 -
300634 -        6th position must be a space and need to get the global because
300635 -        macro 1361 makes 6 a flag to identify when an anchor was
300636 -        encountered. ref SDS 0 UN4K  If all these tests pass, then
300637 -        check the line length and make sure the filename string is less
300638 -        than 35 char.  Most SDS docs are less than 30 char, so using 35
300639 -        allows for some exceptions.  If these tests do not pass, then
300640 -        assume this is a document that is not generated within SDS, and
300641 -        so jump code that converts spaces to path delimiters. -goto
300642 -        dnapd, ref SDS 0 UO9M  If all tests pass, setcnt 50 4000 and
300643 -        setcnt 83 92 are flags for macro 118 within macro 1188 to
300644 -        convert spaces to delimiters.
300645 -
300647 -  ..
300648 - Line 140, ref OF 1 QL9F, -label dnapd in 00903
300649 -
300650 -    -label dnapd
300651 -    setcnt 87 0
300652 -    macro 1188
300653 -    markcur 4
300654 -
300655 -        setcnt 87 0 resets flag set in macro 1361 that tests line for
300656 -        SDS supported document, above. ref SDS 0 UN4K  macro 1188 reads
300657 -        the screen. markcur 4 identifies the current record to come
300658 -        back after opening the start batch file in the next step.
300660 -     ..
300661 -    e c:\sd\01\00903.bat
300662 -    z 1 6
300663 -    l /%STR%/
300664 -    loc_cur 3 7
300665 -    split
300666 -    rel_cur 1 0
300667 -    immed d
300668 -    rel_cur -1 0
300669 -    ic 34
300670 -
300671 -        Open start batch file for this operation, created today, per
300672 -        below. ref SDS 0 TC6G  z 1 6 zone columns to find the command
300673 -        line, l /%STRT%/ makes the new envirnment variable, also
300674 -        created today in sds.bat, per below, ref SDS 0 NW3N, current.
300675 -        loc_cur 3 8 positions on beginning of the arugment.  split the
300676 -        prior arugment and move the cursor down and delete it, then
300677 -        restore the cursor and ic 34 enters a begining quote, per
300678 -        Gary's suggestion. ref SDS 0 783K
300679 -
300680 -             Note, initially had difficulty getting the quote system to
300681 -             work.  Solution seems to be to provide a quoted text
300682 -             string after the start command to provide a title command;
300683 -             then the quoted text is treated as a parameter and not a
300684 -             switch, per above. ref SDS 0 US6K  This is implemented in
300685 -             the set command in sds.bat. ref SDS 0 NW3N
300686 -
300687 -
300689 -  ..
300690 - Line 100, ref OF 1 IS5L, -label lp189 in 00903
300691 -
300692 -    -label lp189
300693 -    macro 1189
300694 -    eol
300695 -    setcur 11 0
300696 -
300697 -        Do a loop calling macro 1189 to enter the string captured in
300698 -        the SDS record, eol jumps to the end of the line. setcur 11 0
300699 -        gets the cursor position to offset the file for entering the
300700 -        next segment, if any.
300702 -     ..
300703 -    ecur 4
300704 -    -if @100 > 45 subcnt 100 135
300705 -    addcnt 71 @100
300706 -    -if @70 <= @71 -goto cesfso
300707 -    of @71
300708 -    loc_cur 0 1
300709 -    macro 1188
300710 -    e c:\sd\01\00903.bat
300711 -    of @11
300712 -    loc_cur 0 1
300713 -    -goto lp189
300714 -
300715 -        ecur 4 returns to the SDS record.  Counter 100 has the number
300716 -        of the last character captured, i.e., 100 = 10 means 10 char
300717 -        were read, 100 = 42 means 42 char read.  if 100 > 45 subcnt 100
300718 -        135 reduces the difference between 45 and 180 where the second
300719 -        set of counters occurs beyond 45, so that 100 has the actual
300720 -        numbers of char read. addcnt 71 @100 makes counter 71 the col
300721 -        for the number of characters that have been read, since 71 is
300722 -        the col where the read op begain, per above. ref SDS 0 YP9F -if
300723 -        @70 <= @71 it means the entire string has been processed so go
300724 -        run the dose command to call Start, per below. -goto cesfso,
300725 -        ref SDS 0 747N  If the entire line has not been captured, then
300726 -        of @71 offset the file to the col that has been read, so the
300727 -        remaining portion is available.  loc_cur 0 1 puts cursor on
300728 -        this position macro 1188 reads the next section of the line.
300729 -        Open the batch file.  of @11 offsets the batch file to the end
300730 -        of the string that has been entered so far.  loc_cur 0 1 puts
300731 -        the cursor in position to enter the next section.  Do a loop to
300732 -        get next section. -goto lp189, ref SDS 0 NC4J
300733 -
300734 -            [On 040618 revised scheme to make 00903.cmd only processor
300735 -            for opening other applications and opening files on the
300736 -            Internet. ref SDS 23 OA4F
300737 -
300739 -  ..
300740 - Line 140, ref OF 1 A66H, -label cesfso in 00903
300741 -
300742 -    -label cesfso
300743 -    e c:\sd\01\00903.bat
300744 -    ic 34
300745 -    save
300746 -    ecur 4
300747 -    purge c:\sd\01\00903.bat
300748 -
300749 -        The string has been captured, so open the batch file.  The
300750 -        cursor is at the end of the line, per above. ref SDS 0 EE5F ic
300751 -        34 enters an ending quote, per Gary above. ref SDS 0 783K
300752 -        save writes the batch file to the disk.  ecur 4 returns to SDS
300753 -        record; purge the batch file to do the rest of the work from
300754 -        the disk.
300755 -
300756 -            [On 031102 revised this to change % to %% in an address
300757 -            string to support feature of DOS and CMD. ref SDS 20 XF4G
300759 -             ..
300760 -            [On 040618 revised scheme to make 00903.cmd only processor
300761 -            for opening other applications and opening files on the
300762 -            Internet. ref SDS 23 OA4F
300764 -             ..
300765 -            [On 040701 Gary discovered a solution of converting % to %%
300766 -            in a filename parameter to open on the Internet or an
300767 -            intranet. ref SDS 23 WM8O
300768 -
300770 -     ..
300771 -    dose /c c:\sd\03\00903.bat
300772 -    getscr 8
300773 -    -label end2
300774 -    purge c:\sd\03\00903
300775 -
300776 -        In SDS, call the batch file to run the start spec.  getscr 8
300777 -        restores the original conditions, per above. ref SDS 0 YY7H
300778 -        purge closes the processor.  There should now be an application
300779 -        in another window, and SDS should be available for simultaneous
300780 -        work.
300781 -
300783 -     ..
300784 -    Results Meeting Some Requirements
300785 -
300786 -    Running the new F1 F7 function on the examples above, ref SDS 0
300787 -    F18I, initially did not yield results Gary proposes in his letter,
300788 -    also, per above. ref SDS 0 LS63
300790 -     ..
300791 -    Was able to get thing to open Excel but only by eliminating the
300792 -    quotes; and, in that case, the file was not openened, only the
300793 -    excel program, which does not meet the requirement, per above.
300794 -    ref SDS 0 LS63
300796 -     ..
300797 -    Got this to occur by setting...
300798 -
300799 -        assoc=.xls=excell
300800 -        fytpe excell=H:\00\02\06\Office\EXCEL.EXE
300802 -     ..
300803 -    This is just guessing based on language in DOS Help, per below
300804 -    showing that start works with assoc and ftype, ref SDS 0 7Q3N, and
300805 -    that assoc has various usage, ref SDS 0 8V4O, and also ftype has a
300806 -    variety of implementations ref SDS 0 K54L
300808 -     ..
300809 -    Finally got some things to run, per above, ref SDS 0 I19I, by
300810 -    omitting the quotes and adding an /I param, per below. ref SDS 0
300811 -    NW3N  Was later able to get the quoted string feature to work by
300812 -    adding a title string to the set command, per below. ref SDS 0 NW3N
300814 -     ..
300815 -    Do not seem to be able to get long strings to work, per above.
300816 -    ref SDS 0 F18I
300817 -
300818 -        [On 031102 modified code to process http files separately using
300819 -        both 00903.bat and a new utility 00903.cmd to handle long
300820 -        filenames and HTML anchors for opening files on the Internet.
300821 -        ref SDS 20 5G4H
300822 -
300823 -
300825 -  ..
300826 - 00903.BAT  Call Start Command to Open a Document with Another Program
300827 -
300828 - Line 30, ref OF 2 J03M, 00903.bat
300829 -
300830 -    C:
300831 -    CD\SD\10
300832 -    REM
300833 -    REM
300834 -    REM       Command for Windows 2000
300835 -    REM
300836 -    %STR%
300837 -
300838 -        This applies a new set command in sds.bat, per below.
300839 -        ref SDS 0 NW3N
300841 -         ..
300842 -        Do not need the exit command, because the window seems to
300843 -        close when the app is closed.
300844 -
300845 -
300846 -
300848 -  ..
300849 - SDS.BAT  Set Command for New Start Open a File in Another Program
300850 -
300851 - Follow up ref SDS 15 OS71.
300852 -
300853 - Line 40, ref OF 8 LV4K, in SDS.BAT
300854 -
300855 -    set STR=%systemroot%\system32\cmd.exe /C start /I "Schedule Diary System"
300856 -
300857 -        Added this for a common command to launch another program; it
300858 -        applies ideas developed on 031020 for using Windows environment
300859 -        variables. ref SDS 15 OS71
300860 -
300861 -            [On 031030 changed title from Schedule Diary System to just
300862 -            SDS in order to reduce the length of the command string,
300863 -            because this is causing the command to fail when reading a
300864 -            url that is longer than 70 characters, or so, because the
300865 -            URL length is added to the command length and it seems that
300866 -            if the combined length is more than about 140 characters,
300867 -            then the command fails to execute. Channging Schedule Diary
300868 -            System to SDS is one way to significantly reduce the length
300869 -            of the line. ref SDS 19 WJ75
300871 -         ..
300872 -        After 1 million combinations, found that this thing needs /I
300873 -        param. ref SDS 0 IR8Y  When cmd is launched, it has the
300874 -        original Windows environment with associations assigned between
300875 -        file extensions and programs.  When dose /c is used to save
300876 -        memory opening a DOS session, it does not evidently have the
300877 -        oridingal environment, and so all of the file assocations fail.
300879 -         ..
300880 -        Using /I in the set definition brings all of the Windows
300881 -        standard associations.  After adding /I got some success using
300882 -        this new system, per above. ref SDS 0 I19I
300884 -         ..
300885 -        Similarly, adding a title "Schedule Diary System" or anything
300886 -        in quotes, tells start there is a title, so the next string
300887 -        with quotes is not processed as a command parameter and not a
300888 -        title.  As a result, the code Gary proposed using quoted
300889 -        strings for the filenames is operational, per above.
300890 -        ref SDS 0 FL4O
300891 -
300892 -
300893 -
300894 -
300895 -
300896 -
3009 -

SUBJECTS
DOS Help Listed Under Windows 2000 Command Reference
Start Launch Applications Based on Associations and File Type Extensi
Applications Launch Start Command in Batch File Based on Associations

3205 -
320601 -  ..
320602 - Start Command to Launch Applications under Windows 2000
320603 -
320604 - DOS shows command use for Start....
320605 -
320606 -    1.  Starts a separate window to run a specified program or command.
320608 -         ..
320609 -    2.  START ["title"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE |
320610 -              /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME |
320611 -              /ABOVENORMAL | /BELOWNORMAL]
320612 -              [/WAIT] [/B] [command/program] [parameters]
320613 -
320614 -            "title"     Title to display in  window title bar.
320616 -             ..
320617 -            path        Starting directory
320619 -             ..
320620 -            B           Start application without creating a new
320621 -                        window. The application has ^C handling
320622 -                        ignored. Unless the application enables ^C
320623 -                        processing, ^Break is the only way to interrupt
320624 -                        the application
320626 -             ..
320627 -            I           The new environment will be the original
320628 -                        environment passed to the cmd.exe and not the
320629 -                        current environment.
320631 -             ..
320632 -            MIN         Start window minimized
320634 -             ..
320635 -            MAX         Start window maximized
320637 -             ..
320638 -            SEPARATE    Start 16-bit Windows program in separate memory space
320640 -             ..
320641 -            SHARED      Start 16-bit Windows program in shared memory space
320643 -             ..
320644 -            LOW         Start application in the IDLE priority class
320646 -             ..
320647 -            NORMAL      Start application in the NORMAL priority class
320649 -             ..
320650 -            HIGH        Start application in the HIGH priority class
320652 -             ..
320653 -            REALTIME    Start application in the REALTIME priority class
320655 -             ..
320656 -            ABOVENORMAL Start application in the ABOVENORMAL priority class
320658 -             ..
320659 -            BELOWNORMAL Start application in the BELOWNORMAL priority class
320661 -             ..
320662 -            WAIT        Start application and wait for it to terminate
320664 -             ..
320665 -            command/program
320666 -
320667 -                        If it is an internal cmd command or a batch
320668 -                        file then the command processor is run with the
320669 -                        /K switch to cmd.exe. This means that the
320670 -                        window will remain after the command has been
320671 -                        run.
320673 -                         ..
320674 -                        If it is not an internal cmd command or batch
320675 -                        file then it is a program and will run as
320676 -                        either a windowed application or a console
320677 -                        application.
320679 -             ..
320680 -            parameters
320681 -
320682 -                        These are the parameters passed to the
320683 -                        command/program
320684 -
320686 -         ..
320687 -    3.  If Command Extensions are enabled, external command invocation
320688 -        through the command line or the START command changes as
320689 -        follows:
320691 -         ..
320692 -        non-executable files may be invoked through their file
320693 -        association just by typing the name of the file as a command.
320694 -        (e.g.  WORD.DOC would launch the application associated with
320695 -        the .DOC file extension). See the ASSOC and FTYPE commands for
320696 -        how to create these associations from within a command script.
320698 -         ..
320699 -    4.  When executing an application that is a 32-bit GUI application,
320700 -        CMD.EXE does not wait for the application to terminate before
320701 -        returning to the command prompt.  This new behavior does NOT
320702 -        occur if executing within a command script.
320704 -         ..
320705 -    5.  When executing a command line whose first token is the string
320706 -        "CMD " without an extension or path qualifier, then "CMD" is
320707 -        replaced with the value of the COMSPEC variable.  This prevents
320708 -        picking up CMD.EXE from the current directory.
320709 -
320711 -         ..
320712 -    6.  When executing a command line whose first token does NOT
320713 -        contain an extension, then CMD.EXE uses the value of the
320714 -        PATHEXT environment variable to determine which extensions to
320715 -        look for and in what order.  The default value for the PATHEXT
320716 -        variable is:
320717 -
320718 -                .COM;.EXE;.BAT;.CMD
320720 -         ..
320721 -        Notice the syntax is the same as the PATH variable, with
320722 -        semicolons separating the different elements.
320724 -         ..
320725 -    7.  When searching for an executable, if there is no match on any
320726 -        extension, then looks to see if the name matches a directory
320727 -        name.  If it does, the START command launches the Explorer on
320728 -        that path.  If done from the command line, it is the equivalent
320729 -        to doing a CD /D to that path.
320730 -
320731 -
320732 -
320733 -
320734 -
320735 -
3208 -

SUBJECTS
DOS Help Listed Under Windows 2000 Command Reference
Assoc Command Used Under Start Command in Batch Files and Used with F

3404 -
340501 -  ..
340502 - ASSOC Command for Start to Launch Applications Under Windows 2000
340503 -
340504 - Guidence for the Start command requires using the assoc command, per
340505 - above. ref SDS 0 7Q3N
340506 -
340507 - DOS shows command use for assoc with ftype and Start....
340508 -
340509 -    1.  Displays or modifies file extension associations
340511 -         ..
340512 -    2.  ASSOC [.ext[=[fileType]]]
340513 -
340514 -          .ext      Specifies the file extension to associate the
340515 -                    file type with
340516 -
340517 -          fileType  Specifies the file type to associate with
340518 -                    the file extension
340520 -         ..
340521 -    3.  Type ASSOC without parameters to display the current file
340522 -        associations. If ASSOC is invoked with just a file extension,
340523 -        it displays the current file association for that file
340524 -        extension.  Specify nothing for the file type and the command
340525 -        will delete the association for the file extension.
340526 -
340527 -
340528 -
340529 -
340530 -
340531 -
3406 -

SUBJECTS
DOS Help Listed Under Windows 2000 Command Reference
Start Launch Applications Based on Associations and File Type Extensi
Applications Launch Start Command in Batch File Based on Associations

3605 -
360601 -  ..
360602 - FTYPE Command for Start to Launch Applications Under Windows 2000
360603 -
360604 - Guidence for the Start command requires using the assoc command, per
360605 - above. ref SDS 0 7Q3N
360606 -
360607 - DOS shows command use for ftype with assoc and Start....
360608 -
360609 -
360610 -    1.  Displays or modifies file types used in file extension associations
360612 -         ..
360613 -    2.  FTYPE [fileType[=[openCommandString]]]
360614 -
360615 -          fileType
360616 -
360617 -                Specifies the file type to examine or change
360618 -
360619 -          openCommandString
360620 -
360621 -                Specifies the open command to use when launching files
360622 -                of this type.
360624 -         ..
360625 -    3.  Type FTYPE without parameters to display the current file types
360626 -        that have open command strings defined.  FTYPE is invoked with
360627 -        just a file type, it displays the current open command string
360628 -        for that file type. Specify nothing for the open command string
360629 -        and the FTYPE command will delete the open command string for
360630 -        the file type.  Within an open command string %0 or %1 are
360631 -        substituted with the file name being launched through the
360632 -        assocation.  %* gets all the parameters and %2 gets the 1st
360633 -        parameter, %3 the second, etc.  %~n gets all the remaining
360634 -        parameters starting with the nth parameter, where n may be
360635 -        between 2 and 9, inclusive.  For example:
360636 -
360637 -            ASSOC .pl=PerlScript
360638 -            FTYPE PerlScript=perl.exe %1 %*
360639 -
360640 -        ...would allow you to invoke a Perl script as follows:
360641 -
360642 -            script.pl 1 2 3
360644 -         ..
360645 -    4.  If you want to eliminate the need to type the extensions, then
360646 -        do the following:
360647 -
360648 -            set PATHEXT=.pl;%PATHEXT%
360649 -
360650 -        ...and the script could be invoked as follows:
360651 -
360652 -            script 1 2 3
360653 -
360654 -
360655 -
360656 -
360657 -
360658 -
360659 -
360660 -
360661 -
360662 -
360663 -
3607 -