diff options
author | marco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2011-05-27 17:21:19 +0000 |
---|---|---|
committer | marco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2011-05-27 17:21:19 +0000 |
commit | bfaf26ad78ef8a4056d1972e4e5377f26b84dc18 (patch) | |
tree | e4534912fcbab9735c96160ccd5fa0c02c8bbee5 | |
parent | fb6daf010ff275e5f3628ca8a758d28858886274 (diff) | |
download | fpc-bfaf26ad78ef8a4056d1972e4e5377f26b84dc18.tar.gz |
--- Merging r17474 into '.':
U packages/winunits-base/Makefile.fpc
A packages/winunits-base/src/win9xwsmanager.pp
U packages/winunits-base/src/buildwinutilsbase.pp
C packages/winunits-base/Makefile
--- Merging r17513 into '.':
U packages/winunits-base/src/mmsystem.pp
--- Merging r17514 into '.':
U packages/fcl-db/tests/sqldbtoolsunit.pas
Summary of conflicts:
Text conflicts: 1
# revisions: 17474,17513,17514
------------------------------------------------------------------------
r17474 | florian | 2011-05-15 20:27:17 +0200 (Sun, 15 May 2011) | 1 line
Changed paths:
M /trunk/packages/winunits-base/Makefile
M /trunk/packages/winunits-base/Makefile.fpc
M /trunk/packages/winunits-base/src/buildwinutilsbase.pp
A /trunk/packages/winunits-base/src/win9xwsmanager.pp
+ win9xwsmanager unit provided by Bart Broersma, resolves #17381
------------------------------------------------------------------------
------------------------------------------------------------------------
r17513 | florian | 2011-05-20 22:04:40 +0200 (Fri, 20 May 2011) | 1 line
Changed paths:
M /trunk/packages/winunits-base/src/mmsystem.pp
* fixes issues of mmsystem mentioned in #19385 as well as some more
------------------------------------------------------------------------
------------------------------------------------------------------------
r17514 | marco | 2011-05-20 22:15:21 +0200 (Fri, 20 May 2011) | 2 lines
Changed paths:
M /trunk/packages/fcl-db/tests/sqldbtoolsunit.pas
* add mysql51 to MySqlTypes
------------------------------------------------------------------------
git-svn-id: http://svn.freepascal.org/svn/fpc/branches/fixes_2_4@17575 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | packages/fcl-db/tests/sqldbtoolsunit.pas | 2 | ||||
-rw-r--r-- | packages/winunits-base/Makefile | 122 | ||||
-rw-r--r-- | packages/winunits-base/Makefile.fpc | 3 | ||||
-rw-r--r-- | packages/winunits-base/src/buildwinutilsbase.pp | 2 | ||||
-rw-r--r-- | packages/winunits-base/src/mmsystem.pp | 12 | ||||
-rw-r--r-- | packages/winunits-base/src/win9xwsmanager.pp | 215 |
6 files changed, 286 insertions, 70 deletions
diff --git a/packages/fcl-db/tests/sqldbtoolsunit.pas b/packages/fcl-db/tests/sqldbtoolsunit.pas index 6ff5f9df8a..0a76640fec 100644 --- a/packages/fcl-db/tests/sqldbtoolsunit.pas +++ b/packages/fcl-db/tests/sqldbtoolsunit.pas @@ -11,7 +11,7 @@ uses type TSQLDBTypes = (mysql40,mysql41,mysql50,postgresql,interbase,odbc,oracle,sqlite3); -const MySQLdbTypes = [mysql40,mysql41,mysql50]; +const MySQLdbTypes = [mysql40,mysql41,mysql50,mysql51]; DBTypesNames : Array [TSQLDBTypes] of String[19] = ('MYSQL40','MYSQL41','MYSQL50','POSTGRESQL','INTERBASE','ODBC','ORACLE','SQLITE3'); diff --git a/packages/winunits-base/Makefile b/packages/winunits-base/Makefile index b54af5fc57..8a8788d1a0 100644 --- a/packages/winunits-base/Makefile +++ b/packages/winunits-base/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/02/22] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2011/05/18] # default: all MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-solaris x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded mipsel-linux @@ -447,184 +447,184 @@ ifeq ($(FULL_TARGET),mipsel-linux) override TARGET_UNITS+=buildwinutilsbase endif ifeq ($(FULL_TARGET),i386-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-win32) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-os2) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-beos) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-netware) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-emx) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-wince) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-wince) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-gba) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-nds) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 +override TARGET_IMPLICITUNITS+=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 win9xwsmanager endif ifeq ($(FULL_TARGET),i386-linux) override TARGET_RSTS+=jwawintype comconst diff --git a/packages/winunits-base/Makefile.fpc b/packages/winunits-base/Makefile.fpc index b4a5a7c135..23fbf45bd0 100644 --- a/packages/winunits-base/Makefile.fpc +++ b/packages/winunits-base/Makefile.fpc @@ -12,7 +12,8 @@ packages=fcl-registry fcl-base [target] units=buildwinutilsbase implicitunits=flatsb winver mmsystem comobj comconst commdlg commctrl ole2 activex shellapi shlobj oleserver \ - shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 + shfolder richedit imagehlp wininet uxtheme dwmapi multimon htmlhelp winutils comserv winspool imm imm_dyn nb30 \ + win9xwsmanager examples=examples diff --git a/packages/winunits-base/src/buildwinutilsbase.pp b/packages/winunits-base/src/buildwinutilsbase.pp index 9877d6ea11..e16b519683 100644 --- a/packages/winunits-base/src/buildwinutilsbase.pp +++ b/packages/winunits-base/src/buildwinutilsbase.pp @@ -24,7 +24,7 @@ uses flatsb, winver, mmsystem, comconst, commctrl, comobj, commdlg, ole2, activex, shellapi, shlobj, oleserver, shfolder, richedit, imagehlp, wininet, uxtheme, dwmapi, multimon, htmlhelp, winutils, - comserv, winspool, imm, imm_dyn, nb30; + comserv, winspool, imm, imm_dyn, nb30, win9xwsmanager; implementation diff --git a/packages/winunits-base/src/mmsystem.pp b/packages/winunits-base/src/mmsystem.pp index 223df32c9a..31917a91fc 100644 --- a/packages/winunits-base/src/mmsystem.pp +++ b/packages/winunits-base/src/mmsystem.pp @@ -1002,7 +1002,7 @@ Type dwFlags: DWORD; dwLoops: DWORD; lpNext: PWAVEHDR; - reserved: DWORD; + reserved: DWORD_PTR; End; WAVEHDR = _wavehdr; TWAVEHDR= WAVEHDR; @@ -2437,9 +2437,9 @@ Function mmioSendMessage(x1: HMMIO; x2: UINT; x3: LPARAM; x4: LPARAM): LRESULT;s Function mmioDescend(x1: HMMIO; x2: LPMMCKINFO; x3: PMMCKINFO; x4: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'mmioDescend'; Function mmioAscend(x1: HMMIO; x2: LPMMCKINFO; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'mmioAscend'; Function mmioCreateChunk(x1: HMMIO; x2: LPMMCKINFO; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'mmioCreateChunk'; -Function mciSendCommandA(x1: MCIDEVICEID; x2: UINT; x3: DWORD; x4: DWORD): MCIERROR;stdcall; external 'winmm.dll' name 'mciSendCommandA'; -Function mciSendCommandW(x1: MCIDEVICEID; x2: UINT; x3: DWORD; x4: DWORD): MCIERROR;stdcall; external 'winmm.dll' name 'mciSendCommandW'; -Function mciSendCommand(x1: MCIDEVICEID; x2: UINT; x3: DWORD; x4: DWORD): MCIERROR;stdcall; external 'winmm.dll' name +Function mciSendCommandA(x1: MCIDEVICEID; x2: UINT; x3: DWORD_PTR; x4: DWORD_PTR): MCIERROR;stdcall; external 'winmm.dll' name 'mciSendCommandA'; +Function mciSendCommandW(x1: MCIDEVICEID; x2: UINT; x3: DWORD_PTR; x4: DWORD_PTR): MCIERROR;stdcall; external 'winmm.dll' name 'mciSendCommandW'; +Function mciSendCommand(x1: MCIDEVICEID; x2: UINT; x3: DWORD_PTR; x4: DWORD_PTR): MCIERROR;stdcall; external 'winmm.dll' name {$ifdef UNICODE}'mciSendCommandW' {$else}'mciSendCommandA' {$endif}; Function mciSendStringA(x1: LPCSTR; x2: LPSTR; x3: UINT; x4: HWND): MCIERROR;stdcall; external 'winmm.dll' name 'mciSendStringA'; Function mciSendStringW(x1: LPCWSTR; x2: LPWSTR; x3: UINT; x4: HWND): MCIERROR;stdcall; external 'winmm.dll' name 'mciSendStringW'; @@ -2478,7 +2478,7 @@ Function waveOutGetErrorTextA(x1: MMRESULT; x2: LPSTR; x3: UINT): MMRESULT;stdca Function waveOutGetErrorTextW(x1: MMRESULT; x2: LPWSTR; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'waveOutGetErrorTextW'; Function waveOutGetErrorText(x1: MMRESULT; x2: PChar; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name {$ifdef UNICODE}'waveOutGetErrorTextW' {$else}'waveOutGetErrorTextA' {$endif}; -Function waveOutOpen(x1: LPHWAVEOUT; x2: UINT; x3: LPCWAVEFORMATEX; x4: DWORD; x5: DWORD; +Function waveOutOpen(x1: LPHWAVEOUT; x2: UINT; x3: LPCWAVEFORMATEX; x4: DWORD_PTR; x5: DWORD_PTR; x6: DWORD): MMRESULT;stdcall; external 'winmm.dll' name 'waveOutOpen'; Function waveOutClose(x1: HWAVEOUT): MMRESULT;stdcall; external 'winmm.dll' name 'waveOutClose'; Function waveOutPrepareHeader(x1: HWAVEOUT; x2: LPWAVEHDR; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'waveOutPrepareHeader'; @@ -2504,7 +2504,7 @@ Function waveInGetErrorTextA(x1: MMRESULT; x2: LPSTR; x3: UINT): MMRESULT;stdcal Function waveInGetErrorTextW(x1: MMRESULT; x2: LPWSTR; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'waveInGetErrorTextW'; Function waveInGetErrorText(x1: MMRESULT; x2: PChar; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name {$ifdef UNICODE}'waveInGetErrorTextW' {$else}'waveInGetErrorTextA' {$endif}; -Function waveInOpen(x1: LPHWAVEIN; x2: UINT; x3: LPCWAVEFORMATEX; x4: DWORD; x5: DWORD; x6 : DWORD): MMRESULT;stdcall; external 'winmm.dll' name 'waveInOpen'; +Function waveInOpen(x1: LPHWAVEIN; x2: UINT; x3: LPCWAVEFORMATEX; x4: DWORD_PTR; x5: DWORD_PTR; x6 : DWORD): MMRESULT;stdcall; external 'winmm.dll' name 'waveInOpen'; Function waveInClose(x1: HWAVEIN): MMRESULT;stdcall; external 'winmm.dll' name 'waveInClose'; Function waveInPrepareHeader(x1: HWAVEIN; x2: LPWAVEHDR; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'waveInPrepareHeader'; Function waveInUnprepareHeader(x1: HWAVEIN; x2: LPWAVEHDR; x3: UINT): MMRESULT;stdcall; external 'winmm.dll' name 'waveInUnprepareHeader'; diff --git a/packages/winunits-base/src/win9xwsmanager.pp b/packages/winunits-base/src/win9xwsmanager.pp new file mode 100644 index 0000000000..3eba28e48a --- /dev/null +++ b/packages/winunits-base/src/win9xwsmanager.pp @@ -0,0 +1,215 @@ +{ ********************************************************************* + This file is part of the Free Pascal run time library. + Copyright (c) 2011 by Bart Broersma. + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE + + **********************************************************************} + +unit win9xwsmanager; + +{********************************************************************** + Objective: to provide minimal WideString Upper- and LowerCase + functionality under Win9x systems. + This is achievd by dynamically linking shlwapi.dll functions. + If this fails a fallback mechanism is provided so that at least all + lower ASCII characters in a WideString are Upper/LowerCased + + Without this library UTF8UpperCase/UTF8LowerCase will fail + on win9x systems (which makes many Lazarus LCL controls that + handle strings behave wrong). + + You can use this unit in your uses clause independent of yout target OS. + No code will be linked in if yout target is not Windows. + On true Unicode Windows (WinCE, WinNT-based) no additional libraries + will be linked in (see: InitWin9xWSManager). + + Currently only LowerWideStringProc and UpperWideStringProc are + replaced on win9x. + Possibly other functions might need replacin too. + +***********************************************************************} + +{$mode objfpc}{$H+} +interface + +{$IFDEF WINDOWS} +{ $define DEBUG_WIN9X_WSMANAGER} + + +uses + Windows, SysUtils; + +{$endif WINDOWS} + +implementation + +{$ifdef WINDOWS} + +type + TShlwapiFunc = function(lpsz: LPWSTR; ccLength: DWORD): DWORD; stdcall; + +var + CharUpperBuffWrapW: TShlwapifunc = nil; + CharLowerBuffWrapW: TShlwapifunc = nil; + ShlwapiHandle: THandle = 0; + SavedUnicodeStringManager: TUnicodeStringManager; + + +// Win9x**Simple functions do essentially Upper/LowerCase on +// lower ASCII characters in the string + +function Win9xWideUpperSimple(const S: WideString): WideString; +const + diff = Ord('a') - Ord('A'); +var + W: WideChar; + i: Integer; +begin + Result := S; + for i := 1 to length(Result) do + begin + W := Result[i]; + if (Ord(W) in [Ord(Char('a'))..Ord(Char('z'))]) then + begin + Word(W) := Word(W) - diff; + Result[i] := W; + end; + end; +end; + +function Win9xWideLowerSimple(const S: WideString): WideString; +const + diff = Ord('a') - Ord('A'); +var + W: WideChar; + i: Integer; +begin + Result := S; + for i := 1 to length(Result) do + begin + W := Result[i]; + if (Ord(W) in [Ord(Char('A'))..Ord(Char('Z'))]) then + begin + Word(W) := Word(W) + diff; + Result[i] := W; + end; + end; +end; + + +function Win9xWideUpper(const S: WideString): WideString; +begin + Result := S; + CharUpperBuffWrapW(PWChar(Result), Length(Result)); +end; + +function Win9xWideLower(const S: WideString): WideString; +begin + Result := S; + CharLowerBuffWrapW(PWChar(Result), Length(Result)); +end; + + +procedure FreeDll; +begin + {$ifdef DEBUG_WIN9X_WSMANAGER} + if IsConsole then writeln('FreeDLL'); + {$endif} + if ShlwapiHandle <> 0 then + begin + FreeLibrary(ShlwapiHandle); + ShlwapiHandle := 0; + end; +end; + + +procedure InitDll; +var + PU,PL: Pointer; +begin + ShlwapiHandle := LoadLibrary('shlwapi.dll'); + if (ShlwapiHandle <> 0) then + begin + //shlwapi functions cannot be loaded by name, only by index! + PU := GetProcAddress(ShlwapiHandle,PChar(44)); + if (PU <> nil) then CharUpperBuffWrapW := TShlwapiFunc(PU); + PL := GetProcAddress(ShlwapiHandle,PChar(39)); + if (PL <> nil) then CharLowerBuffWrapW := TShlwapiFunc(PL); + {$ifdef DEBUG_WIN9X_WSMANAGER} + {$PUSH}{$HINTS OFF} //suppress hints on Pointer to PtrUInt tyecasting + if IsConsole then + begin + writeln('Successfully loaded shlwapi.dll'); + if (PU <> nil) then + writeln('Assigning CharUpperBuffWrapW @: ',HexStr(PtrUInt(PU),2*sizeof(PtrInt))) + else + writeln('Unable to load CharUpperBuffWrapW'); + if (PL <> nil) then + writeln('Assigning CharLowerBuffWrapW @: ',HexStr(PtrUInt(PL),2*sizeof(PtrInt))) + else + writeln('Unable to load CharLowerBuffWrapW'); + end; + {$POP} + {$endif DEBUG_WIN9X_WSMANAGER} + if (PU = nil) and (PL = nil) then + begin + FreeDLL; + end; + end + else + begin + {$ifdef DEBUG_WIN9X_WSMANAGER} + writeln('Unable to load shlwapi.dll'); + {$endif} + end; +end; + + +procedure InitWin9xWSManager; +var + WS: WideString; +begin + SavedUnicodeStringManager := WideStringManager; + WS := 'abc'; + if WideUpperCase(WS) <> 'ABC' then + begin + InitDLL; + if Assigned(CharUpperBuffWrapW) then + begin + WideStringManager.UpperWideStringProc := @Win9xWideUpper; + WS := 'abc'; + if WideUpperCase(WS) <> 'ABC' then WideStringManager.UpperWideStringProc := @Win9xWideUpperSimple; + end + else + begin + WideStringManager.UpperWideStringProc := @Win9xWideUpperSimple; + end; + if Assigned(CharLowerBuffWrapW) then + begin + WideStringmanager.LowerWideStringProc := @Win9xWideLower; + WS := 'ABC'; + if WideLowerCase(WS) <> 'abc' then WideStringManager.LowerWideStringProc := @Win9xWideLowerSimple; + end + else + begin + WideStringManager.LowerWideStringProc := @Win9xWideLowerSimple; + end; + end; +end; + +initialization + InitWin9xWSManager; + +finalization + WideStringManager := SavedUnicodeStringManager; + if (ShlwapiHandle <> 0) then FreeDll; + +{$endif} +end. + |