home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / os / vms / 19863 < prev    next >
Encoding:
Internet Message Format  |  1992-12-24  |  1.4 KB

  1. Path: sparky!uunet!wupost!uwm.edu!linac!att!ucbvax!lrw.com!leichter
  2. From: leichter@lrw.com (Jerry Leichter)
  3. Newsgroups: comp.os.vms
  4. Subject: RE: DCL symbols from an image
  5. Message-ID: <9212242217.AA28371@uu3.psi.com>
  6. Date: 24 Dec 92 21:17:38 GMT
  7. Sender: daemon@ucbvax.BERKELEY.EDU
  8. Distribution: world
  9. Organization: The Internet
  10. Lines: 26
  11.  
  12.  
  13.     I am writing an application which must not only get symbols, but set
  14.     DCL  symbols.  I am unable to use the LIB$GET_SYMBOL and
  15.     LIB$SET_SYMBOL services  because I need to be able to work with
  16.     integers as well.  Does anyone have an  example (C or MACRO) that does
  17.     this?
  18.  
  19. It is *impossible* to set numeric symbols from a user-mode program, short of
  20. doing something like writing a command file that does the appropriate defini-
  21. tions and then using LIB$DO_COMMAND to invoke it on completion.  The interface
  22. to do this simply does not exist, and you can't write it in user mode, no
  23. matter what language you use:  The symbol tables are owned by DCL and are
  24. protected against user-mode modification.
  25.  
  26. LIB$GET_SYMBOL will happily retrieve a numerical symbol for you, converting it
  27. to a decimal string first.  You can't tell what the form of the original
  28. symbol was.
  29.  
  30.            I would also like to be able to determine whether the symbol
  31.     was/is global or local on the get, and to specify global or local on
  32.     the set.
  33.  
  34. This is provided by both LIB$xxx_SYMBOL routines (table-type-indicator
  35. argument); details in the documentation.
  36.                             -- Jerry
  37.  
  38.