IT-Consultant: José Roca (PBWIN 10+/PBCC 6+) (Archive only) > Windows API Headers

Windows API Headers III v.1.06

(1/4) > >>

José Roca:
 
This project is an effort to translate the C headers of the Microsoft Platform SDK for Windows to PowerBASIC™. This version has been updated using the SDK for Windows 7.1.

These headers are freeware, not public domain. This means that you can use them for your own purposes, even in commercial applications, without paying a fee, but not to make derivative works from, sell or redistribute without permission. Also you must assume the entire risk of using them. Downloading the software indicates that you accept these terms.

Because of the use of new data types only available in PNWIN 10.0+ and PBCC 6.0+ and other features, they can only be used with the new compilers.

You must also be aware that these headers are not extensions to the ones provided with the compiler, but a full replacement. Therefore, you must not mix them with the PowerBASIC include files in any way, neither directly (via #INCLUDE), nor indirectly (via the include path in the IDE).

Unzip the attached file to a folder of your choice and replace the PB Include path in the PB Ide or the editor that you are using to that folder instead of C:\PBWin10\WinApi.

The wrapper functions for the Common Controls have been removed from CommCtrl.inc and placed in the following individual files. Therefore, the use of constants such %NOTOOLBAR, %NOUPDOWN, etc., is no longer needed. Just #INCLUDE the wanted files in your application.

AnimateCtrl.inc (Animation control)
ButtonCtrl.inc (Button control)
ComboBoxCtrl.inc (ComboBox control)
ComboBoxExCtrl.inc (ComboBoxEx control)
DateTimeCtrl.inc (Date Time control)
EditCtrl.inc (Edit control)
HeaderCtrl.inc (Header control)
HotKeyCtrl.inc (Hot Key control)
IPAddressCtrl.inc (IP Address control)
ListBoxCtrl.inc (ListBox control)
ListViewCtrl.inc (ListView control)
MonthCalCtrl.inc (Month Calendar control)
PagerCtrl.inc (Pager control)
ProgressBarCtrl.inc (Progress Bar control)
RebarCtrl.inc (Rebar control)
RichEditCtrl.inc (Rich Edit control)
ScrollBarCtrl.inc (Scroll Bar control)
StaticCtrl.inc (Static control)
StatusbarCtrl.inc (Status Bar control)
SysLinkCtrl.inc (SysLink control)
TabCtrl.inc (Tab control)
TaskDialogCtrl.inc (Task Dialog control)
ToolbarCtrl.inc (Toolbar control)
TrackbarCtrl.inc (Track Bar control)
TreeViewCtrl.inc (TreeView control)
UpDownCtrl.inc (UpDown control)

There are 1,199 files using 78,456,253 bytes.

José Roca:
What is new in version 1.06

- IDispatchEx.inc: Inherits from IDispatch, not IUnknown. Thanks to Dominc Mitchell for reporting it.

- Typo in UrlEscapeW. Thanks to Holger Taschenberger.

- Added ANSI version to AfxSetWindow function. Thanks to Paul Squires.

- Modified alignment of substructures in XLOPER12 from BYTE to DWORD. Thanks to E. Dingsor.

- Typo in TreeView_GetISearchStringW.

- Added BYVAL to some functions that call CoTaskMemFree to avoid leaks if using the constant %USEBDECL (for compatibility with the PowerBASIC declares).

- Added the SYSTEM_POWER_INFORMATION structure to WinNT.inc (accidentally ommited from the C++ WinNT.h header).

- Modified the GetHostAddr function.

- Modified GdipAnimCtx by request of Gary Barnes.

- Updated SQLite to version 3.8.5.

- Updated FreeImage.inc to versión 3.16.

Holger Taschenberger:
Dear José,

in some of your CWindows examples (see for example <http://www.powerbasic.com/support/pbforums/showthread.php?p=458304#post458304> post #4)
your Winmain starts with:

' // Set process DPI aware
   If AfxGetWindowsVersion => 6 Then SetProcessDPIAware

this is probably not what you wanted to do because it renders the exe incompatible with Windows XP
(because of static linking to 'SetProcessDPIAware' which does not exist on that OS)

your headers have a function 'AfxSetProcessDPIAware' which uses dynamic linking and could be a better choice here:
' // Set process DPI aware
   If AfxGetWindowsVersion => 6 Then AfxSetProcessDPIAware

Thanks for all your hard work,
   Holger

James C. Fuller:
José,
  Did I miss it or is there no Afx MessageBox wrapper specifically for use with PBCC ?


James

José Roca:
There is not an AfxMessageBox wrapper, neither for PBCC nor for PBWIN. You can use the MessageBox API function.

Navigation

[0] Message Index

[#] Next page

Go to full version