Support Forum
The Forums are a place to find answers on a range of Fortinet products from peers and product experts.
bitflip
New Contributor

FortiClient VPN install fails with a nonsensical "FortiClient VPN requires Windows 10 or higher"

There doesn't seem to be any way to report bugs like this so I'll post it here: Installing the free FortiClient VPN under Windows 11 fails with the nonsensical error message "FortiClient VPN requires Windows 10 or higher".  This is due to a bug in the installer, it tries to call NetWkstaGetInfo() alongside the more obvious GetVersionEx() and if it fails it bails out with that error message.

What's happening is that GetVersionEx() returns version 602 = Windows 8 while NetWkstaGetInfo() returns version 1000 = Windows 10/11.  Since the NetWkstaGetInfo() call has failed and so the version is never updated to 1000, the installer continues while thinking Windows 11 is Windows 8 and bails with the nonsensical error message.

7 REPLIES 7
AEK
SuperUser
SuperUser

Which FortiClient VPN version?

It seem many community members have installed FCT VPN 7.4.0 on Win11 without such issue.

AEK
AEK
bitflip
New Contributor

Version 7.4.0.1658, the latest one.  To see the bug, temporarily disable the Workstation service (which will cause NetWkstaGetInfo() to fail) and try installing.

Mr-Bry
New Contributor

Offering an update.  I attempted this on W11.  Did not take.  I'm open to suggestions.

bitflip

Uhh, I'm not seeing what that has to do with the fact that the FortiClient installer has a bug in its version checking code.  Is that the correct link?

Mr-Bry
New Contributor

Hello BitFlip.  I'm with an IT shop experiencing the same "FortiClient VPN requires Windows 10 or higher" error.  We're running Windows 11, with full updates.  The version we had the problem with is FortiClientVPNSetup_7.4.0.1658_x64.exe.  I believe this is the latest.

This group offered an option to nominate your post 
into a knowledge base article, so I took it.  I hope this catches Fordinet's attention, and they manage to come up with a solve, patch or workaround.

Did anyone here find a viable solution?  The web is short on clues.  After working the problem, the only solution we could come up with is running a slightly earlier version.

I did try the "temporarily disable the Workstation service" suggested in this thread.  No go.

If it is what you said, then Fordinet should simply roll forward with an incremental update, or roll on with the next version, in either case, fixing the bug along the way.

If Fordinet could get involved in the community thread itself, that would be great also.

bitflip
New Contributor

Temporarily disabling the Workstation service is a means of demonstrating the presence of the bug by causing the NetWkstaGetInfo() call to fail, it doesn't fix it.  From memory I worked around it by patching the return value in a debugger, but this isn't a scalable solution - Fortinet needs to fix the bug (actually several bugs) in their software so that it correctly checks the version.  GetVersionEx() has been deprecated by Microsoft for a long time, in any case Fortinet is using it incorrectly and identifying Windows 10 or 11 as Windows 8, and then calling NetWkstaGetInfo() which is guaranteed to fail under certain circumstances.  The fact that it usually appears to work is because of a series of bugs that cancel each other out most of the time.

 

The correct, and portable, way to do it is with IsWindows10OrGreater().

Announcements
Check out our Community Chatter Blog! Click here to get involved
Labels
Top Kudoed Authors