DEC Text Processing Utility Reference Manual

Total Page:16

File Type:pdf, Size:1020Kb

DEC Text Processing Utility Reference Manual DEC Text Processing Utility Reference Manual Order Number: AA–PWCCD–TE April 2001 This manual describes the elements of the DEC Text Processing Utility (DECTPU). It is intended as a reference manual for experienced programmers. Revision/Update Information: This manual supersedes the DEC Text Processing Utility Reference Manual, Version 3.1 for OpenVMS Version 7.2. Software Version: DEC Text Processing Utility Version 3.1 for OpenVMS Alpha Version 7.3 and OpenVMS VAX Version 7.3 The content of this document has not changed since OpenVMS Version 7.1. Compaq Computer Corporation Houston, Texas © 2001 Compaq Computer Corporation COMPAQ, VAX, VMS, and the Compaq logo Registered in U.S. Patent and Trademark Office. OpenVMS is a trademark of Compaq Information Technologies Group, L.P. Motif is a trademark of The Open Group. PostScript is a registered trademark of Adobe Systems Incorporated. All other product names mentioned herein may be the trademarks or registered trademarks of their respective companies. Confidential computer software. Valid license from Compaq or authorized sublicensor required for possession, use, or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor’s standard commercial license. Compaq shall not be liable for technical or editorial errors or omissions contained herein. The information in this document is provided "as is" without warranty of any kind and is subject to change without notice. The warranties for Compaq products are set forth in the express limited warranty statements accompanying such products. Nothing herein should be construed as constituting an additional warranty. ZK6020 The Compaq OpenVMS documentation set is available on CD-ROM. This document was prepared using DECdocument, Version 3.3-1b. Contents Preface ............................................................ xi 1 DECTPU Built-In Procedures Grouped According to Function 2 Descriptions of the DECTPU Built-In Procedures 2.1 DECTPU Built-In Procedures . ................................ 2–1 ABORT . ................................................ 2–2 ADD_KEY_MAP ............................................ 2–3 ADJUST_WINDOW . ........................................ 2–5 ANCHOR . ................................................ 2–9 ANY...................................................... 2–11 APPEND_LINE ............................................. 2–13 ARB...................................................... 2–15 ASCII ..................................................... 2–17 ATTACH .................................................. 2–19 BEGINNING_OF ............................................ 2–21 BREAK . ................................................ 2–23 CALL_USER ............................................... 2–24 CHANGE_CASE ............................................ 2–28 COMPILE . ................................................ 2–31 CONVERT . ................................................ 2–33 COPY_TEXT ............................................... 2–36 CREATE_ARRAY ............................................ 2–38 CREATE_BUFFER . ........................................ 2–41 CREATE_KEY_MAP . ........................................ 2–46 CREATE_KEY_MAP_LIST .................................... 2–48 CREATE_PROCESS . ........................................ 2–50 CREATE_RANGE . ........................................ 2–52 CREATE_WIDGET . ........................................ 2–55 CREATE_WINDOW . ........................................ 2–60 CURRENT_BUFFER . ........................................ 2–63 CURRENT_CHARACTER ..................................... 2–64 CURRENT_COLUMN ........................................ 2–66 CURRENT_DIRECTION ...................................... 2–68 CURRENT_LINE ............................................ 2–70 CURRENT_OFFSET . ........................................ 2–72 CURRENT_ROW ............................................ 2–74 CURRENT_WINDOW ........................................ 2–76 iii CURSOR_HORIZONTAL . .................................... 2–78 CURSOR_VERTICAL ........................................ 2–80 DEBUG_LINE . ............................................ 2–82 DEFINE_KEY . ............................................ 2–83 DEFINE_WIDGET_CLASS .................................... 2–87 DELETE .................................................. 2–89 EDIT . .................................................... 2–92 END_OF .................................................. 2–96 ERASE .................................................... 2–98 ERASE_CHARACTER ........................................ 2–100 ERASE_LINE . ............................................ 2–102 ERROR ................................................... 2–104 ERROR_LINE . ............................................ 2–106 ERROR_TEXT . ............................................ 2–108 EXECUTE ................................................. 2–110 EXIT . .................................................... 2–114 EXPAND_NAME ............................................ 2–115 FAO...................................................... 2–118 FILE_PARSE . ............................................ 2–120 FILE_SEARCH . ............................................ 2–124 FILL . .................................................... 2–127 GET_CLIPBOARD ........................................... 2–130 GET_DEFAULT . ............................................ 2–132 GET_GLOBAL_SELECT . .................................... 2–134 GET_INFO ................................................. 2–137 GET_INFO (any_keyname) .................................... 2–142 GET_INFO (any_keyword) . .................................... 2–144 GET_INFO (any_variable) . .................................... 2–146 GET_INFO (ARRAY) ......................................... 2–147 GET_INFO (array_variable) .................................... 2–148 GET_INFO (BUFFER) ........................................ 2–150 GET_INFO (buffer_variable) ................................... 2–151 GET_INFO (COMMAND_LINE) ................................ 2–157 GET_INFO (DEBUG) ......................................... 2–161 GET_INFO (DEFINED_KEY) .................................. 2–163 GET_INFO (integer_variable) .................................. 2–164 GET_INFO (KEY_MAP) . .................................... 2–165 GET_INFO (KEY_MAP_LIST) .................................. 2–166 GET_INFO (marker_variable) .................................. 2–167 GET_INFO (mouse_event_keyword) . ............................ 2–170 GET_INFO (PROCEDURES) ................................... 2–172 GET_INFO (PROCESS) . .................................... 2–173 GET_INFO (process_variable) .................................. 2–174 GET_INFO (range_variable) ................................... 2–175 GET_INFO (SCREEN) ........................................ 2–176 GET_INFO (string_variable) ................................... 2–187 GET_INFO (SYSTEM) ........................................ 2–189 iv GET_INFO (WIDGET) ........................................ 2–193 GET_INFO (widget_variable) . ................................ 2–198 GET_INFO (WINDOW) ....................................... 2–202 GET_INFO (window_variable) . ................................ 2–203 HELP_TEXT ............................................... 2–212 INDEX .................................................... 2–214 INT...................................................... 2–216 JOURNAL_CLOSE . ........................................ 2–218 JOURNAL_OPEN . ........................................ 2–219 KEY_NAME ................................................ 2–221 LAST_KEY . ................................................ 2–224 LEARN_ABORT ............................................. 2–225 LEARN_BEGIN and LEARN_END .............................. 2–226 LENGTH . ................................................ 2–230 LINE_BEGIN ............................................... 2–232 LINE_END ................................................ 2–233 LOCATE_MOUSE . ........................................ 2–234 LOOKUP_KEY .............................................. 2–236 LOWER_WIDGET . ........................................ 2–239 MANAGE_WIDGET . ........................................ 2–240 MAP...................................................... 2–241 MARK .................................................... 2–243 MATCH................................................... 2–246 MESSAGE . ................................................ 2–248 MESSAGE_TEXT . ........................................ 2–252 MODIFY_RANGE . ........................................ 2–255 MOVE_HORIZONTAL ........................................ 2–260 MOVE_TEXT ............................................... 2–262 MOVE_VERTICAL . ........................................ 2–265 NOTANY.................................................. 2–267 PAGE_BREAK .............................................. 2–269 POSITION . ................................................ 2–270 QUIT ..................................................... 2–274 RAISE_WIDGET ............................................ 2–276 READ_CHAR ............................................... 2–277 READ_CLIPBOARD . ........................................ 2–279 READ_FILE ................................................ 2–281 READ_GLOBAL_SELECT
Recommended publications
  • Keyboard Shortcuts for Windows Computers
    AbilityNet Factsheet – May 2019 Keyboard Shortcuts for Windows computers This factsheet highlights some of the actions you can carry out quickly on your computer by using key combinations rather than using the mouse to navigate menus and options. These key combinations are referred to as shortcuts as they are often a much quicker way of carrying out tasks. They can also be particularly useful for repetitive actions. AbilityNet Factsheet: Keyboard Shortcuts Page 1 of 12 www.abilitynet.org.uk/factsheets May 2019 Contents 1. What are shortcuts ............................................................................................. 3 A note on Apple (Mac) computers ........................................................................... 3 Conventions ............................................................................................................. 3 Navigating Within Windows Using the Keyboard ..................................................... 4 Reference Chart ...................................................................................................... 7 Autocorrect as a shortcut ......................................................................................... 9 2. How can AbilityNet help? ................................................................................. 10 Free advice and home visits .................................................................................. 10 My Computer My Way ........................................................................................... 10 Workplace
    [Show full text]
  • Mac Keyboard Shortcuts Cut, Copy, Paste, and Other Common Shortcuts
    Mac keyboard shortcuts By pressing a combination of keys, you can do things that normally need a mouse, trackpad, or other input device. To use a keyboard shortcut, hold down one or more modifier keys while pressing the last key of the shortcut. For example, to use the shortcut Command-C (copy), hold down Command, press C, then release both keys. Mac menus and keyboards often use symbols for certain keys, including the modifier keys: Command ⌘ Option ⌥ Caps Lock ⇪ Shift ⇧ Control ⌃ Fn If you're using a keyboard made for Windows PCs, use the Alt key instead of Option, and the Windows logo key instead of Command. Some Mac keyboards and shortcuts use special keys in the top row, which include icons for volume, display brightness, and other functions. Press the icon key to perform that function, or combine it with the Fn key to use it as an F1, F2, F3, or other standard function key. To learn more shortcuts, check the menus of the app you're using. Every app can have its own shortcuts, and shortcuts that work in one app may not work in another. Cut, copy, paste, and other common shortcuts Shortcut Description Command-X Cut: Remove the selected item and copy it to the Clipboard. Command-C Copy the selected item to the Clipboard. This also works for files in the Finder. Command-V Paste the contents of the Clipboard into the current document or app. This also works for files in the Finder. Command-Z Undo the previous command. You can then press Command-Shift-Z to Redo, reversing the undo command.
    [Show full text]
  • General Windows Shortcuts
    General Windows Shortcuts F1 Help F2 Rename Object F3 Find all files Ctrl + Z Undo Ctrl + X Cut Ctrl + C Copy Ctrl + V Paste Ctrl + Y Redo Ctrl + Esc Open Start menu Alt + Tab Switch between open programs Alt + F4 Quit program Shift + Delete Delete item permanently Shift + Right Click Displays a shortcut menu containing alternative commands Shift + Double Click Runs the alternate default command ( the second item on the menu) Alt + Double Click Displays properties F10 Activates menu bar options Shift + F10 Opens a contex t menu ( same as righ t click) Ctrl + Esc or Esc Selects the Start button (press Tab to select the taskbar, or press Shift + F10 for a context menu) Alt + Down Arrow Opens a drop‐down list box Alt + Tab Switch to another running program (hold down the Alt key and then press the Tab key to view the task‐switching window) Alt + Shift + Tab Swit ch b ackward s b etween open appli cati ons Shift Press and hold down the Shift key while you insert a CD‐ROM to bypass the automatic‐ run feature Alt + Spacebar Displays the main window's System menu (from the System menu, you can restore, move, resize, minimize, maximize, or close the window) Alt + ­ (Alt + hyphen) Displays the Multiple Document Interface (MDI) child window's System menu (from the MDI child window's System menu, you can restore, move, resize, minimize maximize, or close the child window) Ctrl + Tab Switch to t h e next child window o f a Multi ple D ocument Interf ace (MDI) pr ogram Alt + Underlined letter in Opens the menu and the function of the underlined letter
    [Show full text]
  • Towards an Intelligent Multilingual Keyboard System
    Towards an Intelligent Multilingual Keyboard System Tanapong Potipiti, Virach Sornlertlamvanich, Kanokwut Thanadkran National Electronics and Computer Technology Center, National Science and Technology Development Agency, Ministry of Science and Technology Environment, 22nd Floor Gypsum Metropolitan Tower 539/2 Sriayudhya Rd. Rajthevi Bangkok 10400 Thailand Email: [email protected], [email protected], [email protected] ABSTRACT 3 THE APPROACH This paper proposes a practical approach employing n-gram 3.1 Overview models and error-correction rules for Thai key prediction and In the traditional Thai keyboard input system, a key button with Thai-English language identification. The paper also proposes the help of language-switching key and the shift key can output rule-reduction algorithm applying mutual information to reduce 4 different characters. For example, in the Thai keyboard the ‘a’- the error-correction rules. Our algorithm reported more than key button can represent 4 different characters in different 99% accuracy in both language identification and key modes as shown in Table 1. prediction. Table 1: A key button can represent different characters in 1 INTRODUCTION different modes. For Thai users, there are always two annoyances while typing English Mode English Mode Thai Mode Thai Mode without Shift with Shift without Shift with Shift Thai-English bilingual documents, which are usual for Thais. ¢ § The first is when the users want to switch from typing Thai to ‘a’ ‘A’ ‘ ’‘’ English, they have to input a special key to tell the operating system to change the language mode. Further, if the language- However, using NLP technique, the Thai-English switching key is ignored, they have to delete the token just typed keyboard system which can predict the key users intend to type and re-type that token after language switching.
    [Show full text]
  • Openvms: an Introduction
    The Operating System Handbook or, Fake Your Way Through Minis and Mainframes by Bob DuCharme VMS Table of Contents Chapter 7 OpenVMS: An Introduction.............................................................................. 7.1 History..........................................................................................................................2 7.1.1 Today........................................................................................................................3 7.1.1.1 Popular VMS Software..........................................................................................4 7.1.2 VMS, DCL................................................................................................................4 Chapter 8 Getting Started with OpenVMS........................................................................ 8.1 Starting Up...................................................................................................................7 8.1.1 Finishing Your VMS Session...................................................................................7 8.1.1.1 Reconnecting..........................................................................................................7 8.1.2 Entering Commands..................................................................................................8 8.1.2.1 Retrieving Previous Commands............................................................................9 8.1.2.2 Aborting Screen Output.........................................................................................9
    [Show full text]
  • Keyboard Shortcuts
    NBSIA Member Services Presents NBSIA Member Services Presents KeyboardKeyboard ShortcutsShortcuts KeyboardKeyboard ShortcutsShortcuts Using these keyboard shortcuts to perform simple yet common computer tasks Using these keyboard shortcuts to perform simple yet common computer tasks can help save time as well as prevent repetitive motion use of the computer mouse. To can help save time as well as prevent repetitive motion use of the computer mouse. To use these shortcuts simply press and hold down the keys shown for the desired result. use these shortcuts simply press and hold down the keys shown for the desired result. Ctrl X =CUT Ctrl S =SAVE Ctrl X =CUT Ctrl S =SAVE Select Text Select Text Ctrl C =COPY Ctrl P =PRINT Ctrl C =COPY Ctrl P =PRINT Select Text Select Text Ctrl V =PASTE Ctrl Z =UNDO Ctrl V =PASTE Ctrl Z =UNDO Select Text Select Text Ctrl B =BOLD Ctrl Y =REDO Ctrl B =BOLD Ctrl Y =REDO Select Text Select Text Ctrl I =ITALIC Ctrl A =SELECT ALL Ctrl I =ITALIC Ctrl A =SELECT ALL Select Text Select Text Ctrl U =UNDERLINE Ctrl =COPY FILE Ctrl U =UNDERLINE Ctrl =COPY FILE Select Text Click & Drag Select Text Click & Drag PRINT SINGLE MONITOR PRINT DOUBLE MONITOR PRINT SINGLE MONITOR PRINT DOUBLE MONITOR Alt SCREEN Ctrl SCREEN Alt SCREEN Ctrl SCREEN SysRq = SysRq = = = SCREEN SHOT SCREEN SHOT SysRq SCREEN SHOT SysRq SCREEN SHOT TOGGLE OPEN TOGGLE OPEN Alt Tab = F1 =HELP F5 =REFRESH Alt Tab = F1 =HELP F5 =REFRESH WINDOWS WINDOWS SYMBOLS SYMBOLS Hold down the ALT button then enter the four digit code using the 10-key number Hold down the ALT button then enter the four digit code using the 10-key number pad.
    [Show full text]
  • Newline Characters Should Map to a Completely Ignorable Collation Element in the DUCET Marc Lodewijck (Brussels, Belgium) October 28, 2016
    Proposal for consideration by UTC Newline characters should map to a completely ignorable collation element in the DUCET Marc Lodewijck (Brussels, Belgium) October 28, 2016 Assume the following records, which compare tertiary-equal: "xy#", "xy", "x#y" With the UCA “Shifted” option for handling variable collation elements, the sorting result is as follows: [3] x#y [1EFF 1F0B | 0020 0020 | 0002 0002 | FFFF 038F FFFF |] [2] xy [1EFF 1F0B | 0020 0020 | 0002 0002 | FFFF FFFF |] [1] xy# [1EFF 1F0B | 0020 0020 | 0002 0002 | FFFF FFFF 038F |] Inserting a variable character makes a string sort before the string without it; and appending a variable character makes a string sort after the string without it. With the “Shift-trimmed” option, this is the outcome: [2] xy [1EFF 1F0B | 0020 0020 | 0002 0002 | |] [3] x#y [1EFF 1F0B | 0020 0020 | 0002 0002 | FFFF 038F |] [1] xy# [1EFF 1F0B | 0020 0020 | 0002 0002 | FFFF FFFF 038F |] Inserting a variable character anywhere makes a string sort after the string without it; and the string having a variable character in the lowest position makes it sort before the other string. The “Shift-trimmed” option is the same as “Shifted”, except that trailing high-quaternary weights (from regular characters) are removed from the sort key. This means that, compared with “Shifted”, the “Shift-trimmed” option sorts strings without variable characters before ones with variable characters added—the string without variable characters has an empty fourth level. Now suppose we wish to sort the following text strings stored in a file: 1/6 It is obvious that we won’t strip off the newline character(s) at the end of each line, before it is processed further.
    [Show full text]
  • How to Enter Foreign Language Characters on Computers
    How to Enter Foreign Language Characters on Computers Introduction Current word processors and operating systems provide a large number of methods for writing special characters such as accented letters used in foreign languages. Unfortunately, it is not always obvious just how to enter such characters. Moreover, even when one knows a method of typing an accented letter, there may be a much simpler method for doing the same thing. This note may help you find the most convenient method for typing such characters. The choice of method will largely depend on how frequently you have to type in foreign languages. 1 The “ALT Key” Method This is the most common method of entering special characters. It always works, regardless of what pro- gram you are using. On both PCs and Macs, you can write foreign characters in any application by combining the ALT key (the key next to the space bar) with some alphabetic characters (on the Mac) or numbers (on PCs), pro- vided you type numbers on the numeric keypad, rather than using the numbers at the top of the keyboard. To do that, of course, also requires your NumLock Key to be turned on, which it normally will be. For example, On the Mac, ALT + n generates “ñ”. On the PC, ALT + (number pad) 164 or ALT + (number pad) 0241 generate “ñ”. A list of three- and four-digit PC codes for some common foreign languages appears at the end of this note. 2 The “Insert Symbol” Method Most menus in word processors and other applications offer access to a window displaying all the printable characters in a particular character set.
    [Show full text]
  • STAT579: SAS Programming
    Note on homework for SAS date formats I'm getting error messages using the format MMDDYY10D. even though this is listed on websites for SAS date formats. Instead, MMDDYY10 and similar (without the D seems to work for both hyphens and slashes. Also note that a date format such as MMDDYYw. means that the w is replaced by a number indicating the width of the string (e.g., 8 or 10). SAS Programming SAS data sets (Chapter 4 of Cody book) SAS creates data sets internally once they are read in from a Data Step. The data sets can be stored in different locations and accessed later on. The default is to store them in WORK, so if you create a data set using data adress; the logfile will say that it created a SAS dataset called WORK.ADDRESS. You can nagivate to the newly created SAS dataset. In SAS Studio, go to the Libraries Tab on the left (Usually appears toward the bottom until you click on it). Then WORK.ADDRESS should appear. SAS Programming SAS data sets SAS Programming SAS data sets SAS Programming Making datasets permanent You can also make SAS datasets permanent. This is done using the libname statement. E.g. SAS Programming Permanent SAS datasets The new dataset should be available to be accessed directly from other SAS programs without reading in original data. This can save a lot of time for large datasets. If the SAS dataset is called mydata, the SAS dataset will be called mydata.sas7bdat, where the 7 refers to the datastructures used in version 7 (and which hasn't changed up to version 9).
    [Show full text]
  • Guide to the DEC Text Processing Utility
    Guide to the DEC Text Processing Utility Order Number: AA–PWCBD–TE April 2001 This manual introduces the DEC Text Processing Utility (DECTPU). It is for experienced programmers as well as new users of DECTPU. Revision/Update Information: This manual supersedes the Guide to the DEC Text Processing Utility, Version 3.1 Software Version: OpenVMS Alpha Version 7.3 OpenVMS VAX Version 7.3 The content of this manual has not changed sinced OpenVMS Version 7.1 Compaq Computer Corporation Houston, Texas © 2001 Compaq Computer Corporation Compaq, VAX, VMS and the Compaq logo Registered in U.S. Patent and Trademark Office. OpenVMS is a trademark of Compaq Information Technologies Group, L.P. in the United States and other countries. PostScript is a registered trademark of Adobe Systems Incorporated. Motif is a registered trademark of the The Open Group. All other product names mentioned herein may be the trademarks or registered trademarks of their respective companies. Confidential computer software. Valid license from Compaq or authorized sublicensor required for possession, use, or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor’s standard commercial license. Compaq shall not be liable for technical or editorial errors or omissions contained herein. The information in this document is provided "as is" without warranty of any kind and is subject to change without notice. The warranties for Compaq products are set forth in the express limited warranty statements accompanying such products. Nothing herein should be construed as constituting an additional warranty.
    [Show full text]
  • Startup Keyboard Shortcuts Press the Key Or Key Combination Until The
    Startup keyboard shortcuts Press the key or key combination until the expected function occurs/appears (for example, hold Option during startup until Startup Manager appears, or Shift until "Safe Boot" appears). Tip: If a startup function doesn't work and you use a third-party keyboard, connect an Apple keyboard and try again. Key or key combination What it does Option Display all bootable volumes (Startup Manager) Shift Perform Safe Boot (start up in Safe Mode) C Start from a bootable disc (DVD, CD) T Start in FireWire target disk mode N Start from NetBoot server X Force Mac OS X startup (if non-Mac OS X startup volumes are present) Command-V Start in Verbose Mode Command-S Start in Single User Mode To use a keyboard shortcut, or key combination, you press a modifier key with a character key. For example, pressing the Command key (the key with a symbol) and the "c" key at the same time copies whatever is currently selected (text, graphics, and so forth) into the Clipboard. This is also known as the Command-C key combination (or keyboard shortcut). A modifier key is a part of many key combinations. A modifier key alters the way other keystrokes or mouse clicks are interpreted by Mac OS X. Modifier keys include: Command, Control, Option, Shift, Caps Lock, and the fn key (if your keyboard has a fn key). Here are the modifier key symbols you can see in Mac OS X menus: (Command key) - On some Apple keyboards, this key also has an Apple logo ( ) (Control key) (Option key) - "Alt" may also appear on this key (Shift key) (Caps Lock) - Toggles Caps Lock on or off fn (Function key) Startup keyboard shortcuts Press the key or key combination until the expected function occurs/appears (for example, hold Option during startup until Startup Manager appears, or Shift until "Safe Boot" appears).
    [Show full text]
  • Keyboard Scan Code Specification
    Windows Platform Design Notes Designing Hardware for the Microsoft® Windows® Family of Operating Systems Keyboard Scan Code Specification Abstract: This specification details the PS/2 Scan Codes and USB Usage Tables that are validated for compliance to the Microsoft® Windows® Logo Program testing standard. This document details the alternative make and break PS/2 scan code and USB code response for the Windows Logo Key and Application Keys, plus Advanced Configuration and Power Interface (ACPI) power controls. This specification was previous published, with the same content, as “Windows Hardware Quality Labs Keyboard Specification” and also referred to as “Windows Keys Specification” and “New Keys Specification.” Revision 1.3a — March 16, 2000 Disclaimer: The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. Microsoft Corporation may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. The furnishing of this document does not give you any license to the patents, trademarks, copyrights, or other intellectual property rights except as expressly provided in any written license agreement from Microsoft Corporation. Microsoft does not make any representation or warranty regarding specifications in this document or any product or item developed based on these specifications.
    [Show full text]