|
> in a CL program using addenvvar. I'll have to admint that since I am a 400 > programmer I don't know ILE at all. It gets this error: AFIAK, ILE doesn't exist anywhere but the 400... so being a 400 programmer and ILE are not mutually exclusive :) > And here's the program: > DGetEnv PR * ExtProc('GetEnv') > DEnvData@ * Value Options(*String) > Dgalflibr S 16A Based(EnvData@) > C *entry plist > C parm envlibr 16 > C* movel *blanks galflibr 16 > C eval EnvData@ = GetEnv('GALFLIBR') > C movel galflibr envlibr > C MOVE *ON *INLR > C RETURN 'EnvData@' isn't defined anywhere in this program! This shouldn't even compile... The prototype is okay, but change the rest of the program to look more like this: C *entry plist C parm envlibr 16 C eval envlibr = %Str(GetEnv('GALFLIBR')) C eval *inlr = *On C return What I'm doing is using the %Str function (which works similarly to options(*string) ,except it goes the other direction) to convert the results of GetEnv from C string format to RPG. Also, make sure you pass a parameter to this program, or it'll crash with the 'pointer or parameter' error. Make sure also that you bind your program to the QC2LE binding directory. Hope that helps... I don't have an AS/400 handy to test it out :( but it should be very close, I've called GetEnv without any problems before...
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.