[Info-vax] Howto can I call the undocumented "set watch/class=dir" in an own program and fetch the output in my program?
Arne Vajhøj
arne at vajhoej.dk
Sat Sep 30 11:32:48 EDT 2023
On 9/30/2023 10:03 AM, Arne Vajhøj wrote:
> On 9/27/2023 6:45 AM, Ian Miller wrote:
>> On Tuesday, September 26, 2023 at 6:30:06 PM UTC+1,
>> vax... at googlemail.com wrote:
>>> Am 26.09.2023 um 17:53 schrieb Volker Halle via Info-vax:
>>>> Eberhard Heuser schrieb am Dienstag, 26. September 2023 um
>>>> 16:01:15 UTC+2:
>>>>> So the question is what output channel is been used by QXP?
>>>>
>>>> the XQP (in module [F11X]DISPAT) in routine NOTIFY_AST (run as a
>>>> supervisor mode AST) writes the output to SYS$OUTPUT using a RMS
>>>> $PUT call.
>>>>
>>>> By default SYS$OUTPUT is a supervisor mode confined logical name,
>>>> which points to the 'terminal device'.
>>>>
>>>> Question: can this be re-directed ?
> >>
> >> Yes, "define/super" redirects the output to a file.
>>
>> You can create a mailbox, define SYS$OUTPUT to that mailbox then read
>> the mailbox to see the file watch messages from the XQP. Of course
>> you see everything that is sent to SYS$OUTPUT but the XQP File Watch
>> messages all start with %XQP so can be detected.
>
> Yes. But it looks like the define need to be done by DCL.
>
> I did a little test trying to create the mailbox and defining
> the logical from code and I don't think XQP does a SYS$OPEN
> on whatever SYS$OUTPUT points to - I think it uses the
> the first 4 bytes of the SYS$OUTPUT logical value to find a
> reference to the file DCL already opened and just
> SYS$PUT to that.
>
> And I don't know how to stuff a reference to a newly
> created mailbox in there programmatically.
Or to rephrase - I can not find:
LIB$OPEN_PROCESS_PERMANENT_FILE
:-)
Arne
More information about the Info-vax
mailing list