QB64Team / qb64

BASIC for the modern era.

Home Page:https://www.qb64.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Entry Point not found: SetCurrentConsoleFontEx, on Windows XP

danFbach opened this issue · comments

Describe the bug
Compiles and runs on modern systems win 10/11 and server 2008R2 (so presumably win 7 as well.)
Program compiled with qb64 v2.0 x86 on windows 11 - no issues running here or windows versions other than XP.
Error ONLY occurs in already compiled program when running on windows XP Pro Version 2002, SP3 as well as XP home edition.

Full error is:
Title: INVX.exe - Entry Point Not Found
Body: The procedure entry point SetCurrentConsoleFontEx could not be located in the dynamic link library KERNAL32.dll

To Reproduce
Steps to reproduce the behavior:
It appears that using the _Font command is what triggers this error.
I have a compatibility mode built into the program and when I disable this from running when in compatibility mode, the program runs correctly.

The code that creates an error:

font& = _LoadFont(Environ$("SYSTEMROOT") + "\Fonts\" + fontdata$(1), Val(fontdata$(2)), "monospace"): If font& > 0 Then _Font (font&)

Expected behavior
Loads the font that the user has selected.

Additional context
Happy to supply any additional details needed. TIA

Hmm, I really thought we had an #ifdef in place to avoid that. Thanks for reporting.

After much consideration, we're deciding to drop support for Windows XP with v2.0.x. We apologize for the inconvenience and recommend using v1.5 if support for XP is still required.

@danFbach Also notice that although we're dropping support for XP, there's still a separate package for v2.0.1 that will run on XP 32bit, with the issue above fixed, on our release page (https://github.com/QB64Team/qb64/releases/tag/v2.0.1) but we won't be offering support for that platform any longer.