Hello,
I am enthusiast to use MiniGUI, ad thank you for your good work.
I am version: Harbour MiniGUI Extended Edition 17.06 (Update 2)
in this code:
HB_FUse(my_chlst)
msgbox(HB_FEof())
WHILE ! HB_FEof()
c1Line := HB_FReadLN()
..................................
HB_FSkip()
ENDDO
HB_FUse()
HB_FEof()
HB_FEof() remain always .T. , I see it in msgbox, and the while not work.
The file exist, and is not empty.
Have you some suggestion?
Is a my error or a bug?
It is not exactly your fault nor a bug either.
I'm guessing that you're using minigui bundled with hb34.
If this is the case, all what you have to do is to replace
HB_FEof() for hb_FAtEof()
and your code should work as expected.
Yes.It's probably even better to use the original FT_F*() function names(from hbnf lib). Specifically FT_FEOF() for the above function. Thisremoves the ambiguity introduced when a simplified and renamedcopy of these functions were copy-pasted into hbmisc (long ago),and creating a name collision with core HB_FEOF().
It's now too late to change HB_FEOF().
But, few years ago theHB_V*() API was introduced, which always RTEs on wrongarguments. It has some useful features and much betterOPEN/CREATE semantics. I recommend to check it out.
(Harbour 3.4 was updated to use this new API internally everywhere.)
yes of course! I'm aware of hb_vf** family functions --time ago I've created a documentation page
about them, (still incomplete, but keep enhancing it) in a wiki I maintain for that purpose.