"Nearly all" Windows API supported?

Everything else that doesn't fall into one of the other PB categories.
User avatar
bbanelli
Enthusiast
Enthusiast
Posts: 544
Joined: Tue May 28, 2013 10:51 pm
Location: Europe
Contact:

"Nearly all" Windows API supported?

Post by bbanelli »

Greetings,

http://www.purebasic.com/faq.php

Why the Windows API description isn't included in the PureBasic documentation ?
Even if PureBasic supports natively nearly all of the Windows API functions, it's impossible to include all their descriptions as it's more than 1 GB of data. You can get all the needed informations on the Microsoft site.

Out of academic curiosity, can someone name functions in Windows API not supported in Pure Basic and why?

BTW, in context of the answer of this FAQ answer, perhaps consider changing informations to information. :)
"If you lie to the compiler, it will get its revenge."
Henry Spencer
https://www.pci-z.com/
User avatar
TI-994A
Addict
Addict
Posts: 2791
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: "Nearly all" Windows API supported?

Post by TI-994A »

bbanelli wrote:Out of academic curiosity, can someone name functions in Windows API not supported in Pure Basic and why?
Hi bbanelli. In one way or another, with the exception of some newer ones introduced with Windows 8, virtually all Windows API functions can be called from within PureBasic. Native support simply means that a function is included in the built-in command set, and can be called directly without being imported, just like any PureBasic function. For example, just to name a few, these API functions are not natively supported, and must be explicitly imported before they can be used:

GetConsoleWindow() from kernel32.dll
SHGetKnownFolderIDList() from shell32.dll
CreateProcessWithLogonW() from advapi32.dll
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
User avatar
bbanelli
Enthusiast
Enthusiast
Posts: 544
Joined: Tue May 28, 2013 10:51 pm
Location: Europe
Contact:

Re: "Nearly all" Windows API supported?

Post by bbanelli »

TI-994A wrote:
bbanelli wrote:Out of academic curiosity, can someone name functions in Windows API not supported in Pure Basic and why?
Hi bbanelli. In one way or another, with the exception of some newer ones introduced with Windows 8, virtually all Windows API functions can be called from within PureBasic. Native support simply means that a function is included in the built-in command set, and can be called directly without being imported, just like any PureBasic function. For example, just to name a few, these API functions are not natively supported, and must be explicitly imported before they can be used:

GetConsoleWindow() from kernel32.dll
SHGetKnownFolderIDList() from shell32.dll
CreateProcessWithLogonW() from advapi32.dll
OK, so I just didn't understand the true meaning of "nativeness" of that statement. I fully understand you have to import Windows DLL in order to use some functions - so generally, there is no Windows function you cannot use that way! :)

Thanks for clarification.

With my best,

Bruno
"If you lie to the compiler, it will get its revenge."
Henry Spencer
https://www.pci-z.com/
Thorium
Addict
Addict
Posts: 1314
Joined: Sat Aug 15, 2009 6:59 pm

Re: "Nearly all" Windows API supported?

Post by Thorium »

bbanelli wrote: OK, so I just didn't understand the true meaning of "nativeness" of that statement. I fully understand you have to import Windows DLL in order to use some functions - so generally, there is no Windows function you cannot use that way! :)
"nativ" means they are already imported. You dont need to import them. Also PureBasic shows you the names of the parameters for API function it supports natively.
User avatar
TI-994A
Addict
Addict
Posts: 2791
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: "Nearly all" Windows API supported?

Post by TI-994A »

Thorium wrote:...Also PureBasic shows you the names of the parameters for API function it supports natively.
Hi Thorium. You're right about the quick help, although it should be noted that it's not available for all the Windows API functions (eg: CreateProcess(), GetPrinter(), ShellExecuteEx(), etc.).
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
Post Reply