![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: I read the wiz_4064 about $getdvi DEVCLASS and DEVTYPE codes... My question is when you search the $DCDEF and have multiple returns, how do you distinguish the correct one. Is there a more generic way to do this in C with the system service calls? I did f$getdvi("EWA0:","DEVTYPE") which returned 68. The search returns $EQU DT$_RZ57I 68 $EQU DT$_TZ875 68 $EQU DT$_DZ730 68 $EQU DT$_EW_DE435 68 Show Device obviously knows since I get : $ show device/full ewa0: Device EWA0:, device type DE435, is online, network device, device is a template only. Error count 0 Operations completed 0 Owner process "" Owner UIC [SYSTEM] Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G,W Reference count 0 Default buffer size 512 The Answer is : Device type and device class operate in conjunction, with the type codes being specific to a class. These codes are typically valid only for older devices and for devices that have required explicit OpenVMS changes for support. That said, identification of the device should typically be made via DCL such as: $ x=f$getdvi("sys$sysdevice","DEVICE_TYPE_NAME") $ sho sym x X = "RZ29B" $ x=f$getdvi("EWA0","DEVICE_TYPE_NAME") $ sho sym x X = "DE435" Or via the associated sys$getdvi and sys$getdviw system services.
|