>>ITEM: N01015
>>DATE: 11/14/97
>>TYPE: Bug
>>TITLE: Parameter passing bug in N_D_CAPGET/SET and N_D_PJGET
>>PRODUCT(S):
NetLib for FoxPro DOS, only
>>PLATFORM(S):
NetWare 4.x with Client32, VLM or Micosoft Service for NDS
>>SUMMARY:
N_D_CAPGET, N_D_CAPSET and N_D_PJGET sometimes fail when passing
attribute numbers via arrays.
>>MORE INFORMATION:
Problem is illustrated by the following example:
DECLARE aAttr[1], aValue[1] aAttr[1] = CAP_QUEUE =N_D_CAPGET(1,@aAttr,@aValue)
Afterwards aValue[1] may remain unchanged as if the parameter
number were ignored.
>>RESOLUTION/FIX:
There are two possible work-arounds:
- Use In-line parameters, e.g.,
cQueue = "" =N_D_CAPGET(1,CAP_QUEUE,@cQueue)
- Use string parameter names, e.g.,
DECLARE aAttr[1], aValue[1] aAttr[1] = "Queue" =N_D_CAPGET(1,@aAttr,@aValue)
If you like the convenience of using #defines, you can redefine
the various CAP_* defines to use strings instead of parameters,
e.g.,
#define CAP_STATUS "STATUS" #define CAP_COMMAND "COMMAND" #define CAP_AUTOEND "AUTOEND" #define CAP_BANNER "BANNER" #define CAP_COPIES "COPIES" #define CAP_CPL "CLP" #define CAP_FORMNO "FORMNO" #define CAP_LPP "LPP" #define CAP_NOFF "NOFF" #define CAP_NOTIFY "NOTIFY" #define CAP_QUEUE "QUEUE" #define CAP_SERVER "SERVER" #define CAP_TABS "TABS" #define CAP_TIMEOUT "TIMEOUT" #define CAP_USER "USER" #define CAP_JOBNO "JOBNO" #define CAP_RESET "RESET" #define CAP_RESETMAX "RESETMAX" #define CAP_SETUP "SETUP" #define CAP_SETUPMAX "SETUPMAX" #define CAP_DESCRIPTION "DESCRIPTION" #define CAP_FNAME "FNAME"
>>EXAMPLE(S):
>>SEE ALSO:
>>COPYRIGHT 1997 Communication Horizons
All rights reserved worldwide.
No distribution without specific consent of publisher.
Knowledgebase
Top Home