Removed winetest.
This commit is contained in:
parent
971f3f3518
commit
44519bde8c
|
@ -61,9 +61,6 @@ TESTSUBDIRS = \
|
|||
dlls \
|
||||
programs
|
||||
|
||||
EMUOBJS = \
|
||||
miscemu/miscemu.o
|
||||
|
||||
all: Make.rules wine
|
||||
@echo "Wine build complete."
|
||||
|
||||
|
@ -129,7 +126,7 @@ unicode/__install__: unicode
|
|||
checklink:: $(TESTSUBDIRS:%=%/__checklink__)
|
||||
$(CC) -o checklink $(TOPSRCDIR)/library/checklink.c && $(RM) checklink
|
||||
|
||||
check test:: $(TESTSUBDIRS:%=%/__test__)
|
||||
check test:: wine $(TESTSUBDIRS:%=%/__test__)
|
||||
|
||||
crosstest:: $(TESTSUBDIRS:%=%/__crosstest__)
|
||||
|
||||
|
|
|
@ -1366,7 +1366,6 @@ WINE_CONFIG_EXTRA_DIR(msdos)
|
|||
WINE_CONFIG_EXTRA_DIR(objects)
|
||||
WINE_CONFIG_EXTRA_DIR(programs/regapi/tests)
|
||||
WINE_CONFIG_EXTRA_DIR(programs/regedit/tests)
|
||||
WINE_CONFIG_EXTRA_DIR(programs/winetest/tests)
|
||||
WINE_CONFIG_EXTRA_DIR(relay32)
|
||||
WINE_CONFIG_EXTRA_DIR(scheduler)
|
||||
WINE_CONFIG_EXTRA_DIR(win32)
|
||||
|
@ -1527,7 +1526,6 @@ programs/winedbg/Makefile
|
|||
programs/winefile/Makefile
|
||||
programs/winemine/Makefile
|
||||
programs/winepath/Makefile
|
||||
programs/winetest/Makefile
|
||||
programs/winhelp/Makefile
|
||||
programs/winver/Makefile
|
||||
server/Makefile
|
||||
|
|
|
@ -25,7 +25,6 @@ SUBDIRS = \
|
|||
winefile \
|
||||
winemine \
|
||||
winepath \
|
||||
winetest \
|
||||
winhelp \
|
||||
winver
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
Makefile
|
||||
wine.c
|
||||
winetest.exe.dbg.c
|
||||
winetest.exe.spec.c
|
|
@ -1,38 +0,0 @@
|
|||
TOPSRCDIR = @top_srcdir@
|
||||
TOPOBJDIR = ../..
|
||||
SRCDIR = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
MODULE = winetest.exe
|
||||
APPMODE = cui
|
||||
IMPORTS = kernel32
|
||||
|
||||
EXTRACFLAGS = `perl -MExtUtils::Embed -e ccflags`
|
||||
EXTRALIBS = `perl -MExtUtils::Embed -e ldopts`
|
||||
EXTRAINCL = `perl -MExtUtils::Embed -e perl_inc`
|
||||
XSUBPPDIR = `perl -MConfig -e 'print $$Config::Config{privlibexp}'`/ExtUtils
|
||||
|
||||
C_SRCS = winetest.c
|
||||
|
||||
EXTRA_OBJS = wine.o
|
||||
|
||||
EXTRASUBDIRS = include tests
|
||||
|
||||
PLTESTPROGRAM = $(MODULE)$(DLLEXT)
|
||||
|
||||
PLTESTS = \
|
||||
tests/wine.pl
|
||||
|
||||
# override all: target so that we don't build the Perl stuff by default
|
||||
empty-target:
|
||||
|
||||
@MAKE_PROG_RULES@
|
||||
|
||||
wine.c: wine.xs
|
||||
perl $(XSUBPPDIR)/xsubpp -typemap $(XSUBPPDIR)/typemap $(SRCDIR)/wine.xs >wine.c || $(RM) wine.c
|
||||
|
||||
clean::
|
||||
$(RM) wine.c
|
||||
|
||||
.PHONY: empty-target
|
||||
|
||||
### Dependencies:
|
|
@ -1,27 +0,0 @@
|
|||
# Set this to the directory containing perl includes and libraries
|
||||
PERLDIR = c:\perl\5.6.0\lib\MSWin32-x86\CORE
|
||||
|
||||
CC = cl -c
|
||||
CFLAGS = -DWIN32 -D_X86_ -D__i386__ -I$(PERLDIR)
|
||||
PERLLIB = -libpath:$(PERLDIR) perl56.lib
|
||||
PERLMAKE = $(MAKE) /fMakefile.perl "DEFINE=$(CFLAGS)"
|
||||
|
||||
OBJS = winetest.obj wine.obj
|
||||
|
||||
all: winetest.exe
|
||||
|
||||
winetest.exe: $(OBJS)
|
||||
link -out:$@ $(LDFLAGS) $(OBJS) $(PERLLIB)
|
||||
|
||||
winetest.obj: winetest.c
|
||||
$(CC) $(CFLAGS) winetest.c
|
||||
|
||||
wine.obj: wine.xs Makefile.perl
|
||||
$(PERLMAKE) wine.obj
|
||||
|
||||
Makefile.perl: Makefile.PL
|
||||
perl Makefile.PL
|
||||
|
||||
clean: Makefile.perl
|
||||
del winetest.exe $(OBJS)
|
||||
$(PERLMAKE) realclean
|
|
@ -1,208 +0,0 @@
|
|||
package advapi32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"AbortSystemShutdownA" => ["long", ["str"]],
|
||||
"AbortSystemShutdownW" => ["long", ["wstr"]],
|
||||
"AccessCheck" => ["long", ["ptr", "long", "long", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"AddAccessAllowedAce" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"AdjustTokenPrivileges" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"AllocateAndInitializeSid" => ["long", ["ptr", "long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"AllocateLocallyUniqueId" => ["long", ["ptr"]],
|
||||
"BackupEventLogA" => ["long", ["long", "str"]],
|
||||
"BackupEventLogW" => ["long", ["long", "wstr"]],
|
||||
"CheckTokenMembership" => ["long", ["long", "ptr", "ptr"]],
|
||||
"ClearEventLogA" => ["long", ["long", "str"]],
|
||||
"ClearEventLogW" => ["long", ["long", "wstr"]],
|
||||
"CloseEventLog" => ["long", ["long"]],
|
||||
"CloseServiceHandle" => ["long", ["long"]],
|
||||
"ControlService" => ["long", ["long", "long", "ptr"]],
|
||||
"CopySid" => ["long", ["long", "ptr", "ptr"]],
|
||||
"CreateServiceA" => ["long", ["long", "str", "str", "long", "long", "long", "long", "str", "str", "ptr", "str", "str", "str"]],
|
||||
"CreateServiceW" => ["long", ["long", "wstr", "wstr", "long", "long", "long", "long", "wstr", "wstr", "ptr", "wstr", "wstr", "wstr"]],
|
||||
"CryptAcquireContextA" => ["long", ["ptr", "str", "str", "long", "long"]],
|
||||
"CryptAcquireContextW" => ["long", ["ptr", "wstr", "wstr", "long", "long"]],
|
||||
"CryptContextAddRef" => ["long", ["long", "ptr", "long"]],
|
||||
"CryptCreateHash" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"CryptDecrypt" => ["long", ["long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"CryptDeriveKey" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"CryptDestroyHash" => ["long", ["long"]],
|
||||
"CryptDestroyKey" => ["long", ["long"]],
|
||||
"CryptDuplicateHash" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"CryptDuplicateKey" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"CryptEncrypt" => ["long", ["long", "long", "long", "long", "ptr", "ptr", "long"]],
|
||||
"CryptEnumProviderTypesA" => ["long", ["long", "ptr", "long", "ptr", "str", "ptr"]],
|
||||
"CryptEnumProviderTypesW" => ["long", ["long", "ptr", "long", "ptr", "wstr", "ptr"]],
|
||||
"CryptEnumProvidersA" => ["long", ["long", "ptr", "long", "ptr", "str", "ptr"]],
|
||||
"CryptEnumProvidersW" => ["long", ["long", "ptr", "long", "ptr", "wstr", "ptr"]],
|
||||
"CryptExportKey" => ["long", ["long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"CryptGenKey" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"CryptGenRandom" => ["long", ["long", "long", "ptr"]],
|
||||
"CryptGetDefaultProviderA" => ["long", ["long", "ptr", "long", "str", "ptr"]],
|
||||
"CryptGetDefaultProviderW" => ["long", ["long", "ptr", "long", "wstr", "ptr"]],
|
||||
"CryptGetHashParam" => ["long", ["long", "long", "ptr", "ptr", "long"]],
|
||||
"CryptGetKeyParam" => ["long", ["long", "long", "ptr", "ptr", "long"]],
|
||||
"CryptGetProvParam" => ["long", ["long", "long", "ptr", "ptr", "long"]],
|
||||
"CryptGetUserKey" => ["long", ["long", "long", "ptr"]],
|
||||
"CryptHashData" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"CryptHashSessionKey" => ["long", ["long", "long", "long"]],
|
||||
"CryptImportKey" => ["long", ["long", "ptr", "long", "long", "long", "ptr"]],
|
||||
"CryptReleaseContext" => ["long", ["long", "long"]],
|
||||
"CryptSetHashParam" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"CryptSetKeyParam" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"CryptSetProvParam" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"CryptSetProviderA" => ["long", ["str", "long"]],
|
||||
"CryptSetProviderExA" => ["long", ["str", "long", "ptr", "long"]],
|
||||
"CryptSetProviderExW" => ["long", ["wstr", "long", "ptr", "long"]],
|
||||
"CryptSetProviderW" => ["long", ["wstr", "long"]],
|
||||
"CryptSignHashA" => ["long", ["long", "long", "str", "long", "ptr", "ptr"]],
|
||||
"CryptSignHashW" => ["long", ["long", "long", "str", "long", "ptr", "ptr"]],
|
||||
"CryptVerifySignatureA" => ["long", ["long", "ptr", "long", "long", "str", "long"]],
|
||||
"CryptVerifySignatureW" => ["long", ["long", "ptr", "long", "long", "str", "long"]],
|
||||
"DeleteService" => ["long", ["long"]],
|
||||
"DeregisterEventSource" => ["long", ["long"]],
|
||||
"EnumServicesStatusA" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr", "ptr"]],
|
||||
"EnumServicesStatusW" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr", "ptr"]],
|
||||
"EqualPrefixSid" => ["long", ["ptr", "ptr"]],
|
||||
"EqualSid" => ["long", ["ptr", "ptr"]],
|
||||
"FreeSid" => ["ptr", ["ptr"]],
|
||||
"GetAce" => ["long", ["ptr", "long", "ptr"]],
|
||||
"GetCurrentHwProfileA" => ["long", ["ptr"]],
|
||||
"GetFileSecurityA" => ["long", ["str", "long", "ptr", "long", "ptr"]],
|
||||
"GetFileSecurityW" => ["long", ["wstr", "long", "ptr", "long", "ptr"]],
|
||||
"GetLengthSid" => ["long", ["ptr"]],
|
||||
"GetNumberOfEventLogRecords" => ["long", ["long", "ptr"]],
|
||||
"GetOldestEventLogRecord" => ["long", ["long", "ptr"]],
|
||||
"GetSecurityDescriptorControl" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"GetSecurityDescriptorDacl" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetSecurityDescriptorGroup" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"GetSecurityDescriptorLength" => ["long", ["ptr"]],
|
||||
"GetSecurityDescriptorOwner" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"GetSecurityDescriptorSacl" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetSidIdentifierAuthority" => ["ptr", ["ptr"]],
|
||||
"GetSidLengthRequired" => ["long", ["long"]],
|
||||
"GetSidSubAuthority" => ["ptr", ["ptr", "long"]],
|
||||
"GetSidSubAuthorityCount" => ["ptr", ["ptr"]],
|
||||
"GetTokenInformation" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"GetUserNameA" => ["long", ["str", "ptr"]],
|
||||
"GetUserNameW" => ["long", ["wstr", "ptr"]],
|
||||
"ImpersonateLoggedOnUser" => ["long", ["long"]],
|
||||
"ImpersonateSelf" => ["long", ["long"]],
|
||||
"InitializeAcl" => ["long", ["ptr", "long", "long"]],
|
||||
"InitializeSecurityDescriptor" => ["long", ["ptr", "long"]],
|
||||
"InitializeSid" => ["long", ["ptr", "ptr", "long"]],
|
||||
"IsValidSecurityDescriptor" => ["long", ["ptr"]],
|
||||
"IsValidSid" => ["long", ["ptr"]],
|
||||
"LookupAccountNameA" => ["long", ["str", "str", "ptr", "ptr", "str", "ptr", "ptr"]],
|
||||
"LookupAccountSidA" => ["long", ["str", "ptr", "str", "ptr", "str", "ptr", "ptr"]],
|
||||
"LookupAccountSidW" => ["long", ["wstr", "ptr", "wstr", "ptr", "wstr", "ptr", "ptr"]],
|
||||
"LookupPrivilegeValueA" => ["long", ["str", "str", "ptr"]],
|
||||
"LookupPrivilegeValueW" => ["long", ["wstr", "wstr", "ptr"]],
|
||||
"LsaClose" => ["long", ["long"]],
|
||||
"LsaFreeMemory" => ["long", ["ptr"]],
|
||||
"LsaLookupSids" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"LsaOpenPolicy" => ["long", ["ptr", "ptr", "long", "ptr"]],
|
||||
"LsaQueryInformationPolicy" => ["long", ["long", "long", "ptr"]],
|
||||
"MakeSelfRelativeSD" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"NotifyBootConfigStatus" => ["long", ["long"]],
|
||||
"NotifyChangeEventLog" => ["long", ["long", "long"]],
|
||||
"OpenBackupEventLogA" => ["long", ["str", "str"]],
|
||||
"OpenBackupEventLogW" => ["long", ["wstr", "wstr"]],
|
||||
"OpenEventLogA" => ["long", ["str", "str"]],
|
||||
"OpenEventLogW" => ["long", ["wstr", "wstr"]],
|
||||
"OpenProcessToken" => ["long", ["long", "long", "ptr"]],
|
||||
"OpenSCManagerA" => ["long", ["str", "str", "long"]],
|
||||
"OpenSCManagerW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"OpenServiceA" => ["long", ["long", "str", "long"]],
|
||||
"OpenServiceW" => ["long", ["long", "wstr", "long"]],
|
||||
"OpenThreadToken" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"PrivilegeCheck" => ["long", ["long", "ptr", "ptr"]],
|
||||
"QueryServiceStatus" => ["long", ["long", "ptr"]],
|
||||
"QueryWindows31FilesMigration" => ["long", ["long"]],
|
||||
"ReadEventLogA" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"ReadEventLogW" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"RegCloseKey" => ["long", ["long"]],
|
||||
"RegConnectRegistryA" => ["long", ["str", "long", "ptr"]],
|
||||
"RegConnectRegistryW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"RegCreateKeyA" => ["long", ["long", "str", "ptr"]],
|
||||
"RegCreateKeyExA" => ["long", ["long", "str", "long", "str", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"RegCreateKeyExW" => ["long", ["long", "wstr", "long", "wstr", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"RegCreateKeyW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"RegDeleteKeyA" => ["long", ["long", "str"]],
|
||||
"RegDeleteKeyW" => ["long", ["long", "wstr"]],
|
||||
"RegDeleteValueA" => ["long", ["long", "str"]],
|
||||
"RegDeleteValueW" => ["long", ["long", "wstr"]],
|
||||
"RegEnumKeyA" => ["long", ["long", "long", "str", "long"]],
|
||||
"RegEnumKeyExA" => ["long", ["long", "long", "str", "ptr", "ptr", "str", "ptr", "ptr"]],
|
||||
"RegEnumKeyExW" => ["long", ["long", "long", "wstr", "ptr", "ptr", "wstr", "ptr", "ptr"]],
|
||||
"RegEnumKeyW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"RegEnumValueA" => ["long", ["long", "long", "str", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegEnumValueW" => ["long", ["long", "long", "wstr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegFlushKey" => ["long", ["long"]],
|
||||
"RegGetKeySecurity" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"RegLoadKeyA" => ["long", ["long", "str", "str"]],
|
||||
"RegLoadKeyW" => ["long", ["long", "wstr", "wstr"]],
|
||||
"RegNotifyChangeKeyValue" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"RegOpenCurrentUser" => ["long", ["long", "ptr"]],
|
||||
"RegOpenKeyA" => ["long", ["long", "str", "ptr"]],
|
||||
"RegOpenKeyExA" => ["long", ["long", "str", "long", "long", "ptr"]],
|
||||
"RegOpenKeyExW" => ["long", ["long", "wstr", "long", "long", "ptr"]],
|
||||
"RegOpenKeyW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"RegQueryInfoKeyA" => ["long", ["long", "str", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegQueryInfoKeyW" => ["long", ["long", "wstr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegQueryMultipleValuesA" => ["long", ["long", "ptr", "long", "str", "ptr"]],
|
||||
"RegQueryMultipleValuesW" => ["long", ["long", "ptr", "long", "wstr", "ptr"]],
|
||||
"RegQueryValueA" => ["long", ["long", "str", "str", "ptr"]],
|
||||
"RegQueryValueExA" => ["long", ["long", "str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegQueryValueExW" => ["long", ["long", "wstr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegQueryValueW" => ["long", ["long", "wstr", "wstr", "ptr"]],
|
||||
"RegReplaceKeyA" => ["long", ["long", "str", "str", "str"]],
|
||||
"RegReplaceKeyW" => ["long", ["long", "wstr", "wstr", "wstr"]],
|
||||
"RegRestoreKeyA" => ["long", ["long", "str", "long"]],
|
||||
"RegRestoreKeyW" => ["long", ["long", "wstr", "long"]],
|
||||
"RegSaveKeyA" => ["long", ["long", "str", "ptr"]],
|
||||
"RegSaveKeyW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"RegSetKeySecurity" => ["long", ["long", "long", "ptr"]],
|
||||
"RegSetValueA" => ["long", ["long", "str", "long", "str", "long"]],
|
||||
"RegSetValueExA" => ["long", ["long", "str", "long", "long", "ptr", "long"]],
|
||||
"RegSetValueExW" => ["long", ["long", "wstr", "long", "long", "ptr", "long"]],
|
||||
"RegSetValueW" => ["long", ["long", "wstr", "long", "wstr", "long"]],
|
||||
"RegUnLoadKeyA" => ["long", ["long", "str"]],
|
||||
"RegUnLoadKeyW" => ["long", ["long", "wstr"]],
|
||||
"RegisterEventSourceA" => ["long", ["str", "str"]],
|
||||
"RegisterEventSourceW" => ["long", ["wstr", "wstr"]],
|
||||
"RegisterServiceCtrlHandlerA" => ["long", ["str", "ptr"]],
|
||||
"RegisterServiceCtrlHandlerW" => ["long", ["wstr", "ptr"]],
|
||||
"ReportEventA" => ["long", ["long", "long", "long", "long", "ptr", "long", "long", "ptr", "ptr"]],
|
||||
"ReportEventW" => ["long", ["long", "long", "long", "long", "ptr", "long", "long", "ptr", "ptr"]],
|
||||
"RevertToSelf" => ["long", []],
|
||||
"SetFileSecurityA" => ["long", ["str", "long", "ptr"]],
|
||||
"SetFileSecurityW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"SetKernelObjectSecurity" => ["long", ["long", "long", "ptr"]],
|
||||
"SetSecurityDescriptorDacl" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"SetSecurityDescriptorGroup" => ["long", ["ptr", "ptr", "long"]],
|
||||
"SetSecurityDescriptorOwner" => ["long", ["ptr", "ptr", "long"]],
|
||||
"SetSecurityDescriptorSacl" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"SetServiceStatus" => ["long", ["long", "ptr"]],
|
||||
"SetThreadToken" => ["long", ["ptr", "long"]],
|
||||
"SetTokenInformation" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"StartServiceA" => ["long", ["long", "long", "ptr"]],
|
||||
"StartServiceCtrlDispatcherA" => ["long", ["ptr"]],
|
||||
"StartServiceCtrlDispatcherW" => ["long", ["ptr"]],
|
||||
"StartServiceW" => ["long", ["long", "long", "ptr"]],
|
||||
"SynchronizeWindows31FilesAndWindowsNTRegistry" => ["long", ["long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("advapi32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package avicap32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"capCreateCaptureWindowA" => ["long", ["str", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"capCreateCaptureWindowW" => ["long", ["wstr", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"capGetDriverDescriptionA" => ["long", ["long", "str", "long", "str", "long"]],
|
||||
"capGetDriverDescriptionW" => ["long", ["long", "wstr", "long", "wstr", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("avicap32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,43 +0,0 @@
|
|||
package avifil32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"AVIFileCreateStreamA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"AVIFileCreateStreamW" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"AVIFileExit" => ["void", []],
|
||||
"AVIFileGetStream" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"AVIFileInfoA" => ["long", ["ptr", "ptr", "long"]],
|
||||
"AVIFileInfoW" => ["long", ["ptr", "ptr", "long"]],
|
||||
"AVIFileInit" => ["void", []],
|
||||
"AVIFileOpenA" => ["long", ["ptr", "str", "long", "ptr"]],
|
||||
"AVIFileRelease" => ["long", ["ptr"]],
|
||||
"AVIMakeCompressedStream" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"AVIStreamGetFrame" => ["ptr", ["ptr", "long"]],
|
||||
"AVIStreamGetFrameClose" => ["long", ["ptr"]],
|
||||
"AVIStreamGetFrameOpen" => ["ptr", ["ptr", "ptr"]],
|
||||
"AVIStreamInfoA" => ["long", ["ptr", "ptr", "long"]],
|
||||
"AVIStreamInfoW" => ["long", ["ptr", "ptr", "long"]],
|
||||
"AVIStreamLength" => ["long", ["ptr"]],
|
||||
"AVIStreamRead" => ["long", ["ptr", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"AVIStreamReadData" => ["long", ["ptr", "long", "ptr", "ptr"]],
|
||||
"AVIStreamReadFormat" => ["long", ["ptr", "long", "ptr", "ptr"]],
|
||||
"AVIStreamRelease" => ["long", ["ptr"]],
|
||||
"AVIStreamSetFormat" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"AVIStreamStart" => ["long", ["ptr"]],
|
||||
"AVIStreamWrite" => ["long", ["ptr", "long", "long", "ptr", "long", "long", "ptr", "ptr"]],
|
||||
"AVIStreamWriteData" => ["long", ["ptr", "long", "ptr", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("avifil32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package comcat;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllCanUnloadNow" => ["long", ["undef"]],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", ["undef"]],
|
||||
"DllUnregisterServer" => ["long", ["undef"]]
|
||||
};
|
||||
|
||||
&wine::declare("comcat",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,168 +0,0 @@
|
|||
package comctl32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"MenuHelp" => ["void", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"ShowHideMenuCtl" => ["long", ["long", "long", "ptr"]],
|
||||
"GetEffectiveClientRect" => ["void", ["long", "ptr", "ptr"]],
|
||||
"DrawStatusTextA" => ["void", ["long", "ptr", "str", "long"]],
|
||||
"CreateStatusWindowA" => ["long", ["long", "str", "long", "long"]],
|
||||
"CreateToolbar" => ["long", ["long", "long", "long", "long", "long", "long", "ptr", "long"]],
|
||||
"CreateMappedBitmap" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"DPA_LoadStream" => ["long", ["ptr", "ptr", "ptr", "long"]],
|
||||
"DPA_SaveStream" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"DPA_Merge" => ["long", ["long", "long", "long", "ptr", "ptr", "long"]],
|
||||
"MakeDragList" => ["long", ["long"]],
|
||||
"LBItemFromPt" => ["long", ["long", "long", "long", "long"]],
|
||||
"DrawInsert" => ["void", ["long", "long", "long"]],
|
||||
"CreateUpDownControl" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"InitCommonControls" => ["void", []],
|
||||
"Alloc" => ["ptr", ["long"]],
|
||||
"ReAlloc" => ["ptr", ["ptr", "long"]],
|
||||
"Free" => ["long", ["ptr"]],
|
||||
"GetSize" => ["long", ["ptr"]],
|
||||
"CreateMRUListA" => ["long", ["ptr"]],
|
||||
"FreeMRUList" => ["long", ["long"]],
|
||||
"AddMRUStringA" => ["long", ["long", "str"]],
|
||||
"EnumMRUListA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"FindMRUStringA" => ["long", ["long", "str", "ptr"]],
|
||||
"DelMRUString" => ["long", ["long", "long"]],
|
||||
"CreateMRUListLazyA" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"AddMRUData" => ["long", ["long", "ptr", "long"]],
|
||||
"FindMRUData" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"Str_GetPtrA" => ["long", ["str", "str", "long"]],
|
||||
"Str_SetPtrA" => ["long", ["ptr", "str"]],
|
||||
"Str_GetPtrW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"Str_SetPtrW" => ["long", ["ptr", "wstr"]],
|
||||
"DSA_Create" => ["long", ["long", "long"]],
|
||||
"DSA_Destroy" => ["long", ["long"]],
|
||||
"DSA_GetItem" => ["long", ["long", "long", "ptr"]],
|
||||
"DSA_GetItemPtr" => ["ptr", ["long", "long"]],
|
||||
"DSA_InsertItem" => ["long", ["long", "long", "ptr"]],
|
||||
"DSA_SetItem" => ["long", ["long", "long", "ptr"]],
|
||||
"DSA_DeleteItem" => ["long", ["long", "long"]],
|
||||
"DSA_DeleteAllItems" => ["long", ["long"]],
|
||||
"DPA_Create" => ["long", ["long"]],
|
||||
"DPA_Destroy" => ["long", ["long"]],
|
||||
"DPA_Grow" => ["long", ["long", "long"]],
|
||||
"DPA_Clone" => ["long", ["long", "long"]],
|
||||
"DPA_GetPtr" => ["ptr", ["long", "long"]],
|
||||
"DPA_GetPtrIndex" => ["long", ["long", "ptr"]],
|
||||
"DPA_InsertPtr" => ["long", ["long", "long", "ptr"]],
|
||||
"DPA_SetPtr" => ["long", ["long", "long", "ptr"]],
|
||||
"DPA_DeletePtr" => ["ptr", ["long", "long"]],
|
||||
"DPA_DeleteAllPtrs" => ["long", ["long"]],
|
||||
"DPA_Sort" => ["long", ["long", "ptr", "long"]],
|
||||
"DPA_Search" => ["long", ["long", "ptr", "long", "ptr", "long", "long"]],
|
||||
"DPA_CreateEx" => ["long", ["long", "long"]],
|
||||
"SendNotify" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SendNotifyEx" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"StrChrA" => ["str", ["str", "long"]],
|
||||
"StrRChrA" => ["str", ["str", "str", "long"]],
|
||||
"StrCmpNA" => ["long", ["str", "str", "long"]],
|
||||
"StrCmpNIA" => ["long", ["str", "str", "long"]],
|
||||
"StrStrA" => ["str", ["str", "str"]],
|
||||
"StrStrIA" => ["str", ["str", "str"]],
|
||||
"StrCSpnA" => ["long", ["str", "str"]],
|
||||
"StrToIntA" => ["long", ["str"]],
|
||||
"StrChrW" => ["wstr", ["wstr", "long"]],
|
||||
"StrRChrW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"StrCmpNW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"StrCmpNIW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"StrStrW" => ["wstr", ["wstr", "wstr"]],
|
||||
"StrSpnW" => ["long", ["wstr", "wstr"]],
|
||||
"StrToIntW" => ["long", ["wstr"]],
|
||||
"SmoothScrollWindow" => ["long", ["ptr"]],
|
||||
"DPA_EnumCallback" => ["void", ["long", "ptr", "long"]],
|
||||
"DPA_DestroyCallback" => ["long", ["long", "ptr", "long"]],
|
||||
"DSA_EnumCallback" => ["void", ["long", "ptr", "long"]],
|
||||
"DSA_DestroyCallback" => ["long", ["long", "ptr", "long"]],
|
||||
"CreateMRUListW" => ["long", ["ptr"]],
|
||||
"AddMRUStringW" => ["long", ["long", "wstr"]],
|
||||
"FindMRUStringW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"EnumMRUListW" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"CreateMRUListLazyW" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"CreatePropertySheetPage" => ["long", ["ptr"]],
|
||||
"CreatePropertySheetPageA" => ["long", ["ptr"]],
|
||||
"CreatePropertySheetPageW" => ["long", ["ptr"]],
|
||||
"CreateStatusWindow" => ["long", ["long", "str", "long", "long"]],
|
||||
"CreateStatusWindowW" => ["long", ["long", "wstr", "long", "long"]],
|
||||
"CreateToolbarEx" => ["long", ["long", "long", "long", "long", "long", "long", "ptr", "long", "long", "long", "long", "long", "long"]],
|
||||
"DestroyPropertySheetPage" => ["long", ["long"]],
|
||||
"DllGetVersion" => ["long", ["ptr"]],
|
||||
"DllInstall" => ["long", ["long", "wstr"]],
|
||||
"DrawStatusText" => ["void", ["long", "ptr", "str", "long"]],
|
||||
"DrawStatusTextW" => ["void", ["long", "ptr", "wstr", "long"]],
|
||||
"FlatSB_EnableScrollBar" => ["long", ["long", "long", "long"]],
|
||||
"FlatSB_GetScrollInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"FlatSB_GetScrollPos" => ["long", ["long", "long"]],
|
||||
"FlatSB_GetScrollProp" => ["long", ["long", "long", "ptr"]],
|
||||
"FlatSB_GetScrollRange" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"FlatSB_SetScrollInfo" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"FlatSB_SetScrollPos" => ["long", ["long", "long", "long", "long"]],
|
||||
"FlatSB_SetScrollProp" => ["long", ["long", "long", "long", "long"]],
|
||||
"FlatSB_ShowScrollBar" => ["long", ["long", "long", "long"]],
|
||||
"GetMUILanguage" => ["long", []],
|
||||
"ImageList_Add" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_AddIcon" => ["long", ["long", "long"]],
|
||||
"ImageList_AddMasked" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_BeginDrag" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImageList_Copy" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"ImageList_Create" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"ImageList_Destroy" => ["long", ["long"]],
|
||||
"ImageList_DragEnter" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_DragLeave" => ["long", ["long"]],
|
||||
"ImageList_DragMove" => ["long", ["long", "long"]],
|
||||
"ImageList_DragShowNolock" => ["long", ["long"]],
|
||||
"ImageList_Draw" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"ImageList_DrawEx" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"ImageList_DrawIndirect" => ["long", ["ptr"]],
|
||||
"ImageList_Duplicate" => ["long", ["long"]],
|
||||
"ImageList_EndDrag" => ["long", []],
|
||||
"ImageList_GetBkColor" => ["long", ["long"]],
|
||||
"ImageList_GetDragImage" => ["long", ["ptr", "ptr"]],
|
||||
"ImageList_GetFlags" => ["long", ["long"]],
|
||||
"ImageList_GetIcon" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_GetIconSize" => ["long", ["long", "ptr", "ptr"]],
|
||||
"ImageList_GetImageCount" => ["long", ["long"]],
|
||||
"ImageList_GetImageInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"ImageList_GetImageRect" => ["long", ["long", "long", "ptr"]],
|
||||
"ImageList_LoadImage" => ["long", ["long", "str", "long", "long", "long", "long", "long"]],
|
||||
"ImageList_LoadImageA" => ["long", ["long", "str", "long", "long", "long", "long", "long"]],
|
||||
"ImageList_LoadImageW" => ["long", ["long", "wstr", "long", "long", "long", "long", "long"]],
|
||||
"ImageList_Merge" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"ImageList_Read" => ["long", ["ptr"]],
|
||||
"ImageList_Remove" => ["long", ["long", "long"]],
|
||||
"ImageList_Replace" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImageList_ReplaceIcon" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_SetBkColor" => ["long", ["long", "long"]],
|
||||
"ImageList_SetDragCursorImage" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImageList_SetFilter" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_SetFlags" => ["long", ["long", "long"]],
|
||||
"ImageList_SetIconSize" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_SetImageCount" => ["long", ["long", "long"]],
|
||||
"ImageList_SetOverlayImage" => ["long", ["long", "long", "long"]],
|
||||
"ImageList_Write" => ["long", ["long", "ptr"]],
|
||||
"InitCommonControlsEx" => ["long", ["ptr"]],
|
||||
"InitMUILanguage" => ["void", ["long"]],
|
||||
"InitializeFlatSB" => ["long", ["long"]],
|
||||
"PropertySheet" => ["long", ["ptr"]],
|
||||
"PropertySheetA" => ["long", ["ptr"]],
|
||||
"PropertySheetW" => ["long", ["ptr"]],
|
||||
"UninitializeFlatSB" => ["long", ["long"]],
|
||||
"_TrackMouseEvent" => ["long", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("comctl32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,40 +0,0 @@
|
|||
package comdlg32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"ChooseColorA" => ["long", ["ptr"]],
|
||||
"ChooseColorW" => ["long", ["ptr"]],
|
||||
"ChooseFontA" => ["long", ["ptr"]],
|
||||
"ChooseFontW" => ["long", ["ptr"]],
|
||||
"CommDlgExtendedError" => ["long", []],
|
||||
"FindTextA" => ["long", ["ptr"]],
|
||||
"FindTextW" => ["long", ["ptr"]],
|
||||
"GetFileTitleA" => ["long", ["str", "str", "long"]],
|
||||
"GetFileTitleW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"GetOpenFileNameA" => ["long", ["ptr"]],
|
||||
"GetOpenFileNameW" => ["long", ["ptr"]],
|
||||
"GetSaveFileNameA" => ["long", ["ptr"]],
|
||||
"GetSaveFileNameW" => ["long", ["ptr"]],
|
||||
"PageSetupDlgA" => ["long", ["ptr"]],
|
||||
"PageSetupDlgW" => ["long", ["ptr"]],
|
||||
"PrintDlgA" => ["long", ["ptr"]],
|
||||
"PrintDlgExA" => ["long", ["ptr"]],
|
||||
"PrintDlgExW" => ["long", ["ptr"]],
|
||||
"PrintDlgW" => ["long", ["ptr"]],
|
||||
"ReplaceTextA" => ["long", ["ptr"]],
|
||||
"ReplaceTextW" => ["long", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("comdlg32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,21 +0,0 @@
|
|||
package dciman32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DCICloseProvider" => ["void", ["long"]],
|
||||
"DCIOpenProvider" => ["long", []]
|
||||
};
|
||||
|
||||
&wine::declare("dciman32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,26 +0,0 @@
|
|||
package ddraw;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DirectDrawCreate" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DirectDrawEnumerateA" => ["long", ["ptr", "ptr"]],
|
||||
"DirectDrawEnumerateExA" => ["long", ["ptr", "ptr", "long"]],
|
||||
"DirectDrawEnumerateExW" => ["long", ["ptr", "ptr", "long"]],
|
||||
"DirectDrawEnumerateW" => ["long", ["ptr", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("ddraw",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,25 +0,0 @@
|
|||
package dinput;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DirectInputCreateA" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"DirectInputCreateEx" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", []],
|
||||
"DllUnregisterServer" => ["long", []]
|
||||
};
|
||||
|
||||
&wine::declare("dinput",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,24 +0,0 @@
|
|||
package dinput8;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DirectInput8Create" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", []],
|
||||
"DllUnregisterServer" => ["long", []]
|
||||
};
|
||||
|
||||
&wine::declare("dinput8",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,27 +0,0 @@
|
|||
package dplayx;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DirectPlayCreate" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DirectPlayEnumerateA" => ["long", ["ptr", "ptr"]],
|
||||
"DirectPlayEnumerateW" => ["long", ["ptr", "ptr"]],
|
||||
"DirectPlayLobbyCreateA" => ["long", ["ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"DirectPlayLobbyCreateW" => ["long", ["ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"DirectPlayEnumerate" => ["long", ["ptr", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("dplayx",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,27 +0,0 @@
|
|||
package dsound;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DirectSoundCreate" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DirectSoundEnumerateA" => ["long", ["ptr", "ptr"]],
|
||||
"DirectSoundEnumerateW" => ["long", ["ptr", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DirectSoundCaptureCreate" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DirectSoundCaptureEnumerateA" => ["long", ["ptr", "ptr"]],
|
||||
"DirectSoundCaptureEnumerateW" => ["long", ["ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("dsound",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,340 +0,0 @@
|
|||
package gdi32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"AbortDoc" => ["long", ["long"]],
|
||||
"AbortPath" => ["long", ["long"]],
|
||||
"AddFontResourceA" => ["long", ["str"]],
|
||||
"AddFontResourceExA" => ["long", ["str", "long", "ptr"]],
|
||||
"AddFontResourceExW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"AddFontResourceW" => ["long", ["wstr"]],
|
||||
"AngleArc" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"AnimatePalette" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"Arc" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"ArcTo" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"BeginPath" => ["long", ["long"]],
|
||||
"BitBlt" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"ChoosePixelFormat" => ["long", ["long", "ptr"]],
|
||||
"Chord" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"CloseEnhMetaFile" => ["long", ["long"]],
|
||||
"CloseFigure" => ["long", ["long"]],
|
||||
"CloseJob16" => ["long", ["long"]],
|
||||
"CloseMetaFile" => ["long", ["long"]],
|
||||
"CloseMetaFile16" => ["long", ["long"]],
|
||||
"CombineRgn" => ["long", ["long", "long", "long", "long"]],
|
||||
"CombineTransform" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"CopyEnhMetaFileA" => ["long", ["long", "str"]],
|
||||
"CopyMetaFileA" => ["long", ["long", "str"]],
|
||||
"CopyMetaFileW" => ["long", ["long", "wstr"]],
|
||||
"CreateBitmap" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"CreateBitmapIndirect" => ["long", ["ptr"]],
|
||||
"CreateBrushIndirect" => ["long", ["ptr"]],
|
||||
"CreateColorSpaceA" => ["long", ["ptr"]],
|
||||
"CreateColorSpaceW" => ["long", ["ptr"]],
|
||||
"CreateCompatibleBitmap" => ["long", ["long", "long", "long"]],
|
||||
"CreateCompatibleDC" => ["long", ["long"]],
|
||||
"CreateDCA" => ["long", ["str", "str", "str", "ptr"]],
|
||||
"CreateDCW" => ["long", ["wstr", "wstr", "wstr", "ptr"]],
|
||||
"CreateDIBPatternBrush" => ["long", ["long", "long"]],
|
||||
"CreateDIBPatternBrushPt" => ["long", ["ptr", "long"]],
|
||||
"CreateDIBSection" => ["long", ["long", "ptr", "long", "ptr", "long", "long"]],
|
||||
"CreateDIBitmap" => ["long", ["long", "ptr", "long", "ptr", "ptr", "long"]],
|
||||
"CreateDiscardableBitmap" => ["long", ["long", "long", "long"]],
|
||||
"CreateEllipticRgn" => ["long", ["long", "long", "long", "long"]],
|
||||
"CreateEllipticRgnIndirect" => ["long", ["ptr"]],
|
||||
"CreateEnhMetaFileA" => ["long", ["long", "str", "ptr", "str"]],
|
||||
"CreateEnhMetaFileW" => ["long", ["long", "wstr", "ptr", "wstr"]],
|
||||
"CreateFontA" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "str"]],
|
||||
"CreateFontIndirectA" => ["long", ["ptr"]],
|
||||
"CreateFontIndirectW" => ["long", ["ptr"]],
|
||||
"CreateFontW" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "wstr"]],
|
||||
"CreateHalftonePalette" => ["long", ["long"]],
|
||||
"CreateHatchBrush" => ["long", ["long", "long"]],
|
||||
"CreateICA" => ["long", ["str", "str", "str", "ptr"]],
|
||||
"CreateICW" => ["long", ["wstr", "wstr", "wstr", "ptr"]],
|
||||
"CreateMetaFile16" => ["long", ["str"]],
|
||||
"CreateMetaFileA" => ["long", ["str"]],
|
||||
"CreateMetaFileW" => ["long", ["wstr"]],
|
||||
"CreatePalette" => ["long", ["ptr"]],
|
||||
"CreatePatternBrush" => ["long", ["long"]],
|
||||
"CreatePen" => ["long", ["long", "long", "long"]],
|
||||
"CreatePenIndirect" => ["long", ["ptr"]],
|
||||
"CreatePolyPolygonRgn" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"CreatePolygonRgn" => ["long", ["ptr", "long", "long"]],
|
||||
"CreateRectRgn" => ["long", ["long", "long", "long", "long"]],
|
||||
"CreateRectRgnIndirect" => ["long", ["ptr"]],
|
||||
"CreateRoundRectRgn" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"CreateScalableFontResourceA" => ["long", ["long", "str", "str", "str"]],
|
||||
"CreateScalableFontResourceW" => ["long", ["long", "wstr", "wstr", "wstr"]],
|
||||
"CreateSolidBrush" => ["long", ["long"]],
|
||||
"DPtoLP" => ["long", ["long", "ptr", "long"]],
|
||||
"DeleteColorSpace" => ["long", ["long"]],
|
||||
"DeleteDC" => ["long", ["long"]],
|
||||
"DeleteEnhMetaFile" => ["long", ["long"]],
|
||||
"DeleteMetaFile" => ["long", ["long"]],
|
||||
"DeleteObject" => ["long", ["long"]],
|
||||
"DescribePixelFormat" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"DrawEscape" => ["long", ["long", "long", "long", "str"]],
|
||||
"DrvGetPrinterData16" => ["long", ["str", "str", "ptr", "ptr", "long", "ptr"]],
|
||||
"DrvSetPrinterData16" => ["long", ["str", "str", "long", "ptr", "long"]],
|
||||
"Ellipse" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"EndDoc" => ["long", ["long"]],
|
||||
"EndPage" => ["long", ["long"]],
|
||||
"EndPath" => ["long", ["long"]],
|
||||
"EnumEnhMetaFile" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"EnumFontFamiliesA" => ["long", ["long", "str", "ptr", "long"]],
|
||||
"EnumFontFamiliesExA" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"EnumFontFamiliesExW" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"EnumFontFamiliesW" => ["long", ["long", "wstr", "ptr", "long"]],
|
||||
"EnumFontsA" => ["long", ["long", "str", "ptr", "long"]],
|
||||
"EnumFontsW" => ["long", ["long", "wstr", "ptr", "long"]],
|
||||
"EnumMetaFile" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"EnumObjects" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"EqualRgn" => ["long", ["long", "long"]],
|
||||
"Escape" => ["long", ["long", "long", "long", "str", "ptr"]],
|
||||
"ExcludeClipRect" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"ExtCreatePen" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ExtCreateRegion" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ExtEscape" => ["long", ["long", "long", "long", "str", "long", "str"]],
|
||||
"ExtFloodFill" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"ExtSelectClipRgn" => ["long", ["long", "long", "long"]],
|
||||
"ExtTextOutA" => ["long", ["long", "long", "long", "long", "ptr", "str", "long", "ptr"]],
|
||||
"ExtTextOutW" => ["long", ["long", "long", "long", "long", "ptr", "wstr", "long", "ptr"]],
|
||||
"FillPath" => ["long", ["long"]],
|
||||
"FillRgn" => ["long", ["long", "long", "long"]],
|
||||
"FixBrushOrgEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"FlattenPath" => ["long", ["long"]],
|
||||
"FloodFill" => ["long", ["long", "long", "long", "long"]],
|
||||
"FrameRgn" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"GdiComment" => ["long", ["long", "long", "ptr"]],
|
||||
"GdiFlush" => ["long", []],
|
||||
"GdiGetBatchLimit" => ["long", []],
|
||||
"GdiSetBatchLimit" => ["long", ["long"]],
|
||||
"GetArcDirection" => ["long", ["long"]],
|
||||
"GetAspectRatioFilterEx" => ["long", ["long", "ptr"]],
|
||||
"GetBitmapBits" => ["long", ["long", "long", "ptr"]],
|
||||
"GetBitmapDimensionEx" => ["long", ["long", "ptr"]],
|
||||
"GetBkColor" => ["long", ["long"]],
|
||||
"GetBkMode" => ["long", ["long"]],
|
||||
"GetBoundsRect" => ["long", ["long", "ptr", "long"]],
|
||||
"GetBrushOrgEx" => ["long", ["long", "ptr"]],
|
||||
"GetCharABCWidthsA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharABCWidthsFloatA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharABCWidthsFloatW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharABCWidthsW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharWidth32A" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharWidth32W" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharWidthA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharWidthFloatA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharWidthFloatW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharWidthW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetCharacterPlacementA" => ["long", ["long", "str", "long", "long", "ptr", "long"]],
|
||||
"GetCharacterPlacementW" => ["long", ["long", "wstr", "long", "long", "ptr", "long"]],
|
||||
"GetClipBox" => ["long", ["long", "ptr"]],
|
||||
"GetClipRgn" => ["long", ["long", "long"]],
|
||||
"GetColorAdjustment" => ["long", ["long", "ptr"]],
|
||||
"GetColorSpace" => ["long", ["long"]],
|
||||
"GetCurrentObject" => ["long", ["long", "long"]],
|
||||
"GetCurrentPositionEx" => ["long", ["long", "ptr"]],
|
||||
"GetDCOrgEx" => ["long", ["long", "ptr"]],
|
||||
"GetDIBColorTable" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetDIBits" => ["long", ["long", "long", "long", "long", "ptr", "ptr", "long"]],
|
||||
"GetDeviceCaps" => ["long", ["long", "long"]],
|
||||
"GetDeviceGammaRamp" => ["long", ["long", "ptr"]],
|
||||
"GetEnhMetaFileA" => ["long", ["str"]],
|
||||
"GetEnhMetaFileBits" => ["long", ["long", "long", "ptr"]],
|
||||
"GetEnhMetaFileDescriptionA" => ["long", ["long", "long", "str"]],
|
||||
"GetEnhMetaFileDescriptionW" => ["long", ["long", "long", "wstr"]],
|
||||
"GetEnhMetaFileHeader" => ["long", ["long", "long", "ptr"]],
|
||||
"GetEnhMetaFilePaletteEntries" => ["long", ["long", "long", "ptr"]],
|
||||
"GetEnhMetaFileW" => ["long", ["wstr"]],
|
||||
"GetFontData" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"GetFontLanguageInfo" => ["long", ["long"]],
|
||||
"GetGlyphIndicesA" => ["long", ["long", "str", "long", "ptr", "long"]],
|
||||
"GetGlyphIndicesW" => ["long", ["long", "wstr", "long", "ptr", "long"]],
|
||||
"GetGlyphOutlineA" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"GetGlyphOutlineW" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"GetGraphicsMode" => ["long", ["long"]],
|
||||
"GetICMProfileA" => ["long", ["long", "ptr", "str"]],
|
||||
"GetKerningPairsA" => ["long", ["long", "long", "ptr"]],
|
||||
"GetKerningPairsW" => ["long", ["long", "long", "ptr"]],
|
||||
"GetLayout" => ["long", ["long"]],
|
||||
"GetMapMode" => ["long", ["long"]],
|
||||
"GetMetaFileA" => ["long", ["str"]],
|
||||
"GetMetaFileBitsEx" => ["long", ["long", "long", "ptr"]],
|
||||
"GetMetaFileW" => ["long", ["wstr"]],
|
||||
"GetMetaRgn" => ["long", ["long", "long"]],
|
||||
"GetMiterLimit" => ["long", ["long", "ptr"]],
|
||||
"GetNearestColor" => ["long", ["long", "long"]],
|
||||
"GetNearestPaletteIndex" => ["long", ["long", "long"]],
|
||||
"GetObjectA" => ["long", ["long", "long", "ptr"]],
|
||||
"GetObjectType" => ["long", ["long"]],
|
||||
"GetObjectW" => ["long", ["long", "long", "ptr"]],
|
||||
"GetOutlineTextMetricsA" => ["long", ["long", "long", "ptr"]],
|
||||
"GetOutlineTextMetricsW" => ["long", ["long", "long", "ptr"]],
|
||||
"GetPaletteEntries" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetPath" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"GetPixel" => ["long", ["long", "long", "long"]],
|
||||
"GetPixelFormat" => ["long", ["long"]],
|
||||
"GetPolyFillMode" => ["long", ["long"]],
|
||||
"GetROP2" => ["long", ["long"]],
|
||||
"GetRandomRgn" => ["long", ["long", "long", "long"]],
|
||||
"GetRasterizerCaps" => ["long", ["ptr", "long"]],
|
||||
"GetRegionData" => ["long", ["long", "long", "ptr"]],
|
||||
"GetRelAbs" => ["long", ["long", "long"]],
|
||||
"GetRgnBox" => ["long", ["long", "ptr"]],
|
||||
"GetStockObject" => ["long", ["long"]],
|
||||
"GetStretchBltMode" => ["long", ["long"]],
|
||||
"GetSystemPaletteEntries" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetSystemPaletteUse" => ["long", ["long"]],
|
||||
"GetTextAlign" => ["long", ["long"]],
|
||||
"GetTextCharacterExtra" => ["long", ["long"]],
|
||||
"GetTextCharset" => ["long", ["long"]],
|
||||
"GetTextCharsetInfo" => ["long", ["long", "ptr", "long"]],
|
||||
"GetTextColor" => ["long", ["long"]],
|
||||
"GetTextExtentExPointA" => ["long", ["long", "str", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"GetTextExtentExPointW" => ["long", ["long", "wstr", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"GetTextExtentPoint32A" => ["long", ["long", "str", "long", "ptr"]],
|
||||
"GetTextExtentPoint32W" => ["long", ["long", "wstr", "long", "ptr"]],
|
||||
"GetTextExtentPointA" => ["long", ["long", "str", "long", "ptr"]],
|
||||
"GetTextExtentPointI" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"GetTextExtentPointW" => ["long", ["long", "wstr", "long", "ptr"]],
|
||||
"GetTextFaceA" => ["long", ["long", "long", "str"]],
|
||||
"GetTextFaceW" => ["long", ["long", "long", "wstr"]],
|
||||
"GetTextMetricsA" => ["long", ["long", "ptr"]],
|
||||
"GetTextMetricsW" => ["long", ["long", "ptr"]],
|
||||
"GetViewportExtEx" => ["long", ["long", "ptr"]],
|
||||
"GetViewportOrgEx" => ["long", ["long", "ptr"]],
|
||||
"GetWinMetaFileBits" => ["long", ["long", "long", "ptr", "long", "long"]],
|
||||
"GetWindowExtEx" => ["long", ["long", "ptr"]],
|
||||
"GetWindowOrgEx" => ["long", ["long", "ptr"]],
|
||||
"GetWorldTransform" => ["long", ["long", "ptr"]],
|
||||
"IntersectClipRect" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"InvertRgn" => ["long", ["long", "long"]],
|
||||
"LPtoDP" => ["long", ["long", "ptr", "long"]],
|
||||
"LineDDA" => ["long", ["long", "long", "long", "long", "ptr", "long"]],
|
||||
"LineTo" => ["long", ["long", "long", "long"]],
|
||||
"MaskBlt" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"ModifyWorldTransform" => ["long", ["long", "ptr", "long"]],
|
||||
"MoveToEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"OffsetClipRgn" => ["long", ["long", "long", "long"]],
|
||||
"OffsetRgn" => ["long", ["long", "long", "long"]],
|
||||
"OffsetViewportOrgEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"OffsetWindowOrgEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"OpenJob16" => ["long", ["str", "str", "long"]],
|
||||
"PaintRgn" => ["long", ["long", "long"]],
|
||||
"PatBlt" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"PathToRegion" => ["long", ["long"]],
|
||||
"Pie" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"PlayEnhMetaFile" => ["long", ["long", "long", "ptr"]],
|
||||
"PlayEnhMetaFileRecord" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"PlayMetaFile" => ["long", ["long", "long"]],
|
||||
"PlayMetaFileRecord" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"PlgBlt" => ["long", ["long", "ptr", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"PolyBezier" => ["long", ["long", "ptr", "long"]],
|
||||
"PolyBezierTo" => ["long", ["long", "ptr", "long"]],
|
||||
"PolyDraw" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"PolyPolygon" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"PolyPolyline" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"PolyTextOutA" => ["long", ["long", "ptr", "long"]],
|
||||
"PolyTextOutW" => ["long", ["long", "ptr", "long"]],
|
||||
"Polygon" => ["long", ["long", "ptr", "long"]],
|
||||
"Polyline" => ["long", ["long", "ptr", "long"]],
|
||||
"PolylineTo" => ["long", ["long", "ptr", "long"]],
|
||||
"PtInRegion" => ["long", ["long", "long", "long"]],
|
||||
"PtVisible" => ["long", ["long", "long", "long"]],
|
||||
"RealizePalette" => ["long", ["long"]],
|
||||
"RectInRegion" => ["long", ["long", "ptr"]],
|
||||
"RectVisible" => ["long", ["long", "ptr"]],
|
||||
"Rectangle" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"RemoveFontResourceA" => ["long", ["str"]],
|
||||
"RemoveFontResourceExA" => ["long", ["str", "long", "ptr"]],
|
||||
"RemoveFontResourceExW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"RemoveFontResourceW" => ["long", ["wstr"]],
|
||||
"ResetDCA" => ["long", ["long", "ptr"]],
|
||||
"ResetDCW" => ["long", ["long", "ptr"]],
|
||||
"ResizePalette" => ["long", ["long", "long"]],
|
||||
"RestoreDC" => ["long", ["long", "long"]],
|
||||
"RoundRect" => ["long", ["long", "long", "long", "long", "long", "long", "long"]],
|
||||
"SaveDC" => ["long", ["long"]],
|
||||
"ScaleViewportExtEx" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"ScaleWindowExtEx" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"SelectClipPath" => ["long", ["long", "long"]],
|
||||
"SelectClipRgn" => ["long", ["long", "long"]],
|
||||
"SelectObject" => ["long", ["long", "long"]],
|
||||
"SelectPalette" => ["long", ["long", "long", "long"]],
|
||||
"SetAbortProc" => ["long", ["long", "ptr"]],
|
||||
"SetArcDirection" => ["long", ["long", "long"]],
|
||||
"SetBitmapBits" => ["long", ["long", "long", "ptr"]],
|
||||
"SetBitmapDimensionEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetBkColor" => ["long", ["long", "long"]],
|
||||
"SetBkMode" => ["long", ["long", "long"]],
|
||||
"SetBoundsRect" => ["long", ["long", "ptr", "long"]],
|
||||
"SetBrushOrgEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetColorAdjustment" => ["long", ["long", "ptr"]],
|
||||
"SetColorSpace" => ["long", ["long", "long"]],
|
||||
"SetDCHook" => ["long", ["long", "ptr", "long"]],
|
||||
"SetDIBColorTable" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetDIBits" => ["long", ["long", "long", "long", "long", "ptr", "ptr", "long"]],
|
||||
"SetDIBitsToDevice" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr", "ptr", "long"]],
|
||||
"SetDeviceGammaRamp" => ["long", ["long", "ptr"]],
|
||||
"SetEnhMetaFileBits" => ["long", ["long", "ptr"]],
|
||||
"SetGraphicsMode" => ["long", ["long", "long"]],
|
||||
"SetICMMode" => ["long", ["long", "long"]],
|
||||
"SetLayout" => ["long", ["long", "long"]],
|
||||
"SetMapMode" => ["long", ["long", "long"]],
|
||||
"SetMapperFlags" => ["long", ["long", "long"]],
|
||||
"SetMetaFileBitsEx" => ["long", ["long", "ptr"]],
|
||||
"SetMetaRgn" => ["long", ["long"]],
|
||||
"SetMiterLimit" => ["long", ["long", "long", "ptr"]],
|
||||
"SetObjectOwner" => ["void", ["long", "long"]],
|
||||
"SetPaletteEntries" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetPixel" => ["long", ["long", "long", "long", "long"]],
|
||||
"SetPixelFormat" => ["long", ["long", "long", "ptr"]],
|
||||
"SetPixelV" => ["long", ["long", "long", "long", "long"]],
|
||||
"SetPolyFillMode" => ["long", ["long", "long"]],
|
||||
"SetROP2" => ["long", ["long", "long"]],
|
||||
"SetRectRgn" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"SetRelAbs" => ["long", ["long", "long"]],
|
||||
"SetStretchBltMode" => ["long", ["long", "long"]],
|
||||
"SetSystemPaletteUse" => ["long", ["long", "long"]],
|
||||
"SetTextAlign" => ["long", ["long", "long"]],
|
||||
"SetTextCharacterExtra" => ["long", ["long", "long"]],
|
||||
"SetTextColor" => ["long", ["long", "long"]],
|
||||
"SetTextJustification" => ["long", ["long", "long", "long"]],
|
||||
"SetViewportExtEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetViewportOrgEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetWinMetaFileBits" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"SetWindowExtEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetWindowOrgEx" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetWorldTransform" => ["long", ["long", "ptr"]],
|
||||
"StartDocA" => ["long", ["long", "ptr"]],
|
||||
"StartDocW" => ["long", ["long", "ptr"]],
|
||||
"StartPage" => ["long", ["long"]],
|
||||
"StretchBlt" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"StretchDIBits" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr", "ptr", "long", "long"]],
|
||||
"StrokeAndFillPath" => ["long", ["long"]],
|
||||
"StrokePath" => ["long", ["long"]],
|
||||
"SwapBuffers" => ["long", ["long"]],
|
||||
"TextOutA" => ["long", ["long", "long", "long", "str", "long"]],
|
||||
"TextOutW" => ["long", ["long", "long", "long", "wstr", "long"]],
|
||||
"TranslateCharsetInfo" => ["long", ["ptr", "ptr", "long"]],
|
||||
"UnrealizeObject" => ["long", ["long"]],
|
||||
"UpdateColors" => ["long", ["long"]],
|
||||
"WidenPath" => ["long", ["long"]],
|
||||
"WriteSpool16" => ["long", ["long", "str", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("gdi32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,64 +0,0 @@
|
|||
package glu32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"gluBeginCurve" => ["long", ["ptr"]],
|
||||
"gluBeginPolygon" => ["long", ["ptr"]],
|
||||
"gluBeginSurface" => ["long", ["ptr"]],
|
||||
"gluBeginTrim" => ["long", ["ptr"]],
|
||||
"gluBuild1DMipmaps" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"gluBuild2DMipmaps" => ["long", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"gluCheckExtension" => ["long", ["ptr", "ptr"]],
|
||||
"gluCylinder" => ["long", ["ptr", "double", "double", "double", "long", "long"]],
|
||||
"gluDeleteNurbsRenderer" => ["long", ["ptr"]],
|
||||
"gluDeleteQuadric" => ["long", ["ptr"]],
|
||||
"gluDeleteTess" => ["long", ["ptr"]],
|
||||
"gluDisk" => ["long", ["ptr", "double", "double", "long", "long"]],
|
||||
"gluEndCurve" => ["long", ["ptr"]],
|
||||
"gluEndPolygon" => ["long", ["ptr"]],
|
||||
"gluEndSurface" => ["long", ["ptr"]],
|
||||
"gluEndTrim" => ["long", ["ptr"]],
|
||||
"gluErrorString" => ["long", ["long"]],
|
||||
"gluGetNurbsProperty" => ["long", ["ptr", "long", "ptr"]],
|
||||
"gluGetString" => ["long", ["long"]],
|
||||
"gluLoadSamplingMatrices" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"gluLookAt" => ["long", ["double", "double", "double", "double", "double", "double", "double", "double", "double"]],
|
||||
"gluNewNurbsRenderer" => ["long", ["undef"]],
|
||||
"gluNewQuadric" => ["long", ["undef"]],
|
||||
"gluNewTess" => ["long", ["undef"]],
|
||||
"gluNextContour" => ["long", ["ptr", "long"]],
|
||||
"gluNurbsCallback" => ["long", ["ptr", "long", "ptr"]],
|
||||
"gluNurbsCurve" => ["long", ["ptr", "long", "ptr", "long", "ptr", "long", "long"]],
|
||||
"gluNurbsProperty" => ["long", ["ptr", "long", "long"]],
|
||||
"gluNurbsSurface" => ["long", ["ptr", "long", "ptr", "long", "ptr", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"gluOrtho2D" => ["long", ["double", "double", "double", "double"]],
|
||||
"gluPartialDisk" => ["long", ["ptr", "double", "double", "long", "long", "double", "double"]],
|
||||
"gluPerspective" => ["long", ["double", "double", "double", "double"]],
|
||||
"gluPickMatrix" => ["long", ["double", "double", "double", "double", "ptr"]],
|
||||
"gluProject" => ["long", ["double", "double", "double", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"gluPwlCurve" => ["long", ["ptr", "long", "ptr", "long", "long"]],
|
||||
"gluQuadricCallback" => ["long", ["ptr", "long", "ptr"]],
|
||||
"gluQuadricDrawStyle" => ["long", ["ptr", "long"]],
|
||||
"gluQuadricNormals" => ["long", ["ptr", "long"]],
|
||||
"gluQuadricOrientation" => ["long", ["ptr", "long"]],
|
||||
"gluQuadricTexture" => ["long", ["ptr", "long"]],
|
||||
"gluScaleImage" => ["long", ["long", "long", "long", "long", "ptr", "long", "long", "long", "ptr"]],
|
||||
"gluSphere" => ["long", ["ptr", "double", "long", "long"]],
|
||||
"gluTessCallback" => ["long", ["ptr", "long", "ptr"]],
|
||||
"gluTessVertex" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"gluUnProject" => ["long", ["double", "double", "double", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("glu32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,22 +0,0 @@
|
|||
package icmp;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"IcmpCloseHandle" => ["long", ["long"]],
|
||||
"IcmpCreateFile" => ["long", []],
|
||||
"IcmpSendEcho" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("icmp",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,79 +0,0 @@
|
|||
package imagehlp;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"BindImage" => ["long", ["str", "str", "str"]],
|
||||
"BindImageEx" => ["long", ["long", "str", "str", "str", "ptr"]],
|
||||
"CheckSumMappedFile" => ["ptr", ["ptr", "long", "ptr", "ptr"]],
|
||||
"EnumerateLoadedModules" => ["long", ["long", "ptr", "ptr"]],
|
||||
"FindDebugInfoFile" => ["long", ["str", "str", "str"]],
|
||||
"FindExecutableImage" => ["long", ["str", "str", "str"]],
|
||||
"GetImageConfigInformation" => ["long", ["ptr", "ptr"]],
|
||||
"GetImageUnusedHeaderBytes" => ["long", ["ptr", "ptr"]],
|
||||
"GetTimestampForLoadedLibrary" => ["long", ["long"]],
|
||||
"ImageAddCertificate" => ["long", ["long", "ptr", "ptr"]],
|
||||
"ImageDirectoryEntryToData" => ["ptr", ["ptr", "long", "long", "ptr"]],
|
||||
"ImageEnumerateCertificates" => ["long", ["long", "long", "ptr", "ptr", "long"]],
|
||||
"ImageGetCertificateData" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"ImageGetCertificateHeader" => ["long", ["long", "long", "ptr"]],
|
||||
"ImageGetDigestStream" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"ImageLoad" => ["ptr", ["str", "str"]],
|
||||
"ImageNtHeader" => ["ptr", ["ptr"]],
|
||||
"ImageRemoveCertificate" => ["long", ["long", "long"]],
|
||||
"ImageRvaToSection" => ["ptr", ["ptr", "ptr", "long"]],
|
||||
"ImageRvaToVa" => ["ptr", ["ptr", "ptr", "long", "ptr"]],
|
||||
"ImageUnload" => ["long", ["ptr"]],
|
||||
"ImagehlpApiVersion" => ["ptr", ["undef"]],
|
||||
"ImagehlpApiVersionEx" => ["ptr", ["ptr"]],
|
||||
"MakeSureDirectoryPathExists" => ["long", ["str"]],
|
||||
"MapAndLoad" => ["long", ["str", "str", "ptr", "long", "long"]],
|
||||
"MapDebugInformation" => ["ptr", ["long", "str", "str", "long"]],
|
||||
"MapFileAndCheckSumA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"MapFileAndCheckSumW" => ["long", ["wstr", "ptr", "ptr"]],
|
||||
"ReBaseImage" => ["long", ["str", "str", "long", "long", "long", "long", "ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"RemovePrivateCvSymbolic" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RemoveRelocations" => ["void", ["ptr"]],
|
||||
"SearchTreeForFile" => ["long", ["str", "str", "str"]],
|
||||
"SetImageConfigInformation" => ["long", ["ptr", "ptr"]],
|
||||
"SplitSymbols" => ["long", ["str", "str", "str", "long"]],
|
||||
"StackWalk" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SymCleanup" => ["long", ["long"]],
|
||||
"SymEnumerateModules" => ["long", ["long", "ptr", "ptr"]],
|
||||
"SymEnumerateSymbols" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"SymFunctionTableAccess" => ["ptr", ["long", "long"]],
|
||||
"SymGetModuleBase" => ["long", ["long", "long"]],
|
||||
"SymGetModuleInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"SymGetOptions" => ["long", ["undef"]],
|
||||
"SymGetSearchPath" => ["long", ["long", "str", "long"]],
|
||||
"SymGetSymFromAddr" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"SymGetSymFromName" => ["long", ["long", "str", "ptr"]],
|
||||
"SymGetSymNext" => ["long", ["long", "ptr"]],
|
||||
"SymGetSymPrev" => ["long", ["long", "ptr"]],
|
||||
"SymInitialize" => ["long", ["long", "str", "long"]],
|
||||
"SymLoadModule" => ["long", ["long", "long", "str", "str", "long", "long"]],
|
||||
"SymRegisterCallback" => ["long", ["long", "ptr", "ptr"]],
|
||||
"SymSetOptions" => ["long", ["long"]],
|
||||
"SymSetSearchPath" => ["long", ["long", "str"]],
|
||||
"SymUnDName" => ["long", ["ptr", "str", "long"]],
|
||||
"SymUnloadModule" => ["long", ["long", "long"]],
|
||||
"TouchFileTimes" => ["long", ["long", "ptr"]],
|
||||
"UnDecorateSymbolName" => ["long", ["str", "str", "long", "long"]],
|
||||
"UnMapAndLoad" => ["long", ["ptr"]],
|
||||
"UnmapDebugInformation" => ["long", ["ptr"]],
|
||||
"UpdateDebugInfoFile" => ["long", ["str", "str", "str", "ptr"]],
|
||||
"UpdateDebugInfoFileEx" => ["long", ["str", "str", "str", "ptr", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("imagehlp",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,76 +0,0 @@
|
|||
package imm32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"ImmAssociateContext" => ["long", ["long", "long"]],
|
||||
"ImmConfigureIMEA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"ImmConfigureIMEW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"ImmCreateContext" => ["long", ["undef"]],
|
||||
"ImmDestroyContext" => ["long", ["long"]],
|
||||
"ImmEnumRegisterWordA" => ["long", ["long", "ptr", "str", "long", "str", "ptr"]],
|
||||
"ImmEnumRegisterWordW" => ["long", ["long", "ptr", "wstr", "long", "wstr", "ptr"]],
|
||||
"ImmEscapeA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"ImmEscapeW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"ImmGetCandidateListA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ImmGetCandidateListCountA" => ["long", ["long", "ptr"]],
|
||||
"ImmGetCandidateListCountW" => ["long", ["long", "ptr"]],
|
||||
"ImmGetCandidateListW" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ImmGetCandidateWindow" => ["long", ["long", "long", "ptr"]],
|
||||
"ImmGetCompositionFontA" => ["long", ["long", "ptr"]],
|
||||
"ImmGetCompositionFontW" => ["long", ["long", "ptr"]],
|
||||
"ImmGetCompositionStringA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ImmGetCompositionStringW" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ImmGetCompositionWindow" => ["long", ["long", "ptr"]],
|
||||
"ImmGetContext" => ["long", ["long"]],
|
||||
"ImmGetConversionListA" => ["long", ["long", "long", "str", "ptr", "long", "long"]],
|
||||
"ImmGetConversionListW" => ["long", ["long", "long", "wstr", "ptr", "long", "long"]],
|
||||
"ImmGetConversionStatus" => ["long", ["long", "ptr", "ptr"]],
|
||||
"ImmGetDefaultIMEWnd" => ["long", ["long"]],
|
||||
"ImmGetDescriptionA" => ["long", ["long", "str", "long"]],
|
||||
"ImmGetDescriptionW" => ["long", ["long", "wstr", "long"]],
|
||||
"ImmGetGuideLineA" => ["long", ["long", "long", "str", "long"]],
|
||||
"ImmGetGuideLineW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"ImmGetIMEFileNameA" => ["long", ["long", "str", "long"]],
|
||||
"ImmGetIMEFileNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"ImmGetOpenStatus" => ["long", ["long"]],
|
||||
"ImmGetProperty" => ["long", ["long", "long"]],
|
||||
"ImmGetRegisterWordStyleA" => ["long", ["long", "long", "ptr"]],
|
||||
"ImmGetRegisterWordStyleW" => ["long", ["long", "long", "ptr"]],
|
||||
"ImmGetStatusWindowPos" => ["long", ["long", "ptr"]],
|
||||
"ImmGetVirtualKey" => ["long", ["long"]],
|
||||
"ImmInstallIMEA" => ["long", ["str", "str"]],
|
||||
"ImmInstallIMEW" => ["long", ["wstr", "wstr"]],
|
||||
"ImmIsIME" => ["long", ["long"]],
|
||||
"ImmIsUIMessageA" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImmIsUIMessageW" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImmNotifyIME" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImmRegisterWordA" => ["long", ["long", "str", "long", "str"]],
|
||||
"ImmRegisterWordW" => ["long", ["long", "wstr", "long", "wstr"]],
|
||||
"ImmReleaseContext" => ["long", ["long", "long"]],
|
||||
"ImmSetCandidateWindow" => ["long", ["long", "ptr"]],
|
||||
"ImmSetCompositionFontA" => ["long", ["long", "ptr"]],
|
||||
"ImmSetCompositionFontW" => ["long", ["long", "ptr"]],
|
||||
"ImmSetCompositionStringA" => ["long", ["long", "long", "ptr", "long", "ptr", "long"]],
|
||||
"ImmSetCompositionStringW" => ["long", ["long", "long", "ptr", "long", "ptr", "long"]],
|
||||
"ImmSetCompositionWindow" => ["long", ["long", "ptr"]],
|
||||
"ImmSetConversionStatus" => ["long", ["long", "long", "long"]],
|
||||
"ImmSetOpenStatus" => ["long", ["long", "long"]],
|
||||
"ImmSetStatusWindowPos" => ["long", ["long", "ptr"]],
|
||||
"ImmSimulateHotKey" => ["long", ["long", "long"]],
|
||||
"ImmUnregisterWordA" => ["long", ["long", "str", "long", "str"]],
|
||||
"ImmUnregisterWordW" => ["long", ["long", "wstr", "long", "wstr"]]
|
||||
};
|
||||
|
||||
&wine::declare("imm32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package joystick_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("joystick.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,765 +0,0 @@
|
|||
package kernel32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"k32CharToOemA" => ["long", ["str", "str"]],
|
||||
"k32CharToOemBuffA" => ["long", ["str", "str", "long"]],
|
||||
"k32OemToCharA" => ["long", ["str", "str"]],
|
||||
"k32OemToCharBuffA" => ["long", ["str", "str", "long"]],
|
||||
"k32LoadStringA" => ["long", ["long", "long", "str", "long"]],
|
||||
"k32wvsprintfA" => ["long", ["str", "str", "ptr"]],
|
||||
"CommonUnimpStub" => ["void", ["ptr"]],
|
||||
"GetProcessDword" => ["long", ["long", "long"]],
|
||||
"DosFileHandleToWin32Handle" => ["long", ["long"]],
|
||||
"Win32HandleToDosFileHandle" => ["long", ["long"]],
|
||||
"DisposeLZ32Handle" => ["void", ["long"]],
|
||||
"GlobalAlloc16" => ["long", ["long", "long"]],
|
||||
"GlobalLock16" => ["ptr", ["long"]],
|
||||
"GlobalUnlock16" => ["long", ["long"]],
|
||||
"GlobalFix16" => ["long", ["long"]],
|
||||
"GlobalUnfix16" => ["void", ["long"]],
|
||||
"GlobalWire16" => ["ptr", ["long"]],
|
||||
"GlobalUnWire16" => ["long", ["long"]],
|
||||
"GlobalFree16" => ["long", ["long"]],
|
||||
"GlobalSize16" => ["long", ["long"]],
|
||||
"HouseCleanLogicallyDeadHandles" => ["void", []],
|
||||
"GetWin16DOSEnv" => ["long", ["undef"]],
|
||||
"LoadLibrary16" => ["long", ["str"]],
|
||||
"FreeLibrary16" => ["void", ["long"]],
|
||||
"GetProcAddress16" => ["ptr", ["long", "str"]],
|
||||
"AllocMappedBuffer" => ["void", ["ptr"]],
|
||||
"FreeMappedBuffer" => ["void", ["ptr"]],
|
||||
"OT_32ThkLSF" => ["void", ["ptr"]],
|
||||
"ThunkInitLSF" => ["ptr", ["ptr", "str", "long", "str", "str"]],
|
||||
"LogApiThkLSF" => ["void", ["str", "ptr"]],
|
||||
"ThunkInitLS" => ["long", ["ptr", "str", "long", "str", "str"]],
|
||||
"LogApiThkSL" => ["void", ["str", "ptr"]],
|
||||
"Common32ThkLS" => ["void", ["ptr"]],
|
||||
"ThunkInitSL" => ["void", ["ptr", "str", "long", "str", "str"]],
|
||||
"LogCBThkSL" => ["void", ["str", "ptr"]],
|
||||
"ReleaseThunkLock" => ["void", ["ptr"]],
|
||||
"RestoreThunkLock" => ["void", ["long"]],
|
||||
"W32S_BackTo32" => ["void", ["ptr"]],
|
||||
"GetThunkBuff" => ["ptr", []],
|
||||
"GetThunkStuff" => ["ptr", ["str", "str"]],
|
||||
"K32WOWCallback16" => ["long", ["long", "long"]],
|
||||
"K32WOWCallback16Ex" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"K32WOWGetVDMPointer" => ["ptr", ["long", "long", "long"]],
|
||||
"K32WOWHandle32" => ["long", ["long", "long"]],
|
||||
"K32WOWHandle16" => ["long", ["long", "long"]],
|
||||
"K32WOWGlobalAlloc16" => ["long", ["long", "long"]],
|
||||
"K32WOWGlobalLock16" => ["ptr", ["long"]],
|
||||
"K32WOWGlobalUnlock16" => ["long", ["long"]],
|
||||
"K32WOWGlobalFree16" => ["long", ["long"]],
|
||||
"K32WOWGlobalAllocLock16" => ["long", ["long", "long", "ptr"]],
|
||||
"K32WOWGlobalUnlockFree16" => ["long", ["long"]],
|
||||
"K32WOWGlobalLockSize16" => ["long", ["long", "ptr"]],
|
||||
"K32WOWYield16" => ["void", []],
|
||||
"K32WOWDirectedYield16" => ["void", ["long"]],
|
||||
"K32WOWGetVDMPointerFix" => ["ptr", ["long", "long", "long"]],
|
||||
"K32WOWGetVDMPointerUnfix" => ["void", ["long"]],
|
||||
"K32WOWGetDescriptor" => ["long", ["ptr", "ptr"]],
|
||||
"SSOnBigStack" => ["long", ["undef"]],
|
||||
"FT_PrologPrime" => ["void", ["ptr"]],
|
||||
"QT_ThunkPrime" => ["void", ["ptr"]],
|
||||
"PK16FNF" => ["void", ["str"]],
|
||||
"GetPK16SysVar" => ["ptr", []],
|
||||
"GetpWin16Lock" => ["void", ["ptr"]],
|
||||
"_CheckNotSysLevel" => ["void", ["ptr"]],
|
||||
"_ConfirmSysLevel" => ["long", ["ptr"]],
|
||||
"_ConfirmWin16Lock" => ["long", []],
|
||||
"_EnterSysLevel" => ["void", ["ptr"]],
|
||||
"_LeaveSysLevel" => ["void", ["ptr"]],
|
||||
"AddAtomA" => ["long", ["str"]],
|
||||
"AddAtomW" => ["long", ["wstr"]],
|
||||
"AllocConsole" => ["long", []],
|
||||
"AllocSLCallback" => ["long", ["long", "long"]],
|
||||
"AreFileApisANSI" => ["long", []],
|
||||
"BackupRead" => ["long", ["long", "ptr", "long", "ptr", "long", "long", "ptr"]],
|
||||
"BackupSeek" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"BackupWrite" => ["long", ["long", "ptr", "long", "ptr", "long", "long", "ptr"]],
|
||||
"Beep" => ["long", ["long", "long"]],
|
||||
"BuildCommDCBA" => ["long", ["str", "ptr"]],
|
||||
"BuildCommDCBAndTimeoutsA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"BuildCommDCBAndTimeoutsW" => ["long", ["wstr", "ptr", "ptr"]],
|
||||
"BuildCommDCBW" => ["long", ["wstr", "ptr"]],
|
||||
"CallNamedPipeA" => ["long", ["str", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"CallNamedPipeW" => ["long", ["wstr", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"CancelIo" => ["long", ["long"]],
|
||||
"CancelWaitableTimer" => ["long", ["long"]],
|
||||
"ClearCommBreak" => ["long", ["long"]],
|
||||
"ClearCommError" => ["long", ["long", "ptr", "ptr"]],
|
||||
"CloseHandle" => ["long", ["long"]],
|
||||
"CloseProfileUserMapping" => ["long", []],
|
||||
"CommConfigDialogA" => ["long", ["str", "long", "ptr"]],
|
||||
"CommConfigDialogW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"CompareFileTime" => ["long", ["ptr", "ptr"]],
|
||||
"CompareStringA" => ["long", ["long", "long", "str", "long", "str", "long"]],
|
||||
"CompareStringW" => ["long", ["long", "long", "wstr", "long", "wstr", "long"]],
|
||||
"ConnectNamedPipe" => ["long", ["long", "ptr"]],
|
||||
"ContinueDebugEvent" => ["long", ["long", "long", "long"]],
|
||||
"ConvertDefaultLocale" => ["long", ["long"]],
|
||||
"ConvertDialog32To16" => ["void", ["ptr", "long", "ptr"]],
|
||||
"ConvertToGlobalHandle" => ["long", ["long"]],
|
||||
"CopyFileA" => ["long", ["str", "str", "long"]],
|
||||
"CopyFileExA" => ["long", ["str", "str", "ptr", "ptr", "ptr", "long"]],
|
||||
"CopyFileExW" => ["long", ["wstr", "wstr", "ptr", "ptr", "ptr", "long"]],
|
||||
"CopyFileW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"CreateConsoleScreenBuffer" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"CreateDirectoryA" => ["long", ["str", "ptr"]],
|
||||
"CreateDirectoryExA" => ["long", ["str", "str", "ptr"]],
|
||||
"CreateDirectoryExW" => ["long", ["wstr", "wstr", "ptr"]],
|
||||
"CreateDirectoryW" => ["long", ["wstr", "ptr"]],
|
||||
"CreateEventA" => ["long", ["ptr", "long", "long", "str"]],
|
||||
"CreateEventW" => ["long", ["ptr", "long", "long", "wstr"]],
|
||||
"CreateFileA" => ["long", ["str", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"CreateFileMappingA" => ["long", ["long", "ptr", "long", "long", "long", "str"]],
|
||||
"CreateFileMappingW" => ["long", ["long", "ptr", "long", "long", "long", "wstr"]],
|
||||
"CreateFileW" => ["long", ["wstr", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"CreateIoCompletionPort" => ["long", ["long", "long", "long", "long"]],
|
||||
"CreateMailslotA" => ["long", ["str", "long", "long", "ptr"]],
|
||||
"CreateMailslotW" => ["long", ["wstr", "long", "long", "ptr"]],
|
||||
"CreateMutexA" => ["long", ["ptr", "long", "str"]],
|
||||
"CreateMutexW" => ["long", ["ptr", "long", "wstr"]],
|
||||
"CreateNamedPipeA" => ["long", ["str", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"CreateNamedPipeW" => ["long", ["wstr", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"CreatePipe" => ["long", ["ptr", "ptr", "ptr", "long"]],
|
||||
"CreateProcessA" => ["long", ["str", "str", "ptr", "ptr", "long", "long", "ptr", "str", "ptr", "ptr"]],
|
||||
"CreateProcessW" => ["long", ["wstr", "wstr", "ptr", "ptr", "long", "long", "ptr", "wstr", "ptr", "ptr"]],
|
||||
"CreateSemaphoreA" => ["long", ["ptr", "long", "long", "str"]],
|
||||
"CreateSemaphoreW" => ["long", ["ptr", "long", "long", "wstr"]],
|
||||
"CreateSocketHandle" => ["long", []],
|
||||
"CreateTapePartition" => ["long", ["long", "long", "long", "long"]],
|
||||
"CreateThread" => ["long", ["ptr", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"CreateToolhelp32Snapshot" => ["long", ["long", "long"]],
|
||||
"CreateWaitableTimerA" => ["long", ["ptr", "long", "str"]],
|
||||
"CreateWaitableTimerW" => ["long", ["ptr", "long", "wstr"]],
|
||||
"DebugActiveProcess" => ["long", ["long"]],
|
||||
"DebugActiveProcessStop" => ["long", ["long"]],
|
||||
"DebugBreak" => ["void", []],
|
||||
"DebugBreakProcess" => ["long", ["long"]],
|
||||
"DebugSetProcessKillOnExit" => ["long", ["long"]],
|
||||
"DefineDosDeviceA" => ["long", ["long", "str", "str"]],
|
||||
"DeleteAtom" => ["long", ["long"]],
|
||||
"DeleteFileA" => ["long", ["str"]],
|
||||
"DeleteFileW" => ["long", ["wstr"]],
|
||||
"DeviceIoControl" => ["long", ["long", "long", "ptr", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"DisableThreadLibraryCalls" => ["long", ["long"]],
|
||||
"DisconnectNamedPipe" => ["long", ["long"]],
|
||||
"DosDateTimeToFileTime" => ["long", ["long", "long", "ptr"]],
|
||||
"DuplicateHandle" => ["long", ["long", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"EnumCalendarInfoA" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"EnumDateFormatsA" => ["long", ["ptr", "long", "long"]],
|
||||
"EnumDateFormatsW" => ["long", ["ptr", "long", "long"]],
|
||||
"EnumResourceLanguagesA" => ["long", ["long", "str", "str", "ptr", "long"]],
|
||||
"EnumResourceLanguagesW" => ["long", ["long", "wstr", "wstr", "ptr", "long"]],
|
||||
"EnumResourceNamesA" => ["long", ["long", "str", "ptr", "long"]],
|
||||
"EnumResourceNamesW" => ["long", ["long", "wstr", "ptr", "long"]],
|
||||
"EnumResourceTypesA" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumResourceTypesW" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumSystemCodePagesA" => ["long", ["ptr", "long"]],
|
||||
"EnumSystemCodePagesW" => ["long", ["ptr", "long"]],
|
||||
"EnumSystemLocalesA" => ["long", ["ptr", "long"]],
|
||||
"EnumSystemLocalesW" => ["long", ["ptr", "long"]],
|
||||
"EnumTimeFormatsA" => ["long", ["ptr", "long", "long"]],
|
||||
"EnumTimeFormatsW" => ["long", ["ptr", "long", "long"]],
|
||||
"EraseTape" => ["long", ["long", "long", "long"]],
|
||||
"EscapeCommFunction" => ["long", ["long", "long"]],
|
||||
"ExitProcess" => ["void", ["long"]],
|
||||
"ExitThread" => ["void", ["long"]],
|
||||
"ExpandEnvironmentStringsA" => ["long", ["str", "str", "long"]],
|
||||
"ExpandEnvironmentStringsW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"FT_Exit0" => ["void", ["ptr"]],
|
||||
"FT_Exit12" => ["void", ["ptr"]],
|
||||
"FT_Exit16" => ["void", ["ptr"]],
|
||||
"FT_Exit20" => ["void", ["ptr"]],
|
||||
"FT_Exit24" => ["void", ["ptr"]],
|
||||
"FT_Exit28" => ["void", ["ptr"]],
|
||||
"FT_Exit32" => ["void", ["ptr"]],
|
||||
"FT_Exit36" => ["void", ["ptr"]],
|
||||
"FT_Exit4" => ["void", ["ptr"]],
|
||||
"FT_Exit40" => ["void", ["ptr"]],
|
||||
"FT_Exit44" => ["void", ["ptr"]],
|
||||
"FT_Exit48" => ["void", ["ptr"]],
|
||||
"FT_Exit52" => ["void", ["ptr"]],
|
||||
"FT_Exit56" => ["void", ["ptr"]],
|
||||
"FT_Exit8" => ["void", ["ptr"]],
|
||||
"FT_Prolog" => ["void", ["ptr"]],
|
||||
"FT_Thunk" => ["void", ["ptr"]],
|
||||
"FatalAppExitA" => ["void", ["long", "str"]],
|
||||
"FatalAppExitW" => ["void", ["long", "wstr"]],
|
||||
"FileTimeToDosDateTime" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"FileTimeToLocalFileTime" => ["long", ["ptr", "ptr"]],
|
||||
"FileTimeToSystemTime" => ["long", ["ptr", "ptr"]],
|
||||
"FillConsoleOutputAttribute" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"FillConsoleOutputCharacterA" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"FillConsoleOutputCharacterW" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"FindAtomA" => ["long", ["str"]],
|
||||
"FindAtomW" => ["long", ["wstr"]],
|
||||
"FindClose" => ["long", ["long"]],
|
||||
"FindCloseChangeNotification" => ["long", ["long"]],
|
||||
"FindFirstChangeNotificationA" => ["long", ["str", "long", "long"]],
|
||||
"FindFirstChangeNotificationW" => ["long", ["wstr", "long", "long"]],
|
||||
"FindFirstFileA" => ["long", ["str", "ptr"]],
|
||||
"FindFirstFileExA" => ["long", ["str", "ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"FindFirstFileExW" => ["long", ["wstr", "ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"FindFirstFileW" => ["long", ["wstr", "ptr"]],
|
||||
"FindNextChangeNotification" => ["long", ["long"]],
|
||||
"FindNextFileA" => ["long", ["long", "ptr"]],
|
||||
"FindNextFileW" => ["long", ["long", "ptr"]],
|
||||
"FindResource16" => ["long", ["long", "str", "str"]],
|
||||
"FindResourceA" => ["long", ["long", "str", "str"]],
|
||||
"FindResourceExA" => ["long", ["long", "str", "str", "long"]],
|
||||
"FindResourceExW" => ["long", ["long", "wstr", "wstr", "long"]],
|
||||
"FindResourceW" => ["long", ["long", "wstr", "wstr"]],
|
||||
"FlushConsoleInputBuffer" => ["long", ["long"]],
|
||||
"FlushFileBuffers" => ["long", ["long"]],
|
||||
"FlushInstructionCache" => ["long", ["long", "ptr", "long"]],
|
||||
"FlushViewOfFile" => ["long", ["ptr", "long"]],
|
||||
"FormatMessageA" => ["long", ["long", "ptr", "long", "long", "str", "long", "ptr"]],
|
||||
"FormatMessageW" => ["long", ["long", "ptr", "long", "long", "wstr", "long", "ptr"]],
|
||||
"FreeConsole" => ["long", []],
|
||||
"FreeEnvironmentStringsA" => ["long", ["str"]],
|
||||
"FreeEnvironmentStringsW" => ["long", ["wstr"]],
|
||||
"FreeLibrary" => ["long", ["long"]],
|
||||
"FreeLibraryAndExitThread" => ["void", ["long", "long"]],
|
||||
"FreeResource" => ["long", ["long"]],
|
||||
"FreeResource16" => ["long", ["long"]],
|
||||
"FreeSLCallback" => ["void", ["long"]],
|
||||
"GenerateConsoleCtrlEvent" => ["long", ["long", "long"]],
|
||||
"Get16DLLAddress" => ["ptr", ["long", "str"]],
|
||||
"GetACP" => ["long", []],
|
||||
"GetAtomNameA" => ["long", ["long", "str", "long"]],
|
||||
"GetAtomNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"GetBinaryType" => ["long", ["str", "ptr"]],
|
||||
"GetBinaryTypeA" => ["long", ["str", "ptr"]],
|
||||
"GetBinaryTypeW" => ["long", ["wstr", "ptr"]],
|
||||
"GetCPInfo" => ["long", ["long", "ptr"]],
|
||||
"GetCalendarInfoA" => ["long", ["long", "long", "long", "str", "long", "ptr"]],
|
||||
"GetCalendarInfoW" => ["long", ["long", "long", "long", "wstr", "long", "ptr"]],
|
||||
"GetCommConfig" => ["long", ["long", "ptr", "ptr"]],
|
||||
"GetCommMask" => ["long", ["long", "ptr"]],
|
||||
"GetCommModemStatus" => ["long", ["long", "ptr"]],
|
||||
"GetCommProperties" => ["long", ["long", "ptr"]],
|
||||
"GetCommState" => ["long", ["long", "ptr"]],
|
||||
"GetCommTimeouts" => ["long", ["long", "ptr"]],
|
||||
"GetCommandLineA" => ["str", []],
|
||||
"GetCommandLineW" => ["wstr", []],
|
||||
"GetCompressedFileSizeA" => ["long", ["str", "ptr"]],
|
||||
"GetCompressedFileSizeW" => ["long", ["wstr", "ptr"]],
|
||||
"GetComputerNameA" => ["long", ["str", "ptr"]],
|
||||
"GetComputerNameExA" => ["long", ["ptr", "str", "ptr"]],
|
||||
"GetComputerNameExW" => ["long", ["ptr", "wstr", "ptr"]],
|
||||
"GetComputerNameW" => ["long", ["wstr", "ptr"]],
|
||||
"GetConsoleCP" => ["long", []],
|
||||
"GetConsoleCursorInfo" => ["long", ["long", "ptr"]],
|
||||
"GetConsoleMode" => ["long", ["long", "ptr"]],
|
||||
"GetConsoleOutputCP" => ["long", []],
|
||||
"GetConsoleScreenBufferInfo" => ["long", ["long", "ptr"]],
|
||||
"GetConsoleTitleA" => ["long", ["str", "long"]],
|
||||
"GetConsoleTitleW" => ["long", ["wstr", "long"]],
|
||||
"GetCurrencyFormatA" => ["long", ["long", "long", "str", "ptr", "str", "long"]],
|
||||
"GetCurrencyFormatW" => ["long", ["long", "long", "wstr", "ptr", "wstr", "long"]],
|
||||
"GetCurrentDirectoryA" => ["long", ["long", "str"]],
|
||||
"GetCurrentDirectoryW" => ["long", ["long", "wstr"]],
|
||||
"GetCurrentProcess" => ["long", []],
|
||||
"GetCurrentProcessId" => ["long", []],
|
||||
"GetCurrentTask" => ["long", []],
|
||||
"GetCurrentThread" => ["long", []],
|
||||
"GetCurrentThreadId" => ["long", []],
|
||||
"GetDOSEnvironment16" => ["ptr", []],
|
||||
"GetDateFormatA" => ["long", ["long", "long", "ptr", "str", "str", "long"]],
|
||||
"GetDateFormatW" => ["long", ["long", "long", "ptr", "wstr", "wstr", "long"]],
|
||||
"GetDefaultCommConfigA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"GetDefaultCommConfigW" => ["long", ["wstr", "ptr", "ptr"]],
|
||||
"GetDiskFreeSpaceA" => ["long", ["str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetDiskFreeSpaceExA" => ["long", ["str", "ptr", "ptr", "ptr"]],
|
||||
"GetDiskFreeSpaceExW" => ["long", ["wstr", "ptr", "ptr", "ptr"]],
|
||||
"GetDiskFreeSpaceW" => ["long", ["wstr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetDriveTypeA" => ["long", ["str"]],
|
||||
"GetDriveTypeW" => ["long", ["wstr"]],
|
||||
"GetEnvironmentStrings" => ["str", []],
|
||||
"GetEnvironmentStringsA" => ["str", []],
|
||||
"GetEnvironmentStringsW" => ["wstr", []],
|
||||
"GetEnvironmentVariableA" => ["long", ["str", "str", "long"]],
|
||||
"GetEnvironmentVariableW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"GetExitCodeProcess" => ["long", ["long", "ptr"]],
|
||||
"GetExitCodeThread" => ["long", ["long", "ptr"]],
|
||||
"GetFileAttributesA" => ["long", ["str"]],
|
||||
"GetFileAttributesExA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"GetFileAttributesExW" => ["long", ["wstr", "ptr", "ptr"]],
|
||||
"GetFileAttributesW" => ["long", ["wstr"]],
|
||||
"GetFileInformationByHandle" => ["long", ["long", "ptr"]],
|
||||
"GetFileSize" => ["long", ["long", "ptr"]],
|
||||
"GetFileTime" => ["long", ["long", "ptr", "ptr", "ptr"]],
|
||||
"GetFileType" => ["long", ["long"]],
|
||||
"GetFullPathNameA" => ["long", ["str", "long", "str", "ptr"]],
|
||||
"GetFullPathNameW" => ["long", ["wstr", "long", "wstr", "ptr"]],
|
||||
"GetHandleContext" => ["long", ["long"]],
|
||||
"GetHandleInformation" => ["long", ["long", "ptr"]],
|
||||
"GetLastError" => ["long", []],
|
||||
"GetLocalTime" => ["void", ["ptr"]],
|
||||
"GetLocaleInfoA" => ["long", ["long", "long", "str", "long"]],
|
||||
"GetLocaleInfoW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"GetLogicalDriveStringsA" => ["long", ["long", "str"]],
|
||||
"GetLogicalDriveStringsW" => ["long", ["long", "wstr"]],
|
||||
"GetLogicalDrives" => ["long", []],
|
||||
"GetLongPathNameA" => ["long", ["str", "str", "long"]],
|
||||
"GetLongPathNameW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"GetMailslotInfo" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetModuleFileName16" => ["long", ["long", "str", "long"]],
|
||||
"GetModuleFileNameA" => ["long", ["long", "str", "long"]],
|
||||
"GetModuleFileNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"GetModuleHandle16" => ["long", ["str"]],
|
||||
"GetModuleHandleA" => ["long", ["str"]],
|
||||
"GetModuleHandleW" => ["long", ["wstr"]],
|
||||
"GetNamedPipeHandleStateA" => ["long", ["long", "ptr", "ptr", "ptr", "ptr", "str", "long"]],
|
||||
"GetNamedPipeHandleStateW" => ["long", ["long", "ptr", "ptr", "ptr", "ptr", "wstr", "long"]],
|
||||
"GetNamedPipeInfo" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetNumberFormatA" => ["long", ["long", "long", "str", "ptr", "str", "long"]],
|
||||
"GetNumberFormatW" => ["long", ["long", "long", "wstr", "ptr", "wstr", "long"]],
|
||||
"GetNumberOfConsoleInputEvents" => ["long", ["long", "ptr"]],
|
||||
"GetNumberOfConsoleMouseButtons" => ["long", ["ptr"]],
|
||||
"GetOEMCP" => ["long", []],
|
||||
"GetOverlappedResult" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"GetPriorityClass" => ["long", ["long"]],
|
||||
"GetPrivateProfileIntA" => ["long", ["str", "str", "long", "str"]],
|
||||
"GetPrivateProfileIntW" => ["long", ["wstr", "wstr", "long", "wstr"]],
|
||||
"GetPrivateProfileSectionA" => ["long", ["str", "str", "long", "str"]],
|
||||
"GetPrivateProfileSectionNamesA" => ["long", ["str", "long", "str"]],
|
||||
"GetPrivateProfileSectionNamesW" => ["long", ["wstr", "long", "wstr"]],
|
||||
"GetPrivateProfileSectionW" => ["long", ["wstr", "wstr", "long", "wstr"]],
|
||||
"GetPrivateProfileStringA" => ["long", ["str", "str", "str", "str", "long", "str"]],
|
||||
"GetPrivateProfileStringW" => ["long", ["wstr", "wstr", "wstr", "wstr", "long", "wstr"]],
|
||||
"GetPrivateProfileStructA" => ["long", ["str", "str", "ptr", "long", "str"]],
|
||||
"GetPrivateProfileStructW" => ["long", ["wstr", "wstr", "ptr", "long", "wstr"]],
|
||||
"GetProcAddress" => ["ptr", ["long", "str"]],
|
||||
"GetProcessAffinityMask" => ["long", ["long", "ptr", "ptr"]],
|
||||
"GetProcessFlags" => ["long", ["long"]],
|
||||
"GetProcessHeap" => ["long", []],
|
||||
"GetProcessHeaps" => ["long", ["long", "ptr"]],
|
||||
"GetProcessShutdownParameters" => ["long", ["ptr", "ptr"]],
|
||||
"GetProcessTimes" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetProcessVersion" => ["long", ["long"]],
|
||||
"GetProcessWorkingSetSize" => ["long", ["long", "ptr", "ptr"]],
|
||||
"GetProfileIntA" => ["long", ["str", "str", "long"]],
|
||||
"GetProfileIntW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"GetProfileSectionA" => ["long", ["str", "str", "long"]],
|
||||
"GetProfileSectionW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"GetProfileStringA" => ["long", ["str", "str", "str", "str", "long"]],
|
||||
"GetProfileStringW" => ["long", ["wstr", "wstr", "wstr", "wstr", "long"]],
|
||||
"GetQueuedCompletionStatus" => ["long", ["long", "ptr", "ptr", "ptr", "long"]],
|
||||
"GetShortPathNameA" => ["long", ["str", "str", "long"]],
|
||||
"GetShortPathNameW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"GetStartupInfoA" => ["void", ["ptr"]],
|
||||
"GetStartupInfoW" => ["void", ["ptr"]],
|
||||
"GetStdHandle" => ["long", ["long"]],
|
||||
"GetStringTypeA" => ["long", ["long", "long", "str", "long", "ptr"]],
|
||||
"GetStringTypeExA" => ["long", ["long", "long", "str", "long", "ptr"]],
|
||||
"GetStringTypeExW" => ["long", ["long", "long", "wstr", "long", "ptr"]],
|
||||
"GetStringTypeW" => ["long", ["long", "wstr", "long", "ptr"]],
|
||||
"GetSystemDefaultLCID" => ["long", []],
|
||||
"GetSystemDefaultLangID" => ["long", []],
|
||||
"GetSystemDirectoryA" => ["long", ["str", "long"]],
|
||||
"GetSystemDirectoryW" => ["long", ["wstr", "long"]],
|
||||
"GetSystemInfo" => ["void", ["ptr"]],
|
||||
"GetSystemPowerStatus" => ["long", ["ptr"]],
|
||||
"GetSystemTime" => ["void", ["ptr"]],
|
||||
"GetSystemTimeAdjustment" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"GetSystemTimeAsFileTime" => ["void", ["ptr"]],
|
||||
"GetSystemWindowsDirectoryA" => ["long", ["str", "long"]],
|
||||
"GetSystemWindowsDirectoryW" => ["long", ["wstr", "long"]],
|
||||
"GetTapeParameters" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"GetTapePosition" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"GetTapeStatus" => ["long", ["long"]],
|
||||
"GetTempFileNameA" => ["long", ["str", "str", "long", "str"]],
|
||||
"GetTempFileNameW" => ["long", ["wstr", "wstr", "long", "wstr"]],
|
||||
"GetTempPathA" => ["long", ["long", "str"]],
|
||||
"GetTempPathW" => ["long", ["long", "wstr"]],
|
||||
"GetThreadContext" => ["long", ["long", "ptr"]],
|
||||
"GetThreadLocale" => ["long", []],
|
||||
"GetThreadPriority" => ["long", ["long"]],
|
||||
"GetThreadPriorityBoost" => ["long", ["long", "ptr"]],
|
||||
"GetThreadSelectorEntry" => ["long", ["long", "long", "ptr"]],
|
||||
"GetThreadTimes" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"GetTickCount" => ["long", []],
|
||||
"GetTimeFormatA" => ["long", ["long", "long", "ptr", "str", "str", "long"]],
|
||||
"GetTimeFormatW" => ["long", ["long", "long", "ptr", "wstr", "wstr", "long"]],
|
||||
"GetTimeZoneInformation" => ["long", ["ptr"]],
|
||||
"GetUserDefaultLCID" => ["long", []],
|
||||
"GetUserDefaultLangID" => ["long", []],
|
||||
"GetVersion" => ["long", []],
|
||||
"GetVersionExA" => ["long", ["ptr"]],
|
||||
"GetVersionExW" => ["long", ["ptr"]],
|
||||
"GetVolumeInformationA" => ["long", ["str", "str", "long", "ptr", "ptr", "ptr", "str", "long"]],
|
||||
"GetVolumeInformationW" => ["long", ["wstr", "wstr", "long", "ptr", "ptr", "ptr", "wstr", "long"]],
|
||||
"GetWindowsDirectoryA" => ["long", ["str", "long"]],
|
||||
"GetWindowsDirectoryW" => ["long", ["wstr", "long"]],
|
||||
"GlobalAddAtomA" => ["long", ["str"]],
|
||||
"GlobalAddAtomW" => ["long", ["wstr"]],
|
||||
"GlobalAlloc" => ["long", ["long", "long"]],
|
||||
"GlobalCompact" => ["long", ["long"]],
|
||||
"GlobalDeleteAtom" => ["long", ["long"]],
|
||||
"GlobalFindAtomA" => ["long", ["str"]],
|
||||
"GlobalFindAtomW" => ["long", ["wstr"]],
|
||||
"GlobalFix" => ["void", ["long"]],
|
||||
"GlobalFlags" => ["long", ["long"]],
|
||||
"GlobalFlags16" => ["long", ["long"]],
|
||||
"GlobalFree" => ["long", ["long"]],
|
||||
"GlobalGetAtomNameA" => ["long", ["long", "str", "long"]],
|
||||
"GlobalGetAtomNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"GlobalHandle" => ["long", ["ptr"]],
|
||||
"GlobalLock" => ["ptr", ["long"]],
|
||||
"GlobalMemoryStatus" => ["void", ["ptr"]],
|
||||
"GlobalReAlloc" => ["long", ["long", "long", "long"]],
|
||||
"GlobalReAlloc16" => ["long", ["long", "long", "long"]],
|
||||
"GlobalSize" => ["long", ["long"]],
|
||||
"GlobalUnWire" => ["long", ["long"]],
|
||||
"GlobalUnfix" => ["void", ["long"]],
|
||||
"GlobalUnlock" => ["long", ["long"]],
|
||||
"GlobalWire" => ["ptr", ["long"]],
|
||||
"HeapCompact" => ["long", ["long", "long"]],
|
||||
"HeapCreate" => ["long", ["long", "long", "long"]],
|
||||
"HeapDestroy" => ["long", ["long"]],
|
||||
"HeapLock" => ["long", ["long"]],
|
||||
"HeapUnlock" => ["long", ["long"]],
|
||||
"HeapValidate" => ["long", ["long", "long", "ptr"]],
|
||||
"HeapWalk" => ["long", ["long", "ptr"]],
|
||||
"InitAtomTable" => ["long", ["long"]],
|
||||
"InitializeCriticalSection" => ["void", ["ptr"]],
|
||||
"InitializeCriticalSectionAndSpinCount" => ["long", ["ptr", "long"]],
|
||||
"InterlockedCompareExchange" => ["long", ["ptr", "long", "long"]],
|
||||
"InterlockedDecrement" => ["long", ["ptr"]],
|
||||
"InterlockedExchange" => ["long", ["ptr", "long"]],
|
||||
"InterlockedExchangeAdd" => ["long", ["ptr", "long"]],
|
||||
"InterlockedIncrement" => ["long", ["ptr"]],
|
||||
"IsBadCodePtr" => ["long", ["ptr"]],
|
||||
"IsBadHugeReadPtr" => ["long", ["ptr", "long"]],
|
||||
"IsBadHugeWritePtr" => ["long", ["ptr", "long"]],
|
||||
"IsBadReadPtr" => ["long", ["ptr", "long"]],
|
||||
"IsBadStringPtrA" => ["long", ["str", "long"]],
|
||||
"IsBadStringPtrW" => ["long", ["wstr", "long"]],
|
||||
"IsBadWritePtr" => ["long", ["ptr", "long"]],
|
||||
"IsDBCSLeadByte" => ["long", ["long"]],
|
||||
"IsDBCSLeadByteEx" => ["long", ["long", "long"]],
|
||||
"IsDebuggerPresent" => ["long", []],
|
||||
"IsProcessorFeaturePresent" => ["long", ["long"]],
|
||||
"IsTask16" => ["long", ["long"]],
|
||||
"IsValidCodePage" => ["long", ["long"]],
|
||||
"IsValidLocale" => ["long", ["long", "long"]],
|
||||
"K32Thk1632Epilog" => ["void", ["ptr"]],
|
||||
"K32Thk1632Prolog" => ["void", ["ptr"]],
|
||||
"LCMapStringA" => ["long", ["long", "long", "str", "long", "str", "long"]],
|
||||
"LCMapStringW" => ["long", ["long", "long", "wstr", "long", "wstr", "long"]],
|
||||
"LoadLibraryA" => ["long", ["str"]],
|
||||
"LoadLibraryExA" => ["long", ["str", "long", "long"]],
|
||||
"LoadLibraryExW" => ["long", ["wstr", "long", "long"]],
|
||||
"LoadLibraryW" => ["long", ["wstr"]],
|
||||
"LoadModule" => ["long", ["str", "ptr"]],
|
||||
"LoadModule16" => ["long", ["str", "ptr"]],
|
||||
"LoadResource" => ["long", ["long", "long"]],
|
||||
"LoadResource16" => ["long", ["long", "long"]],
|
||||
"LocalAlloc" => ["long", ["long", "long"]],
|
||||
"LocalCompact" => ["long", ["long"]],
|
||||
"LocalFileTimeToFileTime" => ["long", ["ptr", "ptr"]],
|
||||
"LocalFlags" => ["long", ["long"]],
|
||||
"LocalFree" => ["long", ["long"]],
|
||||
"LocalHandle" => ["long", ["ptr"]],
|
||||
"LocalLock" => ["ptr", ["long"]],
|
||||
"LocalReAlloc" => ["long", ["long", "long", "long"]],
|
||||
"LocalShrink" => ["long", ["long", "long"]],
|
||||
"LocalSize" => ["long", ["long"]],
|
||||
"LocalUnlock" => ["long", ["long"]],
|
||||
"LockFile" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"LockFileEx" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"LockResource" => ["ptr", ["long"]],
|
||||
"LockResource16" => ["ptr", ["long"]],
|
||||
"MakeCriticalSectionGlobal" => ["void", ["ptr"]],
|
||||
"MapHInstLS" => ["void", ["ptr"]],
|
||||
"MapHInstLS_PN" => ["void", ["ptr"]],
|
||||
"MapHInstSL" => ["void", ["ptr"]],
|
||||
"MapHInstSL_PN" => ["void", ["ptr"]],
|
||||
"MapHModuleLS" => ["long", ["long"]],
|
||||
"MapHModuleSL" => ["long", ["long"]],
|
||||
"MapLS" => ["ptr", ["ptr"]],
|
||||
"MapSL" => ["ptr", ["ptr"]],
|
||||
"MapSLFix" => ["ptr", ["ptr"]],
|
||||
"MapViewOfFile" => ["ptr", ["long", "long", "long", "long", "long"]],
|
||||
"MapViewOfFileEx" => ["ptr", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"Module32First" => ["long", ["long", "ptr"]],
|
||||
"Module32Next" => ["long", ["long", "ptr"]],
|
||||
"MoveFileA" => ["long", ["str", "str"]],
|
||||
"MoveFileExA" => ["long", ["str", "str", "long"]],
|
||||
"MoveFileExW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"MoveFileW" => ["long", ["wstr", "wstr"]],
|
||||
"MulDiv" => ["long", ["long", "long", "long"]],
|
||||
"MultiByteToWideChar" => ["long", ["long", "long", "str", "long", "wstr", "long"]],
|
||||
"OpenEventA" => ["long", ["long", "long", "str"]],
|
||||
"OpenEventW" => ["long", ["long", "long", "wstr"]],
|
||||
"OpenFile" => ["long", ["str", "ptr", "long"]],
|
||||
"OpenFileMappingA" => ["long", ["long", "long", "str"]],
|
||||
"OpenFileMappingW" => ["long", ["long", "long", "wstr"]],
|
||||
"OpenMutexA" => ["long", ["long", "long", "str"]],
|
||||
"OpenMutexW" => ["long", ["long", "long", "wstr"]],
|
||||
"OpenProcess" => ["long", ["long", "long", "long"]],
|
||||
"OpenSemaphoreA" => ["long", ["long", "long", "str"]],
|
||||
"OpenSemaphoreW" => ["long", ["long", "long", "wstr"]],
|
||||
"OpenVxDHandle" => ["long", ["long"]],
|
||||
"OpenWaitableTimerA" => ["long", ["long", "long", "str"]],
|
||||
"OpenWaitableTimerW" => ["long", ["long", "long", "wstr"]],
|
||||
"OutputDebugStringA" => ["void", ["str"]],
|
||||
"OutputDebugStringW" => ["void", ["wstr"]],
|
||||
"PeekConsoleInputA" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"PeekConsoleInputW" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"PeekNamedPipe" => ["long", ["long", "ptr", "long", "ptr", "ptr", "ptr"]],
|
||||
"PrepareTape" => ["long", ["long", "long", "long"]],
|
||||
"PrivateFreeLibrary" => ["void", ["long"]],
|
||||
"PrivateLoadLibrary" => ["long", ["str"]],
|
||||
"Process32First" => ["long", ["long", "ptr"]],
|
||||
"Process32Next" => ["long", ["long", "ptr"]],
|
||||
"ProcessIdToSessionId" => ["long", ["long", "ptr"]],
|
||||
"PulseEvent" => ["long", ["long"]],
|
||||
"PurgeComm" => ["long", ["long", "long"]],
|
||||
"QT_Thunk" => ["void", ["ptr"]],
|
||||
"QueryDosDeviceA" => ["long", ["str", "str", "long"]],
|
||||
"QueryDosDeviceW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"QueryPerformanceCounter" => ["long", ["ptr"]],
|
||||
"QueryPerformanceFrequency" => ["long", ["ptr"]],
|
||||
"QueueUserAPC" => ["long", ["ptr", "long", "long"]],
|
||||
"RaiseException" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"ReadConsoleA" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"ReadConsoleInputA" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"ReadConsoleInputW" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"ReadConsoleOutputA" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"ReadConsoleOutputAttribute" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"ReadConsoleOutputCharacterA" => ["long", ["long", "str", "long", "long", "ptr"]],
|
||||
"ReadConsoleOutputCharacterW" => ["long", ["long", "wstr", "long", "long", "ptr"]],
|
||||
"ReadConsoleOutputW" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"ReadConsoleW" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"ReadFile" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"ReadFileEx" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"ReadProcessMemory" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"RegisterServiceProcess" => ["long", ["long", "long"]],
|
||||
"ReinitializeCriticalSection" => ["void", ["ptr"]],
|
||||
"ReleaseMutex" => ["long", ["long"]],
|
||||
"ReleaseSemaphore" => ["long", ["long", "long", "ptr"]],
|
||||
"RemoveDirectoryA" => ["long", ["str"]],
|
||||
"RemoveDirectoryW" => ["long", ["wstr"]],
|
||||
"ResetEvent" => ["long", ["long"]],
|
||||
"ResumeThread" => ["long", ["long"]],
|
||||
"SMapLS" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_12" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_16" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_20" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_24" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_28" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_32" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_36" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_40" => ["void", ["ptr"]],
|
||||
"SMapLS_IP_EBP_8" => ["void", ["ptr"]],
|
||||
"SUnMapLS" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_12" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_16" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_20" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_24" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_28" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_32" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_36" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_40" => ["void", ["ptr"]],
|
||||
"SUnMapLS_IP_EBP_8" => ["void", ["ptr"]],
|
||||
"ScrollConsoleScreenBufferA" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SearchPathA" => ["long", ["str", "str", "str", "long", "str", "ptr"]],
|
||||
"SearchPathW" => ["long", ["wstr", "wstr", "wstr", "long", "wstr", "ptr"]],
|
||||
"SetCalendarInfoA" => ["long", ["long", "long", "long", "str"]],
|
||||
"SetCalendarInfoW" => ["long", ["long", "long", "long", "wstr"]],
|
||||
"SetCommBreak" => ["long", ["long"]],
|
||||
"SetCommConfig" => ["long", ["long", "ptr", "long"]],
|
||||
"SetCommMask" => ["long", ["long", "long"]],
|
||||
"SetCommState" => ["long", ["long", "ptr"]],
|
||||
"SetCommTimeouts" => ["long", ["long", "ptr"]],
|
||||
"SetComputerNameA" => ["long", ["str"]],
|
||||
"SetComputerNameW" => ["long", ["wstr"]],
|
||||
"SetConsoleActiveScreenBuffer" => ["long", ["long"]],
|
||||
"SetConsoleCP" => ["long", ["long"]],
|
||||
"SetConsoleCursorInfo" => ["long", ["long", "ptr"]],
|
||||
"SetConsoleCursorPosition" => ["long", ["long", "long"]],
|
||||
"SetConsoleInputExeNameA" => ["long", ["str"]],
|
||||
"SetConsoleInputExeNameW" => ["long", ["wstr"]],
|
||||
"SetConsoleMode" => ["long", ["long", "long"]],
|
||||
"SetConsoleOutputCP" => ["long", ["long"]],
|
||||
"SetConsoleScreenBufferSize" => ["long", ["long", "long"]],
|
||||
"SetConsoleTextAttribute" => ["long", ["long", "long"]],
|
||||
"SetConsoleTitleA" => ["long", ["str"]],
|
||||
"SetConsoleTitleW" => ["long", ["wstr"]],
|
||||
"SetConsoleWindowInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"SetCriticalSectionSpinCount" => ["long", ["ptr", "long"]],
|
||||
"SetCurrentDirectoryA" => ["long", ["str"]],
|
||||
"SetCurrentDirectoryW" => ["long", ["wstr"]],
|
||||
"SetDefaultCommConfigA" => ["long", ["str", "ptr", "long"]],
|
||||
"SetDefaultCommConfigW" => ["long", ["wstr", "ptr", "long"]],
|
||||
"SetEndOfFile" => ["long", ["long"]],
|
||||
"SetEnvironmentVariableA" => ["long", ["str", "str"]],
|
||||
"SetEnvironmentVariableW" => ["long", ["wstr", "wstr"]],
|
||||
"SetErrorMode" => ["long", ["long"]],
|
||||
"SetEvent" => ["long", ["long"]],
|
||||
"SetFileApisToANSI" => ["void", []],
|
||||
"SetFileApisToOEM" => ["void", []],
|
||||
"SetFileAttributesA" => ["long", ["str", "long"]],
|
||||
"SetFileAttributesW" => ["long", ["wstr", "long"]],
|
||||
"SetFilePointer" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SetFileTime" => ["long", ["long", "ptr", "ptr", "ptr"]],
|
||||
"SetHandleContext" => ["long", ["long", "long"]],
|
||||
"SetHandleCount" => ["long", ["long"]],
|
||||
"SetHandleInformation" => ["long", ["long", "long", "long"]],
|
||||
"SetLastError" => ["void", ["long"]],
|
||||
"SetLocalTime" => ["long", ["ptr"]],
|
||||
"SetLocaleInfoA" => ["long", ["long", "long", "str"]],
|
||||
"SetLocaleInfoW" => ["long", ["long", "long", "wstr"]],
|
||||
"SetNamedPipeHandleState" => ["long", ["long", "ptr", "ptr", "ptr"]],
|
||||
"SetPriorityClass" => ["long", ["long", "long"]],
|
||||
"SetProcessAffinityMask" => ["long", ["long", "long"]],
|
||||
"SetProcessPriorityBoost" => ["long", ["long", "long"]],
|
||||
"SetProcessShutdownParameters" => ["long", ["long", "long"]],
|
||||
"SetProcessWorkingSetSize" => ["long", ["long", "long", "long"]],
|
||||
"SetStdHandle" => ["long", ["long", "long"]],
|
||||
"SetSystemPowerState" => ["long", ["long", "long"]],
|
||||
"SetSystemTime" => ["long", ["ptr"]],
|
||||
"SetTapeParameters" => ["long", ["long", "long", "ptr"]],
|
||||
"SetTapePosition" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"SetThreadAffinityMask" => ["long", ["long", "long"]],
|
||||
"SetThreadContext" => ["long", ["long", "ptr"]],
|
||||
"SetThreadExecutionState" => ["long", ["long"]],
|
||||
"SetThreadIdealProcessor" => ["long", ["long", "long"]],
|
||||
"SetThreadLocale" => ["long", ["long"]],
|
||||
"SetThreadPriority" => ["long", ["long", "long"]],
|
||||
"SetThreadPriorityBoost" => ["long", ["long", "long"]],
|
||||
"SetTimeZoneInformation" => ["long", ["ptr"]],
|
||||
"SetUnhandledExceptionFilter" => ["ptr", ["ptr"]],
|
||||
"SetVolumeLabelA" => ["long", ["str", "str"]],
|
||||
"SetVolumeLabelW" => ["long", ["wstr", "wstr"]],
|
||||
"SetWaitableTimer" => ["long", ["long", "ptr", "long", "ptr", "ptr", "long"]],
|
||||
"SetupComm" => ["long", ["long", "long", "long"]],
|
||||
"SizeofResource" => ["long", ["long", "long"]],
|
||||
"SizeofResource16" => ["long", ["long", "long"]],
|
||||
"Sleep" => ["void", ["long"]],
|
||||
"SleepEx" => ["long", ["long", "long"]],
|
||||
"SuspendThread" => ["long", ["long"]],
|
||||
"SwitchToThread" => ["long", []],
|
||||
"SystemTimeToFileTime" => ["long", ["ptr", "ptr"]],
|
||||
"SystemTimeToTzSpecificLocalTime" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"TerminateProcess" => ["long", ["long", "long"]],
|
||||
"TerminateThread" => ["long", ["long", "long"]],
|
||||
"Thread32First" => ["long", ["long", "ptr"]],
|
||||
"Thread32Next" => ["long", ["long", "ptr"]],
|
||||
"ThunkConnect32" => ["long", ["ptr", "str", "str", "str", "long", "long"]],
|
||||
"TlsAlloc" => ["long", []],
|
||||
"TlsFree" => ["long", ["long"]],
|
||||
"TlsGetValue" => ["ptr", ["long"]],
|
||||
"TlsSetValue" => ["long", ["long", "ptr"]],
|
||||
"TransactNamedPipe" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"TransmitCommChar" => ["long", ["long", "long"]],
|
||||
"UTRegister" => ["long", ["long", "str", "str", "str", "ptr", "ptr", "ptr"]],
|
||||
"UTUnRegister" => ["void", ["long"]],
|
||||
"UnMapLS" => ["void", ["ptr"]],
|
||||
"UnMapSLFixArray" => ["void", ["ptr", "long", "ptr"]],
|
||||
"UnhandledExceptionFilter" => ["long", ["ptr"]],
|
||||
"UninitializeCriticalSection" => ["void", ["ptr"]],
|
||||
"UnlockFile" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"UnlockFileEx" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"UnmapViewOfFile" => ["long", ["ptr"]],
|
||||
"UpdateResourceA" => ["long", ["long", "str", "str", "long", "ptr", "long"]],
|
||||
"UpdateResourceW" => ["long", ["long", "wstr", "wstr", "long", "ptr", "long"]],
|
||||
"VerLanguageNameA" => ["long", ["long", "str", "long"]],
|
||||
"VerLanguageNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"VerifyVersionInfoA" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"VerifyVersionInfoW" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"VirtualAlloc" => ["ptr", ["ptr", "long", "long", "long"]],
|
||||
"VirtualAllocEx" => ["ptr", ["long", "ptr", "long", "long", "long"]],
|
||||
"VirtualFree" => ["long", ["ptr", "long", "long"]],
|
||||
"VirtualLock" => ["long", ["ptr", "long"]],
|
||||
"VirtualProtect" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VirtualProtectEx" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"VirtualQuery" => ["long", ["ptr", "ptr", "long"]],
|
||||
"VirtualQueryEx" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"VirtualUnlock" => ["long", ["ptr", "long"]],
|
||||
"WaitCommEvent" => ["long", ["long", "ptr", "ptr"]],
|
||||
"WaitForDebugEvent" => ["long", ["ptr", "long"]],
|
||||
"WaitForMultipleObjects" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"WaitForMultipleObjectsEx" => ["long", ["long", "ptr", "long", "long", "long"]],
|
||||
"WaitForSingleObject" => ["long", ["long", "long"]],
|
||||
"WaitForSingleObjectEx" => ["long", ["long", "long", "long"]],
|
||||
"WaitNamedPipeA" => ["long", ["str", "long"]],
|
||||
"WaitNamedPipeW" => ["long", ["wstr", "long"]],
|
||||
"WideCharToMultiByte" => ["long", ["long", "long", "wstr", "long", "str", "long", "str", "ptr"]],
|
||||
"WinExec" => ["long", ["str", "long"]],
|
||||
"WinExec16" => ["long", ["str", "long"]],
|
||||
"WriteConsoleA" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"WriteConsoleInputA" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"WriteConsoleInputW" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"WriteConsoleOutputA" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"WriteConsoleOutputAttribute" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"WriteConsoleOutputCharacterA" => ["long", ["long", "str", "long", "long", "ptr"]],
|
||||
"WriteConsoleOutputCharacterW" => ["long", ["long", "wstr", "long", "long", "ptr"]],
|
||||
"WriteConsoleOutputW" => ["long", ["long", "ptr", "long", "long", "ptr"]],
|
||||
"WriteConsoleW" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"WriteFile" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"WriteFileEx" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
|
||||
"WritePrivateProfileSectionA" => ["long", ["str", "str", "str"]],
|
||||
"WritePrivateProfileSectionW" => ["long", ["wstr", "wstr", "wstr"]],
|
||||
"WritePrivateProfileStringA" => ["long", ["str", "str", "str", "str"]],
|
||||
"WritePrivateProfileStringW" => ["long", ["wstr", "wstr", "wstr", "wstr"]],
|
||||
"WritePrivateProfileStructA" => ["long", ["str", "str", "ptr", "long", "str"]],
|
||||
"WritePrivateProfileStructW" => ["long", ["wstr", "wstr", "ptr", "long", "wstr"]],
|
||||
"WriteProcessMemory" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"WriteProfileSectionA" => ["long", ["str", "str"]],
|
||||
"WriteProfileSectionW" => ["long", ["wstr", "wstr"]],
|
||||
"WriteProfileStringA" => ["long", ["str", "str", "str"]],
|
||||
"WriteProfileStringW" => ["long", ["wstr", "wstr", "wstr"]],
|
||||
"WriteTapemark" => ["long", ["long", "long", "long", "long"]],
|
||||
"__wine_call_from_16_regs" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"_hread" => ["long", ["long", "ptr", "long"]],
|
||||
"_hwrite" => ["long", ["long", "str", "long"]],
|
||||
"_lclose" => ["long", ["long"]],
|
||||
"_lcreat" => ["long", ["str", "long"]],
|
||||
"_llseek" => ["long", ["long", "long", "long"]],
|
||||
"_lopen" => ["long", ["str", "long"]],
|
||||
"_lread" => ["long", ["long", "ptr", "long"]],
|
||||
"_lwrite" => ["long", ["long", "str", "long"]],
|
||||
"lstrcat" => ["str", ["str", "str"]],
|
||||
"lstrcatA" => ["str", ["str", "str"]],
|
||||
"lstrcatW" => ["wstr", ["wstr", "wstr"]],
|
||||
"lstrcmp" => ["long", ["str", "str"]],
|
||||
"lstrcmpA" => ["long", ["str", "str"]],
|
||||
"lstrcmpW" => ["long", ["wstr", "wstr"]],
|
||||
"lstrcmpi" => ["long", ["str", "str"]],
|
||||
"lstrcmpiA" => ["long", ["str", "str"]],
|
||||
"lstrcmpiW" => ["long", ["wstr", "wstr"]],
|
||||
"lstrcpy" => ["str", ["str", "str"]],
|
||||
"lstrcpyA" => ["str", ["str", "str"]],
|
||||
"lstrcpyW" => ["wstr", ["wstr", "wstr"]],
|
||||
"lstrcpyn" => ["str", ["str", "str", "long"]],
|
||||
"lstrcpynA" => ["str", ["str", "str", "long"]],
|
||||
"lstrcpynW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"lstrlen" => ["long", ["str"]],
|
||||
"lstrlenA" => ["long", ["str"]],
|
||||
"lstrlenW" => ["long", ["wstr"]],
|
||||
"wine_call_to_16_long" => ["long", ["ptr", "long"]],
|
||||
"wine_call_to_16_regs_long" => ["void", ["ptr", "long"]],
|
||||
"wine_call_to_16_regs_short" => ["void", ["ptr", "long"]],
|
||||
"wine_call_to_16_word" => ["long", ["ptr", "long"]],
|
||||
"wine_get_unix_file_name" => ["long", ["str", "str", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("kernel32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,31 +0,0 @@
|
|||
package lz32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"CopyLZFile" => ["long", ["long", "long"]],
|
||||
"GetExpandedNameA" => ["long", ["str", "str"]],
|
||||
"GetExpandedNameW" => ["long", ["wstr", "wstr"]],
|
||||
"LZClose" => ["void", ["long"]],
|
||||
"LZCopy" => ["long", ["long", "long"]],
|
||||
"LZDone" => ["void", []],
|
||||
"LZInit" => ["long", ["long"]],
|
||||
"LZOpenFileA" => ["long", ["str", "ptr", "long"]],
|
||||
"LZOpenFileW" => ["long", ["wstr", "ptr", "long"]],
|
||||
"LZRead" => ["long", ["long", "ptr", "long"]],
|
||||
"LZSeek" => ["long", ["long", "long", "long"]],
|
||||
"LZStart" => ["long", []]
|
||||
};
|
||||
|
||||
&wine::declare("lz32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package mcianim_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("mcianim.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package mciavi_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("mciavi.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package mcicda_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("mcicda.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package mciseq_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("mciseq.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package mciwave_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("mciwave.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,21 +0,0 @@
|
|||
package midimap_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"modMessage" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("midimap.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,87 +0,0 @@
|
|||
package mpr;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"MultinetGetConnectionPerformanceA" => ["long", ["ptr", "ptr"]],
|
||||
"MultinetGetConnectionPerformanceW" => ["long", ["ptr", "ptr"]],
|
||||
"MultinetGetErrorTextA" => ["long", ["long", "long", "long"]],
|
||||
"MultinetGetErrorTextW" => ["long", ["long", "long", "long"]],
|
||||
"NPSAuthenticationDialogA" => ["long", ["ptr"]],
|
||||
"NPSCopyStringA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"NPSDeviceGetNumberA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"NPSDeviceGetStringA" => ["long", ["long", "long", "str", "ptr"]],
|
||||
"NPSGetProviderHandleA" => ["long", ["ptr"]],
|
||||
"NPSGetProviderNameA" => ["long", ["long", "ptr"]],
|
||||
"NPSGetSectionNameA" => ["long", ["long", "ptr"]],
|
||||
"NPSNotifyGetContextA" => ["ptr", ["ptr"]],
|
||||
"NPSNotifyRegisterA" => ["long", ["long", "ptr"]],
|
||||
"NPSSetCustomTextA" => ["void", ["str"]],
|
||||
"NPSSetExtendedErrorA" => ["long", ["long", "str"]],
|
||||
"WNetAddConnection2A" => ["long", ["ptr", "str", "str", "long"]],
|
||||
"WNetAddConnection2W" => ["long", ["ptr", "wstr", "wstr", "long"]],
|
||||
"WNetAddConnection3A" => ["long", ["long", "ptr", "str", "str", "long"]],
|
||||
"WNetAddConnection3W" => ["long", ["long", "ptr", "wstr", "wstr", "long"]],
|
||||
"WNetAddConnectionA" => ["long", ["str", "str", "str"]],
|
||||
"WNetAddConnectionW" => ["long", ["wstr", "wstr", "wstr"]],
|
||||
"WNetCachePassword" => ["long", ["str", "long", "str", "long", "long", "long"]],
|
||||
"WNetCancelConnection2A" => ["long", ["str", "long", "long"]],
|
||||
"WNetCancelConnection2W" => ["long", ["wstr", "long", "long"]],
|
||||
"WNetCancelConnectionA" => ["long", ["str", "long"]],
|
||||
"WNetCancelConnectionW" => ["long", ["wstr", "long"]],
|
||||
"WNetCloseEnum" => ["long", ["long"]],
|
||||
"WNetConnectionDialog" => ["long", ["long", "long"]],
|
||||
"WNetConnectionDialog1A" => ["long", ["ptr"]],
|
||||
"WNetConnectionDialog1W" => ["long", ["ptr"]],
|
||||
"WNetDisconnectDialog" => ["long", ["long", "long"]],
|
||||
"WNetDisconnectDialog1A" => ["long", ["ptr"]],
|
||||
"WNetDisconnectDialog1W" => ["long", ["ptr"]],
|
||||
"WNetEnumCachedPasswords" => ["long", ["str", "long", "long", "ptr", "long"]],
|
||||
"WNetEnumResourceA" => ["long", ["long", "ptr", "ptr", "ptr"]],
|
||||
"WNetEnumResourceW" => ["long", ["long", "ptr", "ptr", "ptr"]],
|
||||
"WNetGetCachedPassword" => ["long", ["str", "long", "str", "ptr", "long"]],
|
||||
"WNetGetConnectionA" => ["long", ["str", "str", "ptr"]],
|
||||
"WNetGetConnectionW" => ["long", ["wstr", "wstr", "ptr"]],
|
||||
"WNetGetLastErrorA" => ["long", ["ptr", "str", "long", "str", "long"]],
|
||||
"WNetGetLastErrorW" => ["long", ["ptr", "wstr", "long", "wstr", "long"]],
|
||||
"WNetGetNetworkInformationA" => ["long", ["str", "ptr"]],
|
||||
"WNetGetNetworkInformationW" => ["long", ["wstr", "ptr"]],
|
||||
"WNetGetProviderNameA" => ["long", ["long", "str", "ptr"]],
|
||||
"WNetGetProviderNameW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"WNetGetResourceInformationA" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"WNetGetResourceInformationW" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"WNetGetResourceParentA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"WNetGetResourceParentW" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"WNetGetUniversalNameA" => ["long", ["str", "long", "ptr", "ptr"]],
|
||||
"WNetGetUniversalNameW" => ["long", ["wstr", "long", "ptr", "ptr"]],
|
||||
"WNetGetUserA" => ["long", ["str", "str", "ptr"]],
|
||||
"WNetGetUserW" => ["long", ["wstr", "wstr", "ptr"]],
|
||||
"WNetLogoffA" => ["long", ["str", "long"]],
|
||||
"WNetLogoffW" => ["long", ["wstr", "long"]],
|
||||
"WNetLogonA" => ["long", ["str", "long"]],
|
||||
"WNetLogonW" => ["long", ["wstr", "long"]],
|
||||
"WNetOpenEnumA" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"WNetOpenEnumW" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"WNetRemoveCachedPassword" => ["long", ["str", "long", "long"]],
|
||||
"WNetRestoreConnectionA" => ["long", ["long", "str"]],
|
||||
"WNetRestoreConnectionW" => ["long", ["long", "wstr"]],
|
||||
"WNetSetConnectionA" => ["long", ["str", "long", "ptr"]],
|
||||
"WNetSetConnectionW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"WNetUseConnectionA" => ["long", ["long", "ptr", "str", "str", "long", "str", "ptr", "ptr"]],
|
||||
"WNetUseConnectionW" => ["long", ["long", "ptr", "wstr", "wstr", "long", "wstr", "ptr", "ptr"]],
|
||||
"WNetVerifyPasswordA" => ["long", ["str", "ptr"]],
|
||||
"WNetVerifyPasswordW" => ["long", ["wstr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("mpr",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,62 +0,0 @@
|
|||
package msacm32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"acmDriverAddA" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"acmDriverAddW" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"acmDriverClose" => ["long", ["long", "long"]],
|
||||
"acmDriverDetailsA" => ["long", ["long", "ptr", "long"]],
|
||||
"acmDriverDetailsW" => ["long", ["long", "ptr", "long"]],
|
||||
"acmDriverEnum" => ["long", ["ptr", "long", "long"]],
|
||||
"acmDriverID" => ["long", ["long", "ptr", "long"]],
|
||||
"acmDriverMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"acmDriverOpen" => ["long", ["ptr", "long", "long"]],
|
||||
"acmDriverPriority" => ["long", ["long", "long", "long"]],
|
||||
"acmDriverRemove" => ["long", ["long", "long"]],
|
||||
"acmFilterChooseA" => ["long", ["ptr"]],
|
||||
"acmFilterChooseW" => ["long", ["ptr"]],
|
||||
"acmFilterDetailsA" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFilterDetailsW" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFilterEnumA" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFilterEnumW" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFilterTagDetailsA" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFilterTagDetailsW" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFilterTagEnumA" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFilterTagEnumW" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFormatChooseA" => ["long", ["ptr"]],
|
||||
"acmFormatChooseW" => ["long", ["ptr"]],
|
||||
"acmFormatDetailsA" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFormatDetailsW" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFormatEnumA" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFormatEnumW" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFormatSuggest" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFormatTagDetailsA" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFormatTagDetailsW" => ["long", ["long", "ptr", "long"]],
|
||||
"acmFormatTagEnumA" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmFormatTagEnumW" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"acmGetVersion" => ["long", []],
|
||||
"acmMetrics" => ["long", ["long", "long", "ptr"]],
|
||||
"acmStreamClose" => ["long", ["long", "long"]],
|
||||
"acmStreamConvert" => ["long", ["long", "ptr", "long"]],
|
||||
"acmStreamMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"acmStreamOpen" => ["long", ["ptr", "long", "ptr", "ptr", "ptr", "long", "long", "long"]],
|
||||
"acmStreamPrepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"acmStreamReset" => ["long", ["long", "long"]],
|
||||
"acmStreamSize" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"acmStreamUnprepareHeader" => ["long", ["long", "ptr", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("msacm32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,22 +0,0 @@
|
|||
package msacm_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"widMessage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"wodMessage" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("msacm.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package msimg32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"AlphaBlend" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"GradientFill" => ["long", ["long", "ptr", "long", "ptr", "long", "long"]],
|
||||
"TransparentBlt" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"vSetDdrawflag" => ["void", []]
|
||||
};
|
||||
|
||||
&wine::declare("msimg32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package msisys_ocx;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", []],
|
||||
"DllUnregisterServer" => ["long", []]
|
||||
};
|
||||
|
||||
&wine::declare("msisys.ocx",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package msvcrt;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"\?\?8type_info\@\@QBEHABV0\@\@Z" => ["long", ["ptr", "ptr"]],
|
||||
"\?\?9type_info\@\@QBEHABV0\@\@Z" => ["long", ["ptr", "ptr"]],
|
||||
"\?name\@type_info\@\@QBEPBDXZ" => ["ptr", ["ptr"]],
|
||||
"\?raw_name\@type_info\@\@QBEPBDXZ" => ["ptr", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("msvcrt",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,40 +0,0 @@
|
|||
package msvfw32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"VideoForWindowsVersion" => ["long", []],
|
||||
"DrawDibBegin" => ["long", ["long", "long", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"DrawDibClose" => ["long", ["long"]],
|
||||
"DrawDibDraw" => ["long", ["long", "long", "long", "long", "long", "long", "ptr", "ptr", "long", "long", "long", "long", "long"]],
|
||||
"DrawDibEnd" => ["long", ["long"]],
|
||||
"DrawDibGetPalette" => ["long", ["long"]],
|
||||
"DrawDibOpen" => ["long", []],
|
||||
"DrawDibRealize" => ["long", ["long", "long", "long"]],
|
||||
"DrawDibSetPalette" => ["long", ["long", "long"]],
|
||||
"DrawDibStart" => ["long", ["long", "long"]],
|
||||
"DrawDibStop" => ["long", ["long"]],
|
||||
"ICClose" => ["long", ["long"]],
|
||||
"ICGetDisplayFormat" => ["long", ["long", "ptr", "ptr", "long", "long", "long"]],
|
||||
"ICGetInfo" => ["long", ["long", "ptr", "long"]],
|
||||
"ICImageCompress" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "ptr"]],
|
||||
"ICImageDecompress" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"ICInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"ICLocate" => ["long", ["long", "long", "ptr", "ptr", "long"]],
|
||||
"ICOpenFunction" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"ICSendMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"MCIWndRegisterClass" => ["long", ["long"]]
|
||||
};
|
||||
|
||||
&wine::declare("msvfw32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,364 +0,0 @@
|
|||
package ntdll;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DbgBreakPoint" => ["void", []],
|
||||
"DbgUserBreakPoint" => ["void", []],
|
||||
"NtAcceptConnectPort" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"NtAccessCheck" => ["long", ["ptr", "long", "long", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"NtAdjustPrivilegesToken" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"NtAllocateLocallyUniqueId" => ["long", ["ptr"]],
|
||||
"NtAllocateUuids" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"NtClearEvent" => ["long", ["long"]],
|
||||
"NtClose" => ["long", ["long"]],
|
||||
"NtCompleteConnectPort" => ["long", ["long"]],
|
||||
"NtConnectPort" => ["long", ["long", "ptr", "long", "long", "long", "long", "long", "long"]],
|
||||
"NtCreateDirectoryObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtCreateEvent" => ["long", ["ptr", "long", "ptr", "long", "long"]],
|
||||
"NtCreateKey" => ["long", ["ptr", "long", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"NtCreateMailslotFile" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"NtCreatePagingFile" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"NtCreatePort" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"NtCreateSection" => ["long", ["ptr", "long", "ptr", "ptr", "long", "long", "long"]],
|
||||
"NtCreateSemaphore" => ["long", ["ptr", "long", "ptr", "long", "long"]],
|
||||
"NtCreateSymbolicLinkObject" => ["long", ["ptr", "long", "ptr", "ptr"]],
|
||||
"NtCreateTimer" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"NtDeleteKey" => ["long", ["long"]],
|
||||
"NtDeleteValueKey" => ["long", ["long", "ptr"]],
|
||||
"NtDeviceIoControlFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"NtDisplayString" => ["long", ["ptr"]],
|
||||
"NtDuplicateObject" => ["long", ["long", "ptr", "long", "ptr", "long", "long", "long"]],
|
||||
"NtDuplicateToken" => ["long", ["long", "long", "ptr", "long", "long", "ptr"]],
|
||||
"NtEnumerateKey" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"NtEnumerateValueKey" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"NtFlushKey" => ["long", ["long"]],
|
||||
"NtFsControlFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"NtListenPort" => ["long", ["long", "long"]],
|
||||
"NtLoadKey" => ["long", ["ptr", "ptr"]],
|
||||
"NtMapViewOfSection" => ["long", ["long", "long", "ptr", "long", "long", "ptr", "ptr", "long", "long", "long"]],
|
||||
"NtNotifyChangeKey" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "long", "ptr", "long", "long"]],
|
||||
"NtOpenDirectoryObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtOpenEvent" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtOpenFile" => ["long", ["ptr", "long", "ptr", "ptr", "long", "long"]],
|
||||
"NtOpenKey" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtOpenProcessToken" => ["long", ["long", "long", "ptr"]],
|
||||
"NtOpenSection" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtOpenSemaphore" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtOpenSymbolicLinkObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtOpenThreadToken" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"NtPowerInformation" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"NtPulseEvent" => ["long", ["long", "ptr"]],
|
||||
"NtQueryDirectoryFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr", "long", "long", "long", "ptr", "long"]],
|
||||
"NtQueryDirectoryObject" => ["long", ["long", "ptr", "long", "long", "long", "ptr", "ptr"]],
|
||||
"NtQueryEvent" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"NtQueryInformationProcess" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryInformationThread" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryInformationToken" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryKey" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryObject" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryPerformanceCounter" => ["long", ["ptr", "ptr"]],
|
||||
"NtQuerySection" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"NtQuerySecurityObject" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"NtQuerySemaphore" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"NtQuerySymbolicLinkObject" => ["long", ["long", "ptr", "ptr"]],
|
||||
"NtQuerySystemInformation" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"NtQuerySystemTime" => ["void", ["ptr"]],
|
||||
"NtQueryTimerResolution" => ["long", ["long", "long", "long"]],
|
||||
"NtQueryValueKey" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"NtQueryVolumeInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"NtRaiseException" => ["void", ["ptr", "ptr", "long", "ptr"]],
|
||||
"NtReadFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"NtRegisterThreadTerminatePort" => ["long", ["long"]],
|
||||
"NtReleaseSemaphore" => ["long", ["long", "long", "ptr"]],
|
||||
"NtReplaceKey" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtReplyWaitReceivePort" => ["long", ["long", "long", "long", "long"]],
|
||||
"NtRequestWaitReplyPort" => ["long", ["long", "long", "long"]],
|
||||
"NtResetEvent" => ["long", ["long", "ptr"]],
|
||||
"NtRestoreKey" => ["long", ["long", "long", "long"]],
|
||||
"NtResumeThread" => ["long", ["long", "ptr"]],
|
||||
"NtSaveKey" => ["long", ["long", "long"]],
|
||||
"NtSetEvent" => ["long", ["long", "ptr"]],
|
||||
"NtSetInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"NtSetInformationKey" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"NtSetInformationProcess" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"NtSetInformationThread" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"NtSetIntervalProfile" => ["long", ["long", "long"]],
|
||||
"NtSetSecurityObject" => ["long", ["long", "long", "ptr"]],
|
||||
"NtSetTimer" => ["long", ["long", "ptr", "ptr", "ptr", "long", "long", "ptr"]],
|
||||
"NtSetValueKey" => ["long", ["long", "ptr", "long", "long", "ptr", "long"]],
|
||||
"NtSetVolumeInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"NtTerminateProcess" => ["long", ["long", "long"]],
|
||||
"NtTerminateThread" => ["long", ["long", "long"]],
|
||||
"NtUnloadKey" => ["long", ["long"]],
|
||||
"NtWaitForSingleObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"NtWriteFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"RtlAcquirePebLock" => ["void", []],
|
||||
"RtlAcquireResourceExclusive" => ["long", ["ptr", "long"]],
|
||||
"RtlAcquireResourceShared" => ["long", ["ptr", "long"]],
|
||||
"RtlAddAccessAllowedAce" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"RtlAddAce" => ["long", ["ptr", "long", "long", "ptr", "long"]],
|
||||
"RtlAdjustPrivilege" => ["long", ["long", "long", "long", "long"]],
|
||||
"RtlAllocateAndInitializeSid" => ["long", ["ptr", "long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"RtlAllocateHeap" => ["ptr", ["long", "long", "long"]],
|
||||
"RtlAnsiStringToUnicodeSize" => ["long", ["ptr"]],
|
||||
"RtlAnsiStringToUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlAppendAsciizToString" => ["long", ["ptr", "str"]],
|
||||
"RtlAppendStringToString" => ["long", ["ptr", "ptr"]],
|
||||
"RtlAppendUnicodeStringToString" => ["long", ["ptr", "ptr"]],
|
||||
"RtlAppendUnicodeToString" => ["long", ["ptr", "wstr"]],
|
||||
"RtlAreBitsClear" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlAreBitsSet" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlAssert" => ["void", ["ptr", "ptr", "long", "long"]],
|
||||
"RtlClearAllBits" => ["void", ["ptr"]],
|
||||
"RtlClearBits" => ["void", ["ptr", "long", "long"]],
|
||||
"RtlCompactHeap" => ["long", ["long", "long"]],
|
||||
"RtlCompareMemory" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlCompareString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlCompareUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlConvertLongToLargeInteger" => ["longlong", ["long"]],
|
||||
"RtlConvertSidToUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlConvertUlongToLargeInteger" => ["longlong", ["long"]],
|
||||
"RtlCopySid" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RtlCopyString" => ["void", ["ptr", "ptr"]],
|
||||
"RtlCopyUnicodeString" => ["void", ["ptr", "ptr"]],
|
||||
"RtlCreateAcl" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlCreateEnvironment" => ["long", ["long", "long"]],
|
||||
"RtlCreateHeap" => ["long", ["long", "ptr", "long", "long", "ptr", "ptr"]],
|
||||
"RtlCreateSecurityDescriptor" => ["long", ["ptr", "long"]],
|
||||
"RtlCreateUnicodeString" => ["long", ["ptr", "wstr"]],
|
||||
"RtlCreateUnicodeStringFromAsciiz" => ["long", ["ptr", "str"]],
|
||||
"RtlDeleteCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlDeleteResource" => ["void", ["ptr"]],
|
||||
"RtlDeleteSecurityObject" => ["long", ["long"]],
|
||||
"RtlDestroyEnvironment" => ["long", ["long"]],
|
||||
"RtlDestroyHeap" => ["long", ["long"]],
|
||||
"RtlDosPathNameToNtPathName_U" => ["long", ["wstr", "ptr", "long", "long"]],
|
||||
"RtlDumpResource" => ["void", ["ptr"]],
|
||||
"RtlEnlargedIntegerMultiply" => ["longlong", ["long", "long"]],
|
||||
"RtlEnlargedUnsignedDivide" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"RtlEnlargedUnsignedMultiply" => ["longlong", ["long", "long"]],
|
||||
"RtlEnterCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlEqualPrefixSid" => ["long", ["ptr", "ptr"]],
|
||||
"RtlEqualSid" => ["long", ["ptr", "ptr"]],
|
||||
"RtlEqualString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlEqualUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlEraseUnicodeString" => ["void", ["ptr"]],
|
||||
"RtlExtendedIntegerMultiply" => ["longlong", ["long", "long", "long"]],
|
||||
"RtlExtendedLargeIntegerDivide" => ["longlong", ["long", "long", "long", "ptr"]],
|
||||
"RtlFillMemory" => ["void", ["ptr", "long", "long"]],
|
||||
"RtlFillMemoryUlong" => ["void", ["ptr", "long", "long"]],
|
||||
"RtlFindClearBits" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlFindClearBitsAndSet" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlFindClearRuns" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"RtlFindLastBackwardRunClear" => ["long", ["ptr", "long", "ptr"]],
|
||||
"RtlFindLastBackwardRunSet" => ["long", ["ptr", "long", "ptr"]],
|
||||
"RtlFindLeastSignificantBit" => ["long", ["long", "long"]],
|
||||
"RtlFindLongestRunClear" => ["long", ["ptr", "ptr"]],
|
||||
"RtlFindLongestRunSet" => ["long", ["ptr", "ptr"]],
|
||||
"RtlFindMostSignificantBit" => ["long", ["long", "long"]],
|
||||
"RtlFindNextForwardRunClear" => ["long", ["ptr", "long", "ptr"]],
|
||||
"RtlFindNextForwardRunSet" => ["long", ["ptr", "long", "ptr"]],
|
||||
"RtlFindSetBits" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlFindSetBitsAndClear" => ["long", ["ptr", "long", "long"]],
|
||||
"RtlFindSetRuns" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"RtlFirstFreeAce" => ["long", ["ptr", "ptr"]],
|
||||
"RtlFormatCurrentUserKeyPath" => ["long", ["ptr"]],
|
||||
"RtlFreeAnsiString" => ["void", ["ptr"]],
|
||||
"RtlFreeHeap" => ["long", ["long", "long", "ptr"]],
|
||||
"RtlFreeOemString" => ["void", ["ptr"]],
|
||||
"RtlFreeSid" => ["long", ["ptr"]],
|
||||
"RtlFreeUnicodeString" => ["void", ["ptr"]],
|
||||
"RtlGetAce" => ["long", ["ptr", "long", "ptr"]],
|
||||
"RtlGetControlSecurityDescriptor" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RtlGetDaclSecurityDescriptor" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"RtlGetGroupSecurityDescriptor" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RtlGetLongestNtPathLength" => ["long", []],
|
||||
"RtlGetNtProductType" => ["long", ["ptr"]],
|
||||
"RtlGetNtVersionNumbers" => ["void", ["ptr", "ptr", "ptr"]],
|
||||
"RtlGetOwnerSecurityDescriptor" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RtlGetProcessHeaps" => ["long", ["long", "ptr"]],
|
||||
"RtlGetSaclSecurityDescriptor" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"RtlIdentifierAuthoritySid" => ["ptr", ["ptr"]],
|
||||
"RtlImageDirectoryEntryToData" => ["ptr", ["long", "long", "long", "ptr"]],
|
||||
"RtlImageNtHeader" => ["ptr", ["long"]],
|
||||
"RtlImageRvaToSection" => ["ptr", ["ptr", "long", "long"]],
|
||||
"RtlImageRvaToVa" => ["ptr", ["ptr", "long", "long", "ptr"]],
|
||||
"RtlImpersonateSelf" => ["long", ["long"]],
|
||||
"RtlInitAnsiString" => ["void", ["ptr", "str"]],
|
||||
"RtlInitString" => ["void", ["ptr", "str"]],
|
||||
"RtlInitUnicodeString" => ["void", ["ptr", "wstr"]],
|
||||
"RtlInitializeBitMap" => ["void", ["ptr", "ptr", "long"]],
|
||||
"RtlInitializeCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlInitializeCriticalSectionAndSpinCount" => ["long", ["ptr", "long"]],
|
||||
"RtlInitializeGenericTable" => ["long", []],
|
||||
"RtlInitializeResource" => ["void", ["ptr"]],
|
||||
"RtlInitializeSid" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlIntegerToChar" => ["long", ["long", "long", "long", "long"]],
|
||||
"RtlIsTextUnicode" => ["long", ["ptr", "long", "ptr"]],
|
||||
"RtlLargeIntegerAdd" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"RtlLargeIntegerArithmeticShift" => ["longlong", ["long", "long", "long"]],
|
||||
"RtlLargeIntegerDivide" => ["longlong", ["long", "long", "long", "long", "ptr"]],
|
||||
"RtlLargeIntegerNegate" => ["longlong", ["long", "long"]],
|
||||
"RtlLargeIntegerShiftLeft" => ["longlong", ["long", "long", "long"]],
|
||||
"RtlLargeIntegerShiftRight" => ["longlong", ["long", "long", "long"]],
|
||||
"RtlLargeIntegerSubtract" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"RtlLeaveCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlLengthRequiredSid" => ["long", ["long"]],
|
||||
"RtlLengthSecurityDescriptor" => ["long", ["ptr"]],
|
||||
"RtlLengthSid" => ["long", ["ptr"]],
|
||||
"RtlLockHeap" => ["long", ["long"]],
|
||||
"RtlMakeSelfRelativeSD" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RtlMoveMemory" => ["void", ["ptr", "ptr", "long"]],
|
||||
"RtlMultiByteToUnicodeN" => ["long", ["wstr", "long", "ptr", "str", "long"]],
|
||||
"RtlMultiByteToUnicodeSize" => ["long", ["ptr", "str", "long"]],
|
||||
"RtlNewSecurityObject" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"RtlNormalizeProcessParams" => ["ptr", ["ptr"]],
|
||||
"RtlNtStatusToDosError" => ["long", ["long"]],
|
||||
"RtlNumberOfClearBits" => ["long", ["ptr"]],
|
||||
"RtlNumberOfSetBits" => ["long", ["ptr"]],
|
||||
"RtlOemStringToUnicodeSize" => ["long", ["ptr"]],
|
||||
"RtlOemStringToUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlOemToUnicodeN" => ["long", ["wstr", "long", "ptr", "str", "long"]],
|
||||
"RtlOpenCurrentUser" => ["long", ["long", "ptr"]],
|
||||
"RtlPrefixString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlPrefixUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlQueryEnvironmentVariable_U" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RtlRaiseException" => ["void", ["ptr", "ptr"]],
|
||||
"RtlRaiseStatus" => ["void", ["long"]],
|
||||
"RtlReAllocateHeap" => ["ptr", ["long", "long", "ptr", "long"]],
|
||||
"RtlReleasePebLock" => ["void", []],
|
||||
"RtlReleaseResource" => ["void", ["ptr"]],
|
||||
"RtlSecondsSince1970ToTime" => ["void", ["long", "ptr"]],
|
||||
"RtlSecondsSince1980ToTime" => ["void", ["long", "ptr"]],
|
||||
"RtlSetAllBits" => ["void", ["ptr"]],
|
||||
"RtlSetBits" => ["void", ["ptr", "long", "long"]],
|
||||
"RtlSetDaclSecurityDescriptor" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"RtlSetEnvironmentVariable" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RtlSetGroupSecurityDescriptor" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlSetOwnerSecurityDescriptor" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlSetSaclSecurityDescriptor" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"RtlSizeHeap" => ["long", ["long", "long", "ptr"]],
|
||||
"RtlSubAuthorityCountSid" => ["ptr", ["ptr"]],
|
||||
"RtlSubAuthoritySid" => ["ptr", ["ptr", "long"]],
|
||||
"RtlSystemTimeToLocalTime" => ["void", ["ptr", "ptr"]],
|
||||
"RtlTimeFieldsToTime" => ["long", ["ptr", "ptr"]],
|
||||
"RtlTimeToElapsedTimeFields" => ["void", ["ptr", "ptr"]],
|
||||
"RtlTimeToSecondsSince1970" => ["long", ["ptr", "ptr"]],
|
||||
"RtlTimeToSecondsSince1980" => ["long", ["ptr", "ptr"]],
|
||||
"RtlTimeToTimeFields" => ["void", ["ptr", "ptr"]],
|
||||
"RtlTryEnterCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlUnicodeStringToAnsiSize" => ["long", ["ptr"]],
|
||||
"RtlUnicodeStringToAnsiString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlUnicodeStringToOemSize" => ["long", ["ptr"]],
|
||||
"RtlUnicodeStringToOemString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlUnicodeToMultiByteN" => ["long", ["str", "long", "ptr", "wstr", "long"]],
|
||||
"RtlUnicodeToMultiByteSize" => ["long", ["ptr", "wstr", "long"]],
|
||||
"RtlUnicodeToOemN" => ["long", ["str", "long", "ptr", "wstr", "long"]],
|
||||
"RtlUnlockHeap" => ["long", ["long"]],
|
||||
"RtlUnwind" => ["void", ["ptr", "ptr", "ptr", "long", "ptr"]],
|
||||
"RtlUpcaseUnicodeString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlUpcaseUnicodeStringToAnsiString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlUpcaseUnicodeStringToOemString" => ["long", ["ptr", "ptr", "long"]],
|
||||
"RtlUpcaseUnicodeToMultiByteN" => ["long", ["str", "long", "ptr", "wstr", "long"]],
|
||||
"RtlUpcaseUnicodeToOemN" => ["long", ["str", "long", "ptr", "wstr", "long"]],
|
||||
"RtlUpperString" => ["void", ["ptr", "ptr"]],
|
||||
"RtlValidSecurityDescriptor" => ["long", ["ptr"]],
|
||||
"RtlValidSid" => ["long", ["ptr"]],
|
||||
"RtlValidateHeap" => ["long", ["long", "long", "ptr"]],
|
||||
"RtlWalkHeap" => ["long", ["long", "ptr"]],
|
||||
"RtlZeroMemory" => ["void", ["ptr", "long"]],
|
||||
"RtlpUnWaitCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlpWaitForCriticalSection" => ["long", ["ptr"]],
|
||||
"RtlxAnsiStringToUnicodeSize" => ["long", ["ptr"]],
|
||||
"RtlxOemStringToUnicodeSize" => ["long", ["ptr"]],
|
||||
"RtlxUnicodeStringToAnsiSize" => ["long", ["ptr"]],
|
||||
"RtlxUnicodeStringToOemSize" => ["long", ["ptr"]],
|
||||
"VerSetConditionMask" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"ZwAcceptConnectPort" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"ZwAdjustGroupsToken" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"ZwCompleteConnectPort" => ["long", ["long"]],
|
||||
"ZwConnectPort" => ["long", ["long", "ptr", "long", "long", "long", "long", "long", "long"]],
|
||||
"ZwCreateDirectoryObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwCreateEvent" => ["long", ["ptr", "long", "ptr", "long", "long"]],
|
||||
"ZwCreateKey" => ["long", ["ptr", "long", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"ZwCreateMailslotFile" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"ZwCreatePagingFile" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"ZwCreatePort" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"ZwCreateSection" => ["long", ["ptr", "long", "ptr", "ptr", "long", "long", "long"]],
|
||||
"ZwCreateTimer" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"ZwDeleteKey" => ["long", ["long"]],
|
||||
"ZwDeleteValueKey" => ["long", ["long", "ptr"]],
|
||||
"ZwDeviceIoControlFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"ZwDuplicateObject" => ["long", ["long", "ptr", "long", "ptr", "long", "long", "long"]],
|
||||
"ZwDuplicateToken" => ["long", ["long", "long", "ptr", "long", "long", "ptr"]],
|
||||
"ZwEnumerateKey" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwEnumerateValueKey" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwFlushKey" => ["long", ["long"]],
|
||||
"ZwFsControlFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"ZwListenPort" => ["long", ["long", "long"]],
|
||||
"ZwLoadKey" => ["long", ["ptr", "ptr"]],
|
||||
"ZwMapViewOfSection" => ["long", ["long", "long", "ptr", "long", "long", "ptr", "ptr", "long", "long", "long"]],
|
||||
"ZwNotifyChangeKey" => ["long", ["long", "long", "ptr", "ptr", "ptr", "long", "long", "ptr", "long", "long"]],
|
||||
"ZwOpenDirectoryObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwOpenEvent" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwOpenFile" => ["long", ["ptr", "long", "ptr", "ptr", "long", "long"]],
|
||||
"ZwOpenKey" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwOpenProcessToken" => ["long", ["long", "long", "ptr"]],
|
||||
"ZwOpenSection" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwOpenThreadToken" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"ZwQueryDirectoryFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr", "long", "long", "long", "ptr", "long"]],
|
||||
"ZwQueryDirectoryObject" => ["long", ["long", "ptr", "long", "long", "long", "ptr", "ptr"]],
|
||||
"ZwQueryInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"ZwQueryInformationProcess" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwQueryInformationThread" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwQueryInformationToken" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwQueryKey" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwQueryObject" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ZwQuerySystemInformation" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"ZwQuerySystemTime" => ["void", ["ptr"]],
|
||||
"ZwQueryValueKey" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"ZwQueryVolumeInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"ZwReadFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"ZwRegisterThreadTerminatePort" => ["long", ["long"]],
|
||||
"ZwReplaceKey" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwReplyWaitReceivePort" => ["long", ["long", "long", "long", "long"]],
|
||||
"ZwRequestWaitReplyPort" => ["long", ["long", "long", "long"]],
|
||||
"ZwRestoreKey" => ["long", ["long", "long", "long"]],
|
||||
"ZwResumeThread" => ["long", ["long", "ptr"]],
|
||||
"ZwSaveKey" => ["long", ["long", "long"]],
|
||||
"ZwSetEvent" => ["long", ["long", "ptr"]],
|
||||
"ZwSetInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"ZwSetInformationKey" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ZwSetInformationProcess" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ZwSetInformationThread" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"ZwSetIntervalProfile" => ["long", ["long", "long"]],
|
||||
"ZwSetTimer" => ["long", ["long", "ptr", "ptr", "ptr", "long", "long", "ptr"]],
|
||||
"ZwSetValueKey" => ["long", ["long", "ptr", "long", "long", "ptr", "long"]],
|
||||
"ZwSetVolumeInformationFile" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"ZwTerminateThread" => ["long", ["long", "long"]],
|
||||
"ZwUnloadKey" => ["long", ["long"]],
|
||||
"ZwWaitForSingleObject" => ["long", ["ptr", "long", "ptr"]],
|
||||
"ZwWriteFile" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"_alldiv" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"_allmul" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"_alloca_probe" => ["void", ["ptr"]],
|
||||
"_allrem" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"_aulldiv" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"_aullrem" => ["longlong", ["long", "long", "long", "long"]],
|
||||
"_chkstk" => ["void", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("ntdll",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,97 +0,0 @@
|
|||
package odbc32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"SQLAllocConnect" => ["long", ["long", "ptr"]],
|
||||
"SQLAllocEnv" => ["long", ["ptr"]],
|
||||
"SQLAllocStmt" => ["long", ["long", "ptr"]],
|
||||
"SQLBindCol" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLCancel" => ["long", ["long"]],
|
||||
"SQLColAttributes" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"SQLConnect" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLDescribeCol" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SQLDisconnect" => ["long", ["long"]],
|
||||
"SQLError" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr", "long", "ptr"]],
|
||||
"SQLExecDirect" => ["long", ["long", "ptr", "long"]],
|
||||
"SQLExecute" => ["long", ["long"]],
|
||||
"SQLFetch" => ["long", ["long"]],
|
||||
"SQLFreeConnect" => ["long", ["long"]],
|
||||
"SQLFreeEnv" => ["long", ["long"]],
|
||||
"SQLFreeStmt" => ["long", ["long", "long"]],
|
||||
"SQLGetCursorName" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"SQLNumResultCols" => ["long", ["long", "ptr"]],
|
||||
"SQLPrepare" => ["long", ["long", "ptr", "long"]],
|
||||
"SQLRowCount" => ["long", ["long", "ptr"]],
|
||||
"SQLSetCursorName" => ["long", ["long", "ptr", "long"]],
|
||||
"SQLSetParam" => ["long", ["long", "long", "long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"SQLTransact" => ["long", ["long", "long", "long"]],
|
||||
"SQLAllocHandle" => ["long", ["long", "long", "ptr"]],
|
||||
"SQLBindParam" => ["long", ["long", "long", "long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"SQLCloseCursor" => ["long", ["long"]],
|
||||
"SQLColAttribute" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"SQLCopyDesc" => ["long", ["long", "long"]],
|
||||
"SQLEndTran" => ["long", ["long", "long", "long"]],
|
||||
"SQLFetchScroll" => ["long", ["long", "long", "long"]],
|
||||
"SQLFreeHandle" => ["long", ["long", "long"]],
|
||||
"SQLGetConnectAttr" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLGetDescField" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLGetDescRec" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SQLGetDiagField" => ["long", ["long", "long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLGetDiagRec" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr", "long", "ptr"]],
|
||||
"SQLGetEnvAttr" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLGetStmtAttr" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLSetConnectAttr" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SQLColumns" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLDriverConnect" => ["long", ["long", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLGetConnectOption" => ["long", ["long", "long", "ptr"]],
|
||||
"SQLGetData" => ["long", ["long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLGetFunctions" => ["long", ["long", "long", "ptr"]],
|
||||
"SQLGetInfo" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLGetStmtOption" => ["long", ["long", "long", "ptr"]],
|
||||
"SQLGetTypeInfo" => ["long", ["long", "long"]],
|
||||
"SQLParamData" => ["long", ["long", "ptr"]],
|
||||
"SQLPutData" => ["long", ["long", "ptr", "long"]],
|
||||
"SQLSetConnectOption" => ["long", ["long", "long", "long"]],
|
||||
"SQLSetStmtOption" => ["long", ["long", "long", "long"]],
|
||||
"SQLSpecialColumns" => ["long", ["long", "long", "ptr", "long", "ptr", "long", "ptr", "long", "long", "long"]],
|
||||
"SQLStatistics" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "long", "long"]],
|
||||
"SQLTables" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLBrowseConnect" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"SQLColumnPrivileges" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLDataSources" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SQLDescribeParam" => ["long", ["long", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SQLExtendedFetch" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"SQLForeignKeys" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLMoreResults" => ["long", ["long"]],
|
||||
"SQLNativeSql" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"SQLNumParams" => ["long", ["long", "ptr"]],
|
||||
"SQLParamOptions" => ["long", ["long", "long", "ptr"]],
|
||||
"SQLPrimaryKeys" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLProcedureColumns" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLProcedures" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLSetPos" => ["long", ["long", "long", "long", "long"]],
|
||||
"SQLSetScrollOptions" => ["long", ["long", "long", "long", "long"]],
|
||||
"SQLTablePrivileges" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"SQLDrivers" => ["long", ["long", "long", "ptr", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SQLBindParameter" => ["long", ["long", "long", "long", "long", "long", "long", "long", "ptr", "long", "ptr"]],
|
||||
"SQLSetDescField" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"SQLSetDescRec" => ["long", ["long", "long", "long", "long", "long", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"SQLSetEnvAttr" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SQLSetStmtAttr" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SQLAllocHandleStd" => ["long", ["long", "long", "ptr"]],
|
||||
"SQLBulkOperations" => ["long", ["long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("odbc32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,153 +0,0 @@
|
|||
package ole32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"CLSIDFromProgID" => ["long", ["str", "ptr"]],
|
||||
"CLSIDFromString" => ["long", ["str", "ptr"]],
|
||||
"CoBuildVersion" => ["long", []],
|
||||
"CoCreateFreeThreadedMarshaler" => ["long", ["ptr", "ptr"]],
|
||||
"CoCreateGuid" => ["long", ["ptr"]],
|
||||
"CoCreateInstance" => ["long", ["ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"CoDisconnectObject" => ["long", ["ptr", "long"]],
|
||||
"CoFileTimeNow" => ["long", ["ptr"]],
|
||||
"CoFreeAllLibraries" => ["void", []],
|
||||
"CoFreeLibrary" => ["void", ["long"]],
|
||||
"CoFreeUnusedLibraries" => ["void", []],
|
||||
"CoGetClassObject" => ["long", ["ptr", "long", "ptr", "ptr", "ptr"]],
|
||||
"CoGetCurrentProcess" => ["long", []],
|
||||
"CoGetMalloc" => ["long", ["long", "ptr"]],
|
||||
"CoGetMarshalSizeMax" => ["long", ["ptr", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"CoGetPSClsid" => ["long", ["ptr", "ptr"]],
|
||||
"CoGetStandardMarshal" => ["long", ["ptr", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"CoGetState" => ["long", ["ptr"]],
|
||||
"CoInitialize" => ["long", ["ptr"]],
|
||||
"CoInitializeWOW" => ["long", ["long", "long"]],
|
||||
"CoIsOle1Class" => ["long", ["ptr"]],
|
||||
"CoLoadLibrary" => ["long", ["str", "long"]],
|
||||
"CoLockObjectExternal" => ["long", ["ptr", "long", "long"]],
|
||||
"CoMarshalInterThreadInterfaceInStream" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"CoMarshalInterface" => ["long", ["ptr", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"CoRegisterClassObject" => ["long", ["ptr", "ptr", "long", "long", "ptr"]],
|
||||
"CoRegisterMallocSpy" => ["long", ["ptr"]],
|
||||
"CoRegisterMessageFilter" => ["long", ["ptr", "ptr"]],
|
||||
"CoRevokeClassObject" => ["long", ["long"]],
|
||||
"CoRevokeMallocSpy" => ["long", []],
|
||||
"CoSetState" => ["long", ["ptr"]],
|
||||
"CoTaskMemAlloc" => ["ptr", ["long"]],
|
||||
"CoTaskMemFree" => ["void", ["ptr"]],
|
||||
"CoTaskMemRealloc" => ["ptr", ["ptr", "long"]],
|
||||
"CoTreatAsClass" => ["long", ["ptr", "ptr"]],
|
||||
"CoUninitialize" => ["void", []],
|
||||
"CoUnmarshalInterface" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"CreateAntiMoniker" => ["long", ["ptr"]],
|
||||
"CreateBindCtx" => ["long", ["long", "ptr"]],
|
||||
"CreateDataAdviseHolder" => ["long", ["ptr"]],
|
||||
"CreateDataCache" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"CreateFileMoniker" => ["long", ["str", "ptr"]],
|
||||
"CreateGenericComposite" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"CreateILockBytesOnHGlobal" => ["long", ["long", "long", "ptr"]],
|
||||
"CreateItemMoniker" => ["long", ["str", "str", "ptr"]],
|
||||
"CreateOleAdviseHolder" => ["long", ["ptr"]],
|
||||
"CreateStreamOnHGlobal" => ["long", ["long", "long", "ptr"]],
|
||||
"DllDebugObjectRPCHook" => ["long", ["long", "ptr"]],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DoDragDrop" => ["long", ["ptr", "ptr", "long", "ptr"]],
|
||||
"GetClassFile" => ["long", ["str", "ptr"]],
|
||||
"GetConvertStg" => ["long", ["ptr"]],
|
||||
"GetHGlobalFromILockBytes" => ["long", ["ptr", "ptr"]],
|
||||
"GetHGlobalFromStream" => ["long", ["ptr", "ptr"]],
|
||||
"GetRunningObjectTable" => ["long", ["long", "ptr"]],
|
||||
"IIDFromString" => ["long", ["str", "ptr"]],
|
||||
"IsAccelerator" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"IsEqualGUID" => ["long", ["ptr", "ptr"]],
|
||||
"IsValidInterface" => ["long", ["ptr"]],
|
||||
"MkParseDisplayName" => ["long", ["ptr", "str", "ptr", "ptr"]],
|
||||
"MonikerCommonPrefixWith" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"OleBuildVersion" => ["long", []],
|
||||
"OleConvertIStorageToOLESTREAM" => ["long", ["ptr", "ptr"]],
|
||||
"OleConvertOLESTREAMToIStorage" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"OleCreate" => ["long", ["ptr", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateDefaultHandler" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateFromData" => ["long", ["ptr", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateFromFile" => ["long", ["ptr", "str", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateLink" => ["long", ["ptr", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateLinkFromData" => ["long", ["ptr", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateLinkToFile" => ["long", ["str", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleCreateMenuDescriptor" => ["long", ["long", "ptr"]],
|
||||
"OleCreateStaticFromData" => ["long", ["ptr", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleDestroyMenuDescriptor" => ["long", ["long"]],
|
||||
"OleDuplicateData" => ["long", ["long", "long", "long"]],
|
||||
"OleFlushClipboard" => ["long", ["undef"]],
|
||||
"OleGetAutoConvert" => ["long", ["ptr", "ptr"]],
|
||||
"OleGetClipboard" => ["long", ["ptr"]],
|
||||
"OleGetIconOfClass" => ["long", ["ptr", "str", "long"]],
|
||||
"OleInitialize" => ["long", ["ptr"]],
|
||||
"OleInitializeWOW" => ["long", ["long"]],
|
||||
"OleIsCurrentClipboard" => ["long", ["ptr"]],
|
||||
"OleIsRunning" => ["long", ["ptr"]],
|
||||
"OleLoad" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"OleLoadFromStream" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"OleLockRunning" => ["long", ["ptr", "long", "long"]],
|
||||
"OleQueryCreateFromData" => ["long", ["ptr"]],
|
||||
"OleQueryLinkFromData" => ["long", ["ptr"]],
|
||||
"OleRegEnumFormatEtc" => ["long", ["ptr", "long", "ptr"]],
|
||||
"OleRegEnumVerbs" => ["long", ["ptr", "ptr"]],
|
||||
"OleRegGetMiscStatus" => ["long", ["ptr", "long", "ptr"]],
|
||||
"OleRegGetUserType" => ["long", ["ptr", "long", "ptr"]],
|
||||
"OleRun" => ["long", ["ptr"]],
|
||||
"OleSave" => ["long", ["ptr", "ptr", "long"]],
|
||||
"OleSaveToStream" => ["long", ["ptr", "ptr"]],
|
||||
"OleSetAutoConvert" => ["long", ["ptr", "ptr"]],
|
||||
"OleSetClipboard" => ["long", ["ptr"]],
|
||||
"OleSetContainedObject" => ["long", ["ptr", "long"]],
|
||||
"OleSetMenuDescriptor" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"OleTranslateAccelerator" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"OleUninitialize" => ["void", []],
|
||||
"ProgIDFromCLSID" => ["long", ["ptr", "ptr"]],
|
||||
"ReadClassStg" => ["long", ["ptr", "ptr"]],
|
||||
"ReadClassStm" => ["long", ["ptr", "ptr"]],
|
||||
"ReadFmtUserTypeStg" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RegisterDragDrop" => ["long", ["long", "ptr"]],
|
||||
"ReleaseStgMedium" => ["void", ["ptr"]],
|
||||
"RevokeDragDrop" => ["long", ["long"]],
|
||||
"SetConvertStg" => ["long", ["ptr", "long"]],
|
||||
"StgCreateDocfile" => ["long", ["str", "long", "long", "ptr"]],
|
||||
"StgCreateDocfileOnILockBytes" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"StgIsStorageFile" => ["long", ["str"]],
|
||||
"StgIsStorageILockBytes" => ["long", ["ptr"]],
|
||||
"StgOpenStorage" => ["long", ["ptr", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"StgOpenStorageOnILockBytes" => ["long", ["ptr", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"StgSetTimes" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"StringFromCLSID" => ["long", ["ptr", "ptr"]],
|
||||
"StringFromGUID2" => ["long", ["ptr", "str", "long"]],
|
||||
"StringFromIID" => ["long", ["ptr", "ptr"]],
|
||||
"WriteClassStg" => ["long", ["ptr", "ptr"]],
|
||||
"WriteClassStm" => ["long", ["ptr", "ptr"]],
|
||||
"WriteFmtUserTypeStg" => ["long", ["ptr", "long", "str"]],
|
||||
"CoInitializeEx" => ["long", ["ptr", "long"]],
|
||||
"CoInitializeSecurity" => ["long", ["ptr", "long", "ptr", "ptr", "long", "long", "ptr", "long", "ptr"]],
|
||||
"CoCreateInstanceEx" => ["long", ["ptr", "ptr", "long", "ptr", "long", "ptr"]],
|
||||
"PropVariantClear" => ["long", ["ptr"]],
|
||||
"CoResumeClassObjects" => ["long", []],
|
||||
"CreateErrorInfo" => ["long", ["ptr"]],
|
||||
"DllRegisterServer" => ["long", ["undef"]],
|
||||
"FreePropVariantArray" => ["long", ["long", "ptr"]],
|
||||
"GetErrorInfo" => ["long", ["long", "ptr"]],
|
||||
"PropVariantCopy" => ["long", ["ptr", "ptr"]],
|
||||
"SetErrorInfo" => ["long", ["long", "ptr"]],
|
||||
"DllEntryPoint" => ["long", ["long", "long", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("ole32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,237 +0,0 @@
|
|||
package oleaut32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"SysAllocString" => ["wstr", ["str"]],
|
||||
"SysReAllocString" => ["long", ["ptr", "str"]],
|
||||
"SysAllocStringLen" => ["wstr", ["ptr", "long"]],
|
||||
"SysReAllocStringLen" => ["long", ["ptr", "ptr", "long"]],
|
||||
"SysFreeString" => ["void", ["wstr"]],
|
||||
"SysStringLen" => ["long", ["wstr"]],
|
||||
"VariantInit" => ["void", ["ptr"]],
|
||||
"VariantClear" => ["long", ["ptr"]],
|
||||
"VariantCopy" => ["long", ["ptr", "ptr"]],
|
||||
"VariantCopyInd" => ["long", ["ptr", "ptr"]],
|
||||
"VariantChangeType" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"VariantTimeToDosDateTime" => ["long", ["double", "ptr", "ptr"]],
|
||||
"DosDateTimeToVariantTime" => ["long", ["long", "long", "ptr"]],
|
||||
"SafeArrayCreate" => ["ptr", ["long", "long", "ptr"]],
|
||||
"SafeArrayDestroy" => ["long", ["ptr"]],
|
||||
"SafeArrayGetDim" => ["long", ["ptr"]],
|
||||
"SafeArrayGetElemsize" => ["long", ["ptr"]],
|
||||
"SafeArrayGetUBound" => ["long", ["ptr", "long", "ptr"]],
|
||||
"SafeArrayGetLBound" => ["long", ["ptr", "long", "ptr"]],
|
||||
"SafeArrayLock" => ["long", ["ptr"]],
|
||||
"SafeArrayUnlock" => ["long", ["ptr"]],
|
||||
"SafeArrayAccessData" => ["long", ["ptr", "ptr"]],
|
||||
"SafeArrayUnaccessData" => ["long", ["ptr"]],
|
||||
"SafeArrayGetElement" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"SafeArrayPutElement" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"SafeArrayCopy" => ["long", ["ptr", "ptr"]],
|
||||
"DispGetParam" => ["long", ["ptr", "long", "long", "ptr", "ptr"]],
|
||||
"DispGetIDsOfNames" => ["long", ["ptr", "ptr", "long", "ptr"]],
|
||||
"DispInvoke" => ["long", ["ptr", "ptr", "long", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"CreateDispTypeInfo" => ["long", ["ptr", "long", "ptr"]],
|
||||
"CreateStdDispatch" => ["long", ["ptr", "ptr", "ptr", "ptr"]],
|
||||
"RegisterActiveObject" => ["long", ["ptr", "ptr", "long", "ptr"]],
|
||||
"RevokeActiveObject" => ["long", ["long", "ptr"]],
|
||||
"GetActiveObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"SafeArrayAllocDescriptor" => ["long", ["long", "ptr"]],
|
||||
"SafeArrayAllocData" => ["long", ["ptr"]],
|
||||
"SafeArrayDestroyDescriptor" => ["long", ["ptr"]],
|
||||
"SafeArrayDestroyData" => ["long", ["ptr"]],
|
||||
"SafeArrayRedim" => ["long", ["ptr", "ptr"]],
|
||||
"SafeArrayAllocDescriptorEx" => ["long", ["long", "long", "ptr"]],
|
||||
"VarParseNumFromStr" => ["long", ["ptr", "long", "long", "ptr", "ptr"]],
|
||||
"VarNumFromParseNum" => ["long", ["ptr", "ptr", "long", "ptr"]],
|
||||
"VarI2FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarI2FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarI2FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarI2FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarI2FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarI2FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarI2FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarI2FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarI4FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarI4FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarI4FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarI4FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarR4FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarR4FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarR4FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarR4FromBool" => ["long", ["long", "ptr"]],
|
||||
"SafeArrayGetVartype" => ["long", ["ptr", "ptr"]],
|
||||
"VarR8FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarR8FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarR8FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarR8FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarFormat" => ["long", ["ptr", "str", "long", "long", "long", "ptr"]],
|
||||
"VarDateFromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromI2" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromI4" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromR4" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromR8" => ["long", ["double", "ptr"]],
|
||||
"VarDateFromCy" => ["long", ["double", "ptr"]],
|
||||
"VarDateFromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarDateFromBool" => ["long", ["long", "ptr"]],
|
||||
"VarFormatDateTime" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarCyFromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromI2" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromI4" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromR4" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromR8" => ["long", ["double", "ptr"]],
|
||||
"VarCyFromDate" => ["long", ["double", "ptr"]],
|
||||
"VarCyFromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarCyFromBool" => ["long", ["long", "ptr"]],
|
||||
"VarBstrFromUI1" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBstrFromI2" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBstrFromI4" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBstrFromR4" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBstrFromR8" => ["long", ["double", "long", "long", "ptr"]],
|
||||
"VarBstrFromCy" => ["long", ["double", "long", "long", "ptr"]],
|
||||
"VarBstrFromDate" => ["long", ["double", "long", "long", "ptr"]],
|
||||
"VarBstrFromBool" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBoolFromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarBoolFromI2" => ["long", ["long", "ptr"]],
|
||||
"VarBoolFromI4" => ["long", ["long", "ptr"]],
|
||||
"VarBoolFromR4" => ["long", ["long", "ptr"]],
|
||||
"VarBoolFromR8" => ["long", ["double", "ptr"]],
|
||||
"VarBoolFromDate" => ["long", ["double", "ptr"]],
|
||||
"VarBoolFromCy" => ["long", ["double", "ptr"]],
|
||||
"VarBoolFromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarFormatCurrency" => ["long", ["ptr", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"VarUI1FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarUI1FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarUI1FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarUI1FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarUI1FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarUI1FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarUI1FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarUI1FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarFormatFromTokens" => ["long", ["ptr", "str", "ptr", "long", "ptr", "long"]],
|
||||
"VarTokenizeFormatString" => ["long", ["str", "ptr", "long", "long", "long", "long", "ptr"]],
|
||||
"VarAnd" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"VariantChangeTypeEx" => ["long", ["ptr", "ptr", "long", "long", "long"]],
|
||||
"SafeArrayPtrOfIndex" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"SysStringByteLen" => ["long", ["wstr"]],
|
||||
"SysAllocStringByteLen" => ["wstr", ["str", "long"]],
|
||||
"CreateTypeLib" => ["long", ["long", "str", "ptr"]],
|
||||
"LoadTypeLib" => ["long", ["ptr", "ptr"]],
|
||||
"LoadRegTypeLib" => ["long", ["ptr", "long", "long", "long", "ptr"]],
|
||||
"RegisterTypeLib" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"QueryPathOfRegTypeLib" => ["long", ["ptr", "long", "long", "long", "ptr"]],
|
||||
"LHashValOfNameSys" => ["long", ["long", "long", "str"]],
|
||||
"LHashValOfNameSysA" => ["long", ["long", "long", "str"]],
|
||||
"OaBuildVersion" => ["long", ["undef"]],
|
||||
"VarNot" => ["long", ["ptr", "ptr"]],
|
||||
"VarCmp" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"LoadTypeLibEx" => ["long", ["str", "long", "ptr"]],
|
||||
"SystemTimeToVariantTime" => ["long", ["ptr", "ptr"]],
|
||||
"VariantTimeToSystemTime" => ["long", ["double", "ptr"]],
|
||||
"UnRegisterTypeLib" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"VarI2FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarI2FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarI2FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarI4FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarR4FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarR8FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromI1" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarDateFromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromI1" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarCyFromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarBstrFromI1" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBstrFromUI2" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBstrFromUI4" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"VarBoolFromI1" => ["long", ["long", "ptr"]],
|
||||
"VarBoolFromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarBoolFromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarUI1FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarUI1FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarUI1FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarI1FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarI1FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarI1FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarI1FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarI1FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarUI2FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarUI2FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarUI2FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarUI2FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarUI2FromUI4" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromUI1" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromI2" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromI4" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromR4" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromR8" => ["long", ["double", "ptr"]],
|
||||
"VarUI4FromDate" => ["long", ["double", "ptr"]],
|
||||
"VarUI4FromCy" => ["long", ["double", "ptr"]],
|
||||
"VarUI4FromStr" => ["long", ["ptr", "long", "long", "ptr"]],
|
||||
"VarUI4FromBool" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromI1" => ["long", ["long", "ptr"]],
|
||||
"VarUI4FromUI2" => ["long", ["long", "ptr"]],
|
||||
"VarCyMulI4" => ["long", ["double", "long", "ptr"]],
|
||||
"VarBstrCat" => ["long", ["wstr", "wstr", "ptr"]],
|
||||
"VarBstrCmp" => ["long", ["wstr", "wstr", "long", "long"]],
|
||||
"VarCat" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", ["undef"]],
|
||||
"VarDateFromUdate" => ["long", ["ptr", "long", "ptr"]],
|
||||
"VarUdateFromDate" => ["long", ["double", "long", "ptr"]],
|
||||
"OleLoadPictureEx" => ["long", ["ptr", "long", "long", "ptr", "long", "long", "long", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", ["undef"]],
|
||||
"SafeArrayCreateVector" => ["ptr", ["long", "long", "long"]],
|
||||
"SafeArrayCopyData" => ["long", ["ptr", "ptr"]],
|
||||
"OleIconToCursor" => ["long", ["long", "long"]],
|
||||
"OleCreatePropertyFrameIndirect" => ["long", ["ptr"]],
|
||||
"OleCreatePropertyFrame" => ["long", ["long", "long", "long", "str", "long", "ptr", "long", "ptr", "long", "long", "ptr"]],
|
||||
"OleLoadPicture" => ["long", ["ptr", "long", "long", "ptr", "ptr"]],
|
||||
"OleCreatePictureIndirect" => ["long", ["ptr", "ptr", "long", "ptr"]],
|
||||
"OleCreateFontIndirect" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"OleTranslateColor" => ["long", ["long", "long", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("oleaut32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,30 +0,0 @@
|
|||
package olecli32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"OleQueryLinkFromClip" => ["long", ["str", "long", "long"]],
|
||||
"OleQueryCreateFromClip" => ["long", ["str", "long", "long"]],
|
||||
"OleCreateLinkFromClip" => ["long", ["str", "ptr", "long", "str", "ptr", "long", "long"]],
|
||||
"OleCreateFromClip" => ["long", ["str", "ptr", "long", "str", "ptr", "long", "long"]],
|
||||
"OleQueryType" => ["long", ["ptr", "ptr"]],
|
||||
"OleSetHostNames" => ["long", ["ptr", "str", "str"]],
|
||||
"OleRegisterClientDoc" => ["long", ["str", "str", "long", "ptr"]],
|
||||
"OleRevokeClientDoc" => ["long", ["long"]],
|
||||
"OleRenameClientDoc" => ["long", ["long", "str"]],
|
||||
"OleSavedClientDoc" => ["long", ["long"]],
|
||||
"OleIsDcMeta" => ["long", ["long"]]
|
||||
};
|
||||
|
||||
&wine::declare("olecli32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,40 +0,0 @@
|
|||
package oledlg;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"OleUIAddVerbMenuA" => ["long", ["ptr", "str", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"OleUICanConvertOrActivateAs" => ["long", ["ptr", "long", "long"]],
|
||||
"OleUIInsertObjectA" => ["long", ["ptr"]],
|
||||
"OleUIPasteSpecialA" => ["long", ["ptr"]],
|
||||
"OleUIEditLinksA" => ["long", ["ptr"]],
|
||||
"OleUIChangeIconA" => ["long", ["ptr"]],
|
||||
"OleUIConvertA" => ["long", ["ptr"]],
|
||||
"OleUIBusyA" => ["long", ["ptr"]],
|
||||
"OleUIUpdateLinksA" => ["long", ["ptr", "long", "str", "long"]],
|
||||
"OleUIObjectPropertiesA" => ["long", ["ptr"]],
|
||||
"OleUIChangeSourceA" => ["long", ["ptr"]],
|
||||
"OleUIAddVerbMenuW" => ["long", ["ptr", "wstr", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"OleUIBusyW" => ["long", ["ptr"]],
|
||||
"OleUIChangeIconW" => ["long", ["ptr"]],
|
||||
"OleUIChangeSourceW" => ["long", ["ptr"]],
|
||||
"OleUIConvertW" => ["long", ["ptr"]],
|
||||
"OleUIEditLinksW" => ["long", ["ptr"]],
|
||||
"OleUIInsertObjectW" => ["long", ["ptr"]],
|
||||
"OleUIObjectPropertiesW" => ["long", ["ptr"]],
|
||||
"OleUIPasteSpecialW" => ["long", ["ptr"]],
|
||||
"OleUIUpdateLinksW" => ["long", ["ptr", "long", "wstr", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("oledlg",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package olepro32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllCanUnloadNow" => ["long", ["undef"]],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", ["undef"]],
|
||||
"DllUnregisterServer" => ["long", ["undef"]]
|
||||
};
|
||||
|
||||
&wine::declare("olepro32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,25 +0,0 @@
|
|||
package olesvr32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"OleRegisterServer" => ["long", ["str", "ptr", "ptr", "long", "long"]],
|
||||
"OleBlockServer" => ["long", ["long"]],
|
||||
"OleUnblockServer" => ["long", ["long", "ptr"]],
|
||||
"OleRegisterServerDoc" => ["long", ["long", "str", "ptr", "ptr"]],
|
||||
"OleRevokeServerDoc" => ["long", ["long"]],
|
||||
"OleRenameServerDoc" => ["long", ["long", "str"]]
|
||||
};
|
||||
|
||||
&wine::declare("olesvr32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,443 +0,0 @@
|
|||
package opengl32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"glAccum" => ["void", ["long", "long"]],
|
||||
"glActiveTextureARB" => ["void", ["long"]],
|
||||
"glAlphaFunc" => ["void", ["long", "long"]],
|
||||
"glAreTexturesResident" => ["long", ["long", "ptr", "ptr"]],
|
||||
"glArrayElement" => ["void", ["long"]],
|
||||
"glBegin" => ["void", ["long"]],
|
||||
"glBindTexture" => ["void", ["long", "long"]],
|
||||
"glBitmap" => ["void", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glBlendColor" => ["void", ["long", "long", "long", "long"]],
|
||||
"glBlendEquation" => ["void", ["long"]],
|
||||
"glBlendFunc" => ["void", ["long", "long"]],
|
||||
"glCallList" => ["void", ["long"]],
|
||||
"glCallLists" => ["void", ["long", "long", "ptr"]],
|
||||
"glClear" => ["void", ["long"]],
|
||||
"glClearAccum" => ["void", ["long", "long", "long", "long"]],
|
||||
"glClearColor" => ["void", ["long", "long", "long", "long"]],
|
||||
"glClearDepth" => ["void", ["double"]],
|
||||
"glClearIndex" => ["void", ["long"]],
|
||||
"glClearStencil" => ["void", ["long"]],
|
||||
"glClientActiveTextureARB" => ["void", ["long"]],
|
||||
"glClipPlane" => ["void", ["long", "ptr"]],
|
||||
"glColor3b" => ["void", ["long", "long", "long"]],
|
||||
"glColor3bv" => ["void", ["ptr"]],
|
||||
"glColor3d" => ["void", ["double", "double", "double"]],
|
||||
"glColor3dv" => ["void", ["ptr"]],
|
||||
"glColor3f" => ["void", ["long", "long", "long"]],
|
||||
"glColor3fv" => ["void", ["ptr"]],
|
||||
"glColor3i" => ["void", ["long", "long", "long"]],
|
||||
"glColor3iv" => ["void", ["ptr"]],
|
||||
"glColor3s" => ["void", ["long", "long", "long"]],
|
||||
"glColor3sv" => ["void", ["ptr"]],
|
||||
"glColor3ub" => ["void", ["long", "long", "long"]],
|
||||
"glColor3ubv" => ["void", ["ptr"]],
|
||||
"glColor3ui" => ["void", ["long", "long", "long"]],
|
||||
"glColor3uiv" => ["void", ["ptr"]],
|
||||
"glColor3us" => ["void", ["long", "long", "long"]],
|
||||
"glColor3usv" => ["void", ["ptr"]],
|
||||
"glColor4b" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4bv" => ["void", ["ptr"]],
|
||||
"glColor4d" => ["void", ["double", "double", "double", "double"]],
|
||||
"glColor4dv" => ["void", ["ptr"]],
|
||||
"glColor4f" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4fv" => ["void", ["ptr"]],
|
||||
"glColor4i" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4iv" => ["void", ["ptr"]],
|
||||
"glColor4s" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4sv" => ["void", ["ptr"]],
|
||||
"glColor4ub" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4ubv" => ["void", ["ptr"]],
|
||||
"glColor4ui" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4uiv" => ["void", ["ptr"]],
|
||||
"glColor4us" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColor4usv" => ["void", ["ptr"]],
|
||||
"glColorMask" => ["void", ["long", "long", "long", "long"]],
|
||||
"glColorMaterial" => ["void", ["long", "long"]],
|
||||
"glColorPointer" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glColorSubTable" => ["void", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"glColorTable" => ["void", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"glColorTableParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glColorTableParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glConvolutionFilter1D" => ["void", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"glConvolutionFilter2D" => ["void", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glConvolutionParameterf" => ["void", ["long", "long", "long"]],
|
||||
"glConvolutionParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glConvolutionParameteri" => ["void", ["long", "long", "long"]],
|
||||
"glConvolutionParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glCopyColorSubTable" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glCopyColorTable" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glCopyConvolutionFilter1D" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glCopyConvolutionFilter2D" => ["void", ["long", "long", "long", "long", "long", "long"]],
|
||||
"glCopyPixels" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glCopyTexImage1D" => ["void", ["long", "long", "long", "long", "long", "long", "long"]],
|
||||
"glCopyTexImage2D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"glCopyTexSubImage1D" => ["void", ["long", "long", "long", "long", "long", "long"]],
|
||||
"glCopyTexSubImage2D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"glCopyTexSubImage3D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"glCullFace" => ["void", ["long"]],
|
||||
"glDeleteLists" => ["void", ["long", "long"]],
|
||||
"glDeleteTextures" => ["void", ["long", "ptr"]],
|
||||
"glDepthFunc" => ["void", ["long"]],
|
||||
"glDepthMask" => ["void", ["long"]],
|
||||
"glDepthRange" => ["void", ["double", "double"]],
|
||||
"glDisable" => ["void", ["long"]],
|
||||
"glDisableClientState" => ["void", ["long"]],
|
||||
"glDrawArrays" => ["void", ["long", "long", "long"]],
|
||||
"glDrawBuffer" => ["void", ["long"]],
|
||||
"glDrawElements" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glDrawPixels" => ["void", ["long", "long", "long", "long", "ptr"]],
|
||||
"glDrawRangeElements" => ["void", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"glEdgeFlag" => ["void", ["long"]],
|
||||
"glEdgeFlagPointer" => ["void", ["long", "ptr"]],
|
||||
"glEdgeFlagv" => ["void", ["ptr"]],
|
||||
"glEnable" => ["void", ["long"]],
|
||||
"glEnableClientState" => ["void", ["long"]],
|
||||
"glEnd" => ["void", ["undef"]],
|
||||
"glEndList" => ["void", ["undef"]],
|
||||
"glEvalCoord1d" => ["void", ["double"]],
|
||||
"glEvalCoord1dv" => ["void", ["ptr"]],
|
||||
"glEvalCoord1f" => ["void", ["long"]],
|
||||
"glEvalCoord1fv" => ["void", ["ptr"]],
|
||||
"glEvalCoord2d" => ["void", ["double", "double"]],
|
||||
"glEvalCoord2dv" => ["void", ["ptr"]],
|
||||
"glEvalCoord2f" => ["void", ["long", "long"]],
|
||||
"glEvalCoord2fv" => ["void", ["ptr"]],
|
||||
"glEvalMesh1" => ["void", ["long", "long", "long"]],
|
||||
"glEvalMesh2" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glEvalPoint1" => ["void", ["long"]],
|
||||
"glEvalPoint2" => ["void", ["long", "long"]],
|
||||
"glFeedbackBuffer" => ["void", ["long", "long", "ptr"]],
|
||||
"glFinish" => ["void", ["undef"]],
|
||||
"glFlush" => ["void", ["undef"]],
|
||||
"glFogf" => ["void", ["long", "long"]],
|
||||
"glFogfv" => ["void", ["long", "ptr"]],
|
||||
"glFogi" => ["void", ["long", "long"]],
|
||||
"glFogiv" => ["void", ["long", "ptr"]],
|
||||
"glFrontFace" => ["void", ["long"]],
|
||||
"glFrustum" => ["void", ["double", "double", "double", "double", "double", "double"]],
|
||||
"glGenLists" => ["long", ["long"]],
|
||||
"glGenTextures" => ["void", ["long", "ptr"]],
|
||||
"glGetBooleanv" => ["void", ["long", "ptr"]],
|
||||
"glGetClipPlane" => ["void", ["long", "ptr"]],
|
||||
"glGetColorTable" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glGetColorTableParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetColorTableParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetConvolutionFilter" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glGetConvolutionParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetConvolutionParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetDoublev" => ["void", ["long", "ptr"]],
|
||||
"glGetError" => ["long", ["undef"]],
|
||||
"glGetFloatv" => ["void", ["long", "ptr"]],
|
||||
"glGetHistogram" => ["void", ["long", "long", "long", "long", "ptr"]],
|
||||
"glGetHistogramParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetHistogramParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetIntegerv" => ["void", ["long", "ptr"]],
|
||||
"glGetLightfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetLightiv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMapdv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMapfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMapiv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMaterialfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMaterialiv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMinmax" => ["void", ["long", "long", "long", "long", "ptr"]],
|
||||
"glGetMinmaxParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetMinmaxParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetPixelMapfv" => ["void", ["long", "ptr"]],
|
||||
"glGetPixelMapuiv" => ["void", ["long", "ptr"]],
|
||||
"glGetPixelMapusv" => ["void", ["long", "ptr"]],
|
||||
"glGetPointerv" => ["void", ["long", "ptr"]],
|
||||
"glGetPolygonStipple" => ["void", ["ptr"]],
|
||||
"glGetSeparableFilter" => ["void", ["long", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"glGetString" => ["ptr", ["long"]],
|
||||
"glGetTexEnvfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetTexEnviv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetTexGendv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetTexGenfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetTexGeniv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetTexImage" => ["void", ["long", "long", "long", "long", "ptr"]],
|
||||
"glGetTexLevelParameterfv" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glGetTexLevelParameteriv" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glGetTexParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glGetTexParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glHint" => ["void", ["long", "long"]],
|
||||
"glHistogram" => ["void", ["long", "long", "long", "long"]],
|
||||
"glIndexMask" => ["void", ["long"]],
|
||||
"glIndexPointer" => ["void", ["long", "long", "ptr"]],
|
||||
"glIndexd" => ["void", ["double"]],
|
||||
"glIndexdv" => ["void", ["ptr"]],
|
||||
"glIndexf" => ["void", ["long"]],
|
||||
"glIndexfv" => ["void", ["ptr"]],
|
||||
"glIndexi" => ["void", ["long"]],
|
||||
"glIndexiv" => ["void", ["ptr"]],
|
||||
"glIndexs" => ["void", ["long"]],
|
||||
"glIndexsv" => ["void", ["ptr"]],
|
||||
"glIndexub" => ["void", ["long"]],
|
||||
"glIndexubv" => ["void", ["ptr"]],
|
||||
"glInitNames" => ["void", ["undef"]],
|
||||
"glInterleavedArrays" => ["void", ["long", "long", "ptr"]],
|
||||
"glIsEnabled" => ["long", ["long"]],
|
||||
"glIsList" => ["long", ["long"]],
|
||||
"glIsTexture" => ["long", ["long"]],
|
||||
"glLightModelf" => ["void", ["long", "long"]],
|
||||
"glLightModelfv" => ["void", ["long", "ptr"]],
|
||||
"glLightModeli" => ["void", ["long", "long"]],
|
||||
"glLightModeliv" => ["void", ["long", "ptr"]],
|
||||
"glLightf" => ["void", ["long", "long", "long"]],
|
||||
"glLightfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glLighti" => ["void", ["long", "long", "long"]],
|
||||
"glLightiv" => ["void", ["long", "long", "ptr"]],
|
||||
"glLineStipple" => ["void", ["long", "long"]],
|
||||
"glLineWidth" => ["void", ["long"]],
|
||||
"glListBase" => ["void", ["long"]],
|
||||
"glLoadIdentity" => ["void", ["undef"]],
|
||||
"glLoadMatrixd" => ["void", ["ptr"]],
|
||||
"glLoadMatrixf" => ["void", ["ptr"]],
|
||||
"glLoadName" => ["void", ["long"]],
|
||||
"glLogicOp" => ["void", ["long"]],
|
||||
"glMap1d" => ["void", ["long", "double", "double", "long", "long", "ptr"]],
|
||||
"glMap1f" => ["void", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"glMap2d" => ["void", ["long", "double", "double", "long", "long", "double", "double", "long", "long", "ptr"]],
|
||||
"glMap2f" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glMapGrid1d" => ["void", ["long", "double", "double"]],
|
||||
"glMapGrid1f" => ["void", ["long", "long", "long"]],
|
||||
"glMapGrid2d" => ["void", ["long", "double", "double", "long", "double", "double"]],
|
||||
"glMapGrid2f" => ["void", ["long", "long", "long", "long", "long", "long"]],
|
||||
"glMaterialf" => ["void", ["long", "long", "long"]],
|
||||
"glMaterialfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glMateriali" => ["void", ["long", "long", "long"]],
|
||||
"glMaterialiv" => ["void", ["long", "long", "ptr"]],
|
||||
"glMatrixMode" => ["void", ["long"]],
|
||||
"glMinmax" => ["void", ["long", "long", "long"]],
|
||||
"glMultMatrixd" => ["void", ["ptr"]],
|
||||
"glMultMatrixf" => ["void", ["ptr"]],
|
||||
"glMultiTexCoord1dARB" => ["void", ["long", "double"]],
|
||||
"glMultiTexCoord1dvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord1fARB" => ["void", ["long", "long"]],
|
||||
"glMultiTexCoord1fvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord1iARB" => ["void", ["long", "long"]],
|
||||
"glMultiTexCoord1ivARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord1sARB" => ["void", ["long", "long"]],
|
||||
"glMultiTexCoord1svARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord2dARB" => ["void", ["long", "double", "double"]],
|
||||
"glMultiTexCoord2dvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord2fARB" => ["void", ["long", "long", "long"]],
|
||||
"glMultiTexCoord2fvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord2iARB" => ["void", ["long", "long", "long"]],
|
||||
"glMultiTexCoord2ivARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord2sARB" => ["void", ["long", "long", "long"]],
|
||||
"glMultiTexCoord2svARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord3dARB" => ["void", ["long", "double", "double", "double"]],
|
||||
"glMultiTexCoord3dvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord3fARB" => ["void", ["long", "long", "long", "long"]],
|
||||
"glMultiTexCoord3fvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord3iARB" => ["void", ["long", "long", "long", "long"]],
|
||||
"glMultiTexCoord3ivARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord3sARB" => ["void", ["long", "long", "long", "long"]],
|
||||
"glMultiTexCoord3svARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord4dARB" => ["void", ["long", "double", "double", "double", "double"]],
|
||||
"glMultiTexCoord4dvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord4fARB" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glMultiTexCoord4fvARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord4iARB" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glMultiTexCoord4ivARB" => ["void", ["long", "ptr"]],
|
||||
"glMultiTexCoord4sARB" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"glMultiTexCoord4svARB" => ["void", ["long", "ptr"]],
|
||||
"glNewList" => ["void", ["long", "long"]],
|
||||
"glNormal3b" => ["void", ["long", "long", "long"]],
|
||||
"glNormal3bv" => ["void", ["ptr"]],
|
||||
"glNormal3d" => ["void", ["double", "double", "double"]],
|
||||
"glNormal3dv" => ["void", ["ptr"]],
|
||||
"glNormal3f" => ["void", ["long", "long", "long"]],
|
||||
"glNormal3fv" => ["void", ["ptr"]],
|
||||
"glNormal3i" => ["void", ["long", "long", "long"]],
|
||||
"glNormal3iv" => ["void", ["ptr"]],
|
||||
"glNormal3s" => ["void", ["long", "long", "long"]],
|
||||
"glNormal3sv" => ["void", ["ptr"]],
|
||||
"glNormalPointer" => ["void", ["long", "long", "ptr"]],
|
||||
"glOrtho" => ["void", ["double", "double", "double", "double", "double", "double"]],
|
||||
"glPassThrough" => ["void", ["long"]],
|
||||
"glPixelMapfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glPixelMapuiv" => ["void", ["long", "long", "ptr"]],
|
||||
"glPixelMapusv" => ["void", ["long", "long", "ptr"]],
|
||||
"glPixelStoref" => ["void", ["long", "long"]],
|
||||
"glPixelStorei" => ["void", ["long", "long"]],
|
||||
"glPixelTransferf" => ["void", ["long", "long"]],
|
||||
"glPixelTransferi" => ["void", ["long", "long"]],
|
||||
"glPixelZoom" => ["void", ["long", "long"]],
|
||||
"glPointSize" => ["void", ["long"]],
|
||||
"glPolygonMode" => ["void", ["long", "long"]],
|
||||
"glPolygonOffset" => ["void", ["long", "long"]],
|
||||
"glPolygonStipple" => ["void", ["ptr"]],
|
||||
"glPopAttrib" => ["void", ["undef"]],
|
||||
"glPopClientAttrib" => ["void", ["undef"]],
|
||||
"glPopMatrix" => ["void", ["undef"]],
|
||||
"glPopName" => ["void", ["undef"]],
|
||||
"glPrioritizeTextures" => ["void", ["long", "ptr", "ptr"]],
|
||||
"glPushAttrib" => ["void", ["long"]],
|
||||
"glPushClientAttrib" => ["void", ["long"]],
|
||||
"glPushMatrix" => ["void", ["undef"]],
|
||||
"glPushName" => ["void", ["long"]],
|
||||
"glRasterPos2d" => ["void", ["double", "double"]],
|
||||
"glRasterPos2dv" => ["void", ["ptr"]],
|
||||
"glRasterPos2f" => ["void", ["long", "long"]],
|
||||
"glRasterPos2fv" => ["void", ["ptr"]],
|
||||
"glRasterPos2i" => ["void", ["long", "long"]],
|
||||
"glRasterPos2iv" => ["void", ["ptr"]],
|
||||
"glRasterPos2s" => ["void", ["long", "long"]],
|
||||
"glRasterPos2sv" => ["void", ["ptr"]],
|
||||
"glRasterPos3d" => ["void", ["double", "double", "double"]],
|
||||
"glRasterPos3dv" => ["void", ["ptr"]],
|
||||
"glRasterPos3f" => ["void", ["long", "long", "long"]],
|
||||
"glRasterPos3fv" => ["void", ["ptr"]],
|
||||
"glRasterPos3i" => ["void", ["long", "long", "long"]],
|
||||
"glRasterPos3iv" => ["void", ["ptr"]],
|
||||
"glRasterPos3s" => ["void", ["long", "long", "long"]],
|
||||
"glRasterPos3sv" => ["void", ["ptr"]],
|
||||
"glRasterPos4d" => ["void", ["double", "double", "double", "double"]],
|
||||
"glRasterPos4dv" => ["void", ["ptr"]],
|
||||
"glRasterPos4f" => ["void", ["long", "long", "long", "long"]],
|
||||
"glRasterPos4fv" => ["void", ["ptr"]],
|
||||
"glRasterPos4i" => ["void", ["long", "long", "long", "long"]],
|
||||
"glRasterPos4iv" => ["void", ["ptr"]],
|
||||
"glRasterPos4s" => ["void", ["long", "long", "long", "long"]],
|
||||
"glRasterPos4sv" => ["void", ["ptr"]],
|
||||
"glReadBuffer" => ["void", ["long"]],
|
||||
"glReadPixels" => ["void", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glRectd" => ["void", ["double", "double", "double", "double"]],
|
||||
"glRectdv" => ["void", ["ptr", "ptr"]],
|
||||
"glRectf" => ["void", ["long", "long", "long", "long"]],
|
||||
"glRectfv" => ["void", ["ptr", "ptr"]],
|
||||
"glRecti" => ["void", ["long", "long", "long", "long"]],
|
||||
"glRectiv" => ["void", ["ptr", "ptr"]],
|
||||
"glRects" => ["void", ["long", "long", "long", "long"]],
|
||||
"glRectsv" => ["void", ["ptr", "ptr"]],
|
||||
"glRenderMode" => ["long", ["long"]],
|
||||
"glResetHistogram" => ["void", ["long"]],
|
||||
"glResetMinmax" => ["void", ["long"]],
|
||||
"glRotated" => ["void", ["double", "double", "double", "double"]],
|
||||
"glRotatef" => ["void", ["long", "long", "long", "long"]],
|
||||
"glScaled" => ["void", ["double", "double", "double"]],
|
||||
"glScalef" => ["void", ["long", "long", "long"]],
|
||||
"glScissor" => ["void", ["long", "long", "long", "long"]],
|
||||
"glSelectBuffer" => ["void", ["long", "ptr"]],
|
||||
"glSeparableFilter2D" => ["void", ["long", "long", "long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"glShadeModel" => ["void", ["long"]],
|
||||
"glStencilFunc" => ["void", ["long", "long", "long"]],
|
||||
"glStencilMask" => ["void", ["long"]],
|
||||
"glStencilOp" => ["void", ["long", "long", "long"]],
|
||||
"glTexCoord1d" => ["void", ["double"]],
|
||||
"glTexCoord1dv" => ["void", ["ptr"]],
|
||||
"glTexCoord1f" => ["void", ["long"]],
|
||||
"glTexCoord1fv" => ["void", ["ptr"]],
|
||||
"glTexCoord1i" => ["void", ["long"]],
|
||||
"glTexCoord1iv" => ["void", ["ptr"]],
|
||||
"glTexCoord1s" => ["void", ["long"]],
|
||||
"glTexCoord1sv" => ["void", ["ptr"]],
|
||||
"glTexCoord2d" => ["void", ["double", "double"]],
|
||||
"glTexCoord2dv" => ["void", ["ptr"]],
|
||||
"glTexCoord2f" => ["void", ["long", "long"]],
|
||||
"glTexCoord2fv" => ["void", ["ptr"]],
|
||||
"glTexCoord2i" => ["void", ["long", "long"]],
|
||||
"glTexCoord2iv" => ["void", ["ptr"]],
|
||||
"glTexCoord2s" => ["void", ["long", "long"]],
|
||||
"glTexCoord2sv" => ["void", ["ptr"]],
|
||||
"glTexCoord3d" => ["void", ["double", "double", "double"]],
|
||||
"glTexCoord3dv" => ["void", ["ptr"]],
|
||||
"glTexCoord3f" => ["void", ["long", "long", "long"]],
|
||||
"glTexCoord3fv" => ["void", ["ptr"]],
|
||||
"glTexCoord3i" => ["void", ["long", "long", "long"]],
|
||||
"glTexCoord3iv" => ["void", ["ptr"]],
|
||||
"glTexCoord3s" => ["void", ["long", "long", "long"]],
|
||||
"glTexCoord3sv" => ["void", ["ptr"]],
|
||||
"glTexCoord4d" => ["void", ["double", "double", "double", "double"]],
|
||||
"glTexCoord4dv" => ["void", ["ptr"]],
|
||||
"glTexCoord4f" => ["void", ["long", "long", "long", "long"]],
|
||||
"glTexCoord4fv" => ["void", ["ptr"]],
|
||||
"glTexCoord4i" => ["void", ["long", "long", "long", "long"]],
|
||||
"glTexCoord4iv" => ["void", ["ptr"]],
|
||||
"glTexCoord4s" => ["void", ["long", "long", "long", "long"]],
|
||||
"glTexCoord4sv" => ["void", ["ptr"]],
|
||||
"glTexCoordPointer" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glTexEnvf" => ["void", ["long", "long", "long"]],
|
||||
"glTexEnvfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexEnvi" => ["void", ["long", "long", "long"]],
|
||||
"glTexEnviv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexGend" => ["void", ["long", "long", "double"]],
|
||||
"glTexGendv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexGenf" => ["void", ["long", "long", "long"]],
|
||||
"glTexGenfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexGeni" => ["void", ["long", "long", "long"]],
|
||||
"glTexGeniv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexImage1D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glTexImage2D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glTexImage3D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glTexParameterf" => ["void", ["long", "long", "long"]],
|
||||
"glTexParameterfv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexParameteri" => ["void", ["long", "long", "long"]],
|
||||
"glTexParameteriv" => ["void", ["long", "long", "ptr"]],
|
||||
"glTexSubImage1D" => ["void", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glTexSubImage2D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glTexSubImage3D" => ["void", ["long", "long", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"glTranslated" => ["void", ["double", "double", "double"]],
|
||||
"glTranslatef" => ["void", ["long", "long", "long"]],
|
||||
"glVertex2d" => ["void", ["double", "double"]],
|
||||
"glVertex2dv" => ["void", ["ptr"]],
|
||||
"glVertex2f" => ["void", ["long", "long"]],
|
||||
"glVertex2fv" => ["void", ["ptr"]],
|
||||
"glVertex2i" => ["void", ["long", "long"]],
|
||||
"glVertex2iv" => ["void", ["ptr"]],
|
||||
"glVertex2s" => ["void", ["long", "long"]],
|
||||
"glVertex2sv" => ["void", ["ptr"]],
|
||||
"glVertex3d" => ["void", ["double", "double", "double"]],
|
||||
"glVertex3dv" => ["void", ["ptr"]],
|
||||
"glVertex3f" => ["void", ["long", "long", "long"]],
|
||||
"glVertex3fv" => ["void", ["ptr"]],
|
||||
"glVertex3i" => ["void", ["long", "long", "long"]],
|
||||
"glVertex3iv" => ["void", ["ptr"]],
|
||||
"glVertex3s" => ["void", ["long", "long", "long"]],
|
||||
"glVertex3sv" => ["void", ["ptr"]],
|
||||
"glVertex4d" => ["void", ["double", "double", "double", "double"]],
|
||||
"glVertex4dv" => ["void", ["ptr"]],
|
||||
"glVertex4f" => ["void", ["long", "long", "long", "long"]],
|
||||
"glVertex4fv" => ["void", ["ptr"]],
|
||||
"glVertex4i" => ["void", ["long", "long", "long", "long"]],
|
||||
"glVertex4iv" => ["void", ["ptr"]],
|
||||
"glVertex4s" => ["void", ["long", "long", "long", "long"]],
|
||||
"glVertex4sv" => ["void", ["ptr"]],
|
||||
"glVertexPointer" => ["void", ["long", "long", "long", "ptr"]],
|
||||
"glViewport" => ["void", ["long", "long", "long", "long"]],
|
||||
"wglCopyContext" => ["long", ["long", "long", "long"]],
|
||||
"wglCreateContext" => ["long", ["long"]],
|
||||
"wglCreateLayerContext" => ["long", ["long", "long"]],
|
||||
"wglDeleteContext" => ["long", ["long"]],
|
||||
"wglDescribeLayerPlane" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"wglGetCurrentContext" => ["long", []],
|
||||
"wglGetCurrentDC" => ["long", []],
|
||||
"wglGetLayerPaletteEntries" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"wglGetProcAddress" => ["ptr", ["str"]],
|
||||
"wglMakeCurrent" => ["long", ["long", "long"]],
|
||||
"wglRealizeLayerPalette" => ["long", ["long", "long", "long"]],
|
||||
"wglSetLayerPaletteEntries" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"wglShareLists" => ["long", ["long", "long"]],
|
||||
"wglSwapLayerBuffers" => ["long", ["long", "long"]],
|
||||
"wglUseFontBitmapsA" => ["long", ["long", "long", "long", "long"]],
|
||||
"wglUseFontOutlinesA" => ["long", ["long", "long", "long", "long", "long", "long", "long", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("opengl32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,38 +0,0 @@
|
|||
package psapi;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"QueryWorkingSet" => ["long", ["long", "ptr", "long"]],
|
||||
"EmptyWorkingSet" => ["long", ["long"]],
|
||||
"EnumDeviceDrivers" => ["long", ["ptr", "long", "ptr"]],
|
||||
"EnumProcessModules" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"EnumProcesses" => ["long", ["ptr", "long", "ptr"]],
|
||||
"GetDeviceDriverBaseNameA" => ["long", ["ptr", "str", "long"]],
|
||||
"GetDeviceDriverBaseNameW" => ["long", ["ptr", "wstr", "long"]],
|
||||
"GetDeviceDriverFileNameA" => ["long", ["ptr", "str", "long"]],
|
||||
"GetDeviceDriverFileNameW" => ["long", ["ptr", "wstr", "long"]],
|
||||
"GetMappedFileNameA" => ["long", ["long", "ptr", "str", "long"]],
|
||||
"GetMappedFileNameW" => ["long", ["long", "ptr", "wstr", "long"]],
|
||||
"GetModuleBaseNameA" => ["long", ["long", "long", "str", "long"]],
|
||||
"GetModuleBaseNameW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"GetModuleFileNameExA" => ["long", ["long", "long", "str", "long"]],
|
||||
"GetModuleFileNameExW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"GetModuleInformation" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"GetProcessMemoryInfo" => ["long", ["long", "ptr", "long"]],
|
||||
"GetWsChanges" => ["long", ["long", "ptr", "long"]],
|
||||
"InitializeProcessForWsWatch" => ["long", ["long"]]
|
||||
};
|
||||
|
||||
&wine::declare("psapi",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,27 +0,0 @@
|
|||
package quartz;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"AMGetErrorTextA" => ["long", ["long", "str", "long"]],
|
||||
"AMGetErrorTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"AmpFactorToDB" => ["long", ["long"]],
|
||||
"DBToAmpFactor" => ["long", ["long"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllRegisterServer" => ["long", []],
|
||||
"DllUnregisterServer" => ["long", []]
|
||||
};
|
||||
|
||||
&wine::declare("quartz",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,41 +0,0 @@
|
|||
package rasapi32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"RasDeleteEntryA" => ["long", ["str", "str"]],
|
||||
"RasDeleteEntryW" => ["long", ["wstr", "wstr"]],
|
||||
"RasEnumAutodialAddressesA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RasEnumAutodialAddressesW" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RasEnumDevicesA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RasEnumDevicesW" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RasGetAutodialAddressA" => ["long", ["str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RasGetAutodialAddressW" => ["long", ["wstr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"RasGetAutodialEnableA" => ["long", ["long", "ptr"]],
|
||||
"RasGetAutodialEnableW" => ["long", ["long", "ptr"]],
|
||||
"RasGetAutodialParamA" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RasGetAutodialParamW" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RasSetAutodialAddressA" => ["long", ["str", "long", "ptr", "long", "long"]],
|
||||
"RasSetAutodialAddressW" => ["long", ["wstr", "long", "ptr", "long", "long"]],
|
||||
"RasSetAutodialEnableA" => ["long", ["long", "long"]],
|
||||
"RasSetAutodialEnableW" => ["long", ["long", "long"]],
|
||||
"RasSetAutodialParamA" => ["long", ["long", "ptr", "long"]],
|
||||
"RasSetAutodialParamW" => ["long", ["long", "ptr", "long"]],
|
||||
"RasEnumConnectionsA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"RasEnumEntriesA" => ["long", ["str", "str", "ptr", "ptr", "ptr"]],
|
||||
"RasGetEntryDialParamsA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"RasHangUpA" => ["long", ["long"]]
|
||||
};
|
||||
|
||||
&wine::declare("rasapi32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package riched32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllGetVersion" => ["long", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("riched32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,45 +0,0 @@
|
|||
package rpcrt4;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllRegisterServer" => ["long", []],
|
||||
"NdrDllCanUnloadNow" => ["long", ["ptr"]],
|
||||
"NdrDllGetClassObject" => ["long", ["ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"NdrDllRegisterProxy" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RpcBindingFree" => ["long", ["ptr"]],
|
||||
"RpcBindingFromStringBindingA" => ["long", ["str", "ptr"]],
|
||||
"RpcBindingFromStringBindingW" => ["long", ["wstr", "ptr"]],
|
||||
"RpcServerListen" => ["long", ["long", "long", "long"]],
|
||||
"RpcServerRegisterAuthInfoA" => ["long", ["str", "long", "ptr", "ptr"]],
|
||||
"RpcServerRegisterAuthInfoW" => ["long", ["wstr", "long", "ptr", "ptr"]],
|
||||
"RpcServerRegisterIf" => ["long", ["long", "ptr", "ptr"]],
|
||||
"RpcServerRegisterIf2" => ["long", ["long", "ptr", "ptr", "long", "long", "long", "ptr"]],
|
||||
"RpcServerRegisterIfEx" => ["long", ["long", "ptr", "ptr", "long", "long", "ptr"]],
|
||||
"RpcServerUseProtseqEpA" => ["long", ["str", "long", "str", "ptr"]],
|
||||
"RpcServerUseProtseqEpExA" => ["long", ["str", "long", "str", "ptr", "ptr"]],
|
||||
"RpcServerUseProtseqEpExW" => ["long", ["wstr", "long", "wstr", "ptr", "ptr"]],
|
||||
"RpcServerUseProtseqEpW" => ["long", ["wstr", "long", "wstr", "ptr"]],
|
||||
"RpcStringBindingComposeA" => ["long", ["str", "str", "str", "str", "str", "ptr"]],
|
||||
"RpcStringBindingComposeW" => ["long", ["wstr", "wstr", "wstr", "wstr", "wstr", "ptr"]],
|
||||
"RpcStringFreeA" => ["long", ["ptr"]],
|
||||
"UuidCreate" => ["long", ["ptr"]],
|
||||
"UuidCreateSequential" => ["long", ["ptr"]],
|
||||
"UuidFromStringA" => ["long", ["str", "ptr"]],
|
||||
"UuidFromStringW" => ["long", ["wstr", "ptr"]],
|
||||
"UuidHash" => ["long", ["ptr", "ptr"]],
|
||||
"UuidToStringA" => ["long", ["ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("rpcrt4",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,23 +0,0 @@
|
|||
package serialui;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"EnumPropPages" => ["long", ["ptr", "ptr", "long"]],
|
||||
"drvCommConfigDialog" => ["long", ["str", "long", "ptr"]],
|
||||
"drvSetDefaultCommConfig" => ["long", ["str", "ptr", "long"]],
|
||||
"drvGetDefaultCommConfig" => ["long", ["str", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("serialui",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,87 +0,0 @@
|
|||
package setupapi;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"SetupCloseFileQueue" => ["long", ["long"]],
|
||||
"SetupCloseInfFile" => ["void", ["long"]],
|
||||
"SetupCommitFileQueueA" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"SetupCommitFileQueueW" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"SetupDefaultQueueCallbackA" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"SetupDefaultQueueCallbackW" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"SetupDiDestroyDeviceInfoList" => ["long", ["long"]],
|
||||
"SetupDiEnumDeviceInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"SetupDiEnumDeviceInterfaces" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SetupDiGetClassDevsA" => ["long", ["ptr", "str", "long", "long"]],
|
||||
"SetupDiGetDeviceInterfaceDetailA" => ["long", ["long", "ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"SetupDiGetDeviceInterfaceDetailW" => ["long", ["long", "ptr", "ptr", "long", "ptr", "ptr"]],
|
||||
"SetupDiGetDeviceRegistryPropertyA" => ["long", ["long", "ptr", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SetupFindFirstLineA" => ["long", ["long", "str", "str", "ptr"]],
|
||||
"SetupFindFirstLineW" => ["long", ["long", "str", "str", "ptr"]],
|
||||
"SetupFindNextLine" => ["long", ["ptr", "ptr"]],
|
||||
"SetupFindNextMatchLineA" => ["long", ["ptr", "str", "ptr"]],
|
||||
"SetupFindNextMatchLineW" => ["long", ["ptr", "str", "ptr"]],
|
||||
"SetupGetBinaryField" => ["long", ["ptr", "long", "ptr", "long", "ptr"]],
|
||||
"SetupGetFieldCount" => ["long", ["ptr"]],
|
||||
"SetupGetFileQueueCount" => ["long", ["long", "long", "ptr"]],
|
||||
"SetupGetFileQueueFlags" => ["long", ["long", "ptr"]],
|
||||
"SetupGetIntField" => ["long", ["ptr", "long", "ptr"]],
|
||||
"SetupGetLineByIndexA" => ["long", ["long", "str", "long", "ptr"]],
|
||||
"SetupGetLineByIndexW" => ["long", ["long", "str", "long", "ptr"]],
|
||||
"SetupGetLineCountA" => ["long", ["long", "str"]],
|
||||
"SetupGetLineCountW" => ["long", ["long", "str"]],
|
||||
"SetupGetLineTextA" => ["long", ["ptr", "long", "str", "str", "ptr", "long", "ptr"]],
|
||||
"SetupGetLineTextW" => ["long", ["ptr", "long", "str", "str", "str", "long", "ptr"]],
|
||||
"SetupGetMultiSzFieldA" => ["long", ["ptr", "long", "ptr", "long", "ptr"]],
|
||||
"SetupGetMultiSzFieldW" => ["long", ["ptr", "long", "str", "long", "ptr"]],
|
||||
"SetupGetStringFieldA" => ["long", ["ptr", "long", "ptr", "long", "ptr"]],
|
||||
"SetupGetStringFieldW" => ["long", ["ptr", "long", "str", "long", "ptr"]],
|
||||
"SetupInitDefaultQueueCallback" => ["ptr", ["long"]],
|
||||
"SetupInitDefaultQueueCallbackEx" => ["ptr", ["long", "long", "long", "long", "ptr"]],
|
||||
"SetupInstallFilesFromInfSectionA" => ["long", ["long", "long", "long", "str", "str", "long"]],
|
||||
"SetupInstallFilesFromInfSectionW" => ["long", ["long", "long", "long", "str", "str", "long"]],
|
||||
"SetupInstallFromInfSectionA" => ["long", ["long", "long", "str", "long", "long", "str", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SetupInstallFromInfSectionW" => ["long", ["long", "long", "str", "long", "long", "str", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SetupIterateCabinetA" => ["long", ["str", "long", "ptr", "ptr"]],
|
||||
"SetupIterateCabinetW" => ["long", ["str", "long", "ptr", "ptr"]],
|
||||
"SetupOpenAppendInfFileA" => ["long", ["str", "long", "ptr"]],
|
||||
"SetupOpenAppendInfFileW" => ["long", ["str", "long", "ptr"]],
|
||||
"SetupOpenFileQueue" => ["long", []],
|
||||
"SetupOpenInfFileA" => ["long", ["str", "str", "long", "ptr"]],
|
||||
"SetupOpenInfFileW" => ["long", ["str", "str", "long", "ptr"]],
|
||||
"SetupQueueCopyA" => ["long", ["long", "str", "str", "str", "str", "str", "str", "str", "long"]],
|
||||
"SetupQueueCopyIndirectA" => ["long", ["ptr"]],
|
||||
"SetupQueueCopyIndirectW" => ["long", ["ptr"]],
|
||||
"SetupQueueCopySectionA" => ["long", ["long", "str", "long", "long", "str", "long"]],
|
||||
"SetupQueueCopySectionW" => ["long", ["long", "str", "long", "long", "str", "long"]],
|
||||
"SetupQueueCopyW" => ["long", ["long", "str", "str", "str", "str", "str", "str", "str", "long"]],
|
||||
"SetupQueueDefaultCopyA" => ["long", ["long", "long", "str", "str", "str", "long"]],
|
||||
"SetupQueueDefaultCopyW" => ["long", ["long", "long", "str", "str", "str", "long"]],
|
||||
"SetupQueueDeleteA" => ["long", ["long", "str", "str"]],
|
||||
"SetupQueueDeleteSectionA" => ["long", ["long", "long", "long", "str"]],
|
||||
"SetupQueueDeleteSectionW" => ["long", ["long", "long", "long", "str"]],
|
||||
"SetupQueueDeleteW" => ["long", ["long", "str", "str"]],
|
||||
"SetupQueueRenameA" => ["long", ["long", "str", "str", "str", "str"]],
|
||||
"SetupQueueRenameSectionA" => ["long", ["long", "long", "long", "str"]],
|
||||
"SetupQueueRenameSectionW" => ["long", ["long", "long", "long", "str"]],
|
||||
"SetupQueueRenameW" => ["long", ["long", "str", "str", "str", "str"]],
|
||||
"SetupScanFileQueueA" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"SetupScanFileQueueW" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr"]],
|
||||
"SetupSetDirectoryIdA" => ["long", ["long", "long", "str"]],
|
||||
"SetupSetDirectoryIdW" => ["long", ["long", "long", "str"]],
|
||||
"SetupSetFileQueueFlags" => ["long", ["long", "long", "long"]],
|
||||
"SetupTermDefaultQueueCallback" => ["void", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("setupapi",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,561 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file setupapi.h
|
||||
#
|
||||
|
||||
|
||||
package setupapi_h;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
DIF_ADDPROPERTYPAGE_ADVANCED
|
||||
DIF_ADDPROPERTYPAGE_BASIC
|
||||
DIF_ADDREMOTEPROPERTYPAGE_ADVANCED
|
||||
DIF_ALLOW_INSTALL
|
||||
DIF_ASSIGNRESOURCES
|
||||
DIF_CALCDISKSPACE
|
||||
DIF_DESTROYPRIVATEDATA
|
||||
DIF_DESTROYWIZARDDATA
|
||||
DIF_DETECT
|
||||
DIF_DETECTCANCEL
|
||||
DIF_DETECTVERIFY
|
||||
DIF_ENABLECLASS
|
||||
DIF_FIRSTTIMESETUP
|
||||
DIF_FOUNDDEVICE
|
||||
DIF_INSTALLCLASSDRIVERS
|
||||
DIF_INSTALLDEVICE
|
||||
DIF_INSTALLDEVICEFILES
|
||||
DIF_INSTALLINTERFACES
|
||||
DIF_INSTALLWIZARD
|
||||
DIF_MOVEDEVICE
|
||||
DIF_NEWDEVICEWIZARD_FINISHINSTALL
|
||||
DIF_NEWDEVICEWIZARD_POSTANALYZE
|
||||
DIF_NEWDEVICEWIZARD_PREANALYZE
|
||||
DIF_NEWDEVICEWIZARD_PRESELECT
|
||||
DIF_NEWDEVICEWIZARD_SELECT
|
||||
DIF_POWERMESSAGEWAKE
|
||||
DIF_PROPERTIES
|
||||
DIF_PROPERTYCHANGE
|
||||
DIF_REGISTERDEVICE
|
||||
DIF_REGISTER_COINSTALLERS
|
||||
DIF_REMOVE
|
||||
DIF_RESERVED1
|
||||
DIF_RESERVED2
|
||||
DIF_SELECTBESTCOMPATDRV
|
||||
DIF_SELECTCLASSDRIVERS
|
||||
DIF_SELECTDEVICE
|
||||
DIF_TROUBLESHOOTER
|
||||
DIF_UNREMOVE
|
||||
DIF_UNUSED1
|
||||
DIF_UPDATEDRIVER_UI
|
||||
DIF_VALIDATECLASSDRIVERS
|
||||
DIF_VALIDATEDRIVER
|
||||
DIRID_ABSOLUTE
|
||||
DIRID_ABSOLUTE_16BIT
|
||||
DIRID_APPS
|
||||
DIRID_BOOT
|
||||
DIRID_COLOR
|
||||
DIRID_COMMON_APPDATA
|
||||
DIRID_COMMON_DESKTOPDIRECTORY
|
||||
DIRID_COMMON_DOCUMENTS
|
||||
DIRID_COMMON_FAVORITES
|
||||
DIRID_COMMON_PROGRAMS
|
||||
DIRID_COMMON_STARTMENU
|
||||
DIRID_COMMON_STARTUP
|
||||
DIRID_COMMON_TEMPLATES
|
||||
DIRID_DEFAULT
|
||||
DIRID_DRIVERS
|
||||
DIRID_FONTS
|
||||
DIRID_HELP
|
||||
DIRID_INF
|
||||
DIRID_IOSUBSYS
|
||||
DIRID_LOADER
|
||||
DIRID_NULL
|
||||
DIRID_PRINTPROCESSOR
|
||||
DIRID_PROGRAM_FILES
|
||||
DIRID_PROGRAM_FILES_COMMON
|
||||
DIRID_PROGRAM_FILES_COMMONX86
|
||||
DIRID_PROGRAM_FILES_X86
|
||||
DIRID_SHARED
|
||||
DIRID_SPOOL
|
||||
DIRID_SPOOLDRIVERS
|
||||
DIRID_SRCPATH
|
||||
DIRID_SYSTEM
|
||||
DIRID_SYSTEM16
|
||||
DIRID_SYSTEM_X86
|
||||
DIRID_USER
|
||||
DIRID_USERPROFILE
|
||||
DIRID_VIEWERS
|
||||
DIRID_WINDOWS
|
||||
ERROR_BAD_INTERFACE_INSTALLSECT
|
||||
ERROR_BAD_SECTION_NAME_LINE
|
||||
ERROR_BAD_SERVICE_INSTALLSECT
|
||||
ERROR_CANT_LOAD_CLASS_ICON
|
||||
ERROR_CANT_REMOVE_DEVINST
|
||||
ERROR_CLASS_MISMATCH
|
||||
ERROR_DEVICE_INTERFACE_ACTIVE
|
||||
ERROR_DEVICE_INTERFACE_REMOVED
|
||||
ERROR_DEVINFO_DATA_LOCKED
|
||||
ERROR_DEVINFO_LIST_LOCKED
|
||||
ERROR_DEVINFO_NOT_REGISTERED
|
||||
ERROR_DEVINSTALL_QUEUE_NONNATIVE
|
||||
ERROR_DEVINST_ALREADY_EXISTS
|
||||
ERROR_DI_BAD_PATH
|
||||
ERROR_DI_DONT_INSTALL
|
||||
ERROR_DI_DO_DEFAULT
|
||||
ERROR_DI_NOFILECOPY
|
||||
ERROR_DI_POSTPROCESSING_REQUIRED
|
||||
ERROR_DRIVER_NONNATIVE
|
||||
ERROR_DUPLICATE_FOUND
|
||||
ERROR_EXPECTED_SECTION_NAME
|
||||
ERROR_FILEQUEUE_LOCKED
|
||||
ERROR_GENERAL_SYNTAX
|
||||
ERROR_INCORRECTLY_COPIED_INF
|
||||
ERROR_INTERFACE_DEVICE_ACTIVE
|
||||
ERROR_INTERFACE_DEVICE_REMOVED
|
||||
ERROR_INVALID_CLASS
|
||||
ERROR_INVALID_CLASS_INSTALLER
|
||||
ERROR_INVALID_COINSTALLER
|
||||
ERROR_INVALID_DEVINST_NAME
|
||||
ERROR_INVALID_FILTER_DRIVER
|
||||
ERROR_INVALID_HWPROFILE
|
||||
ERROR_INVALID_INF_LOGCONFIG
|
||||
ERROR_INVALID_MACHINENAME
|
||||
ERROR_INVALID_PROPPAGE_PROVIDER
|
||||
ERROR_INVALID_REFERENCE_STRING
|
||||
ERROR_INVALID_REG_PROPERTY
|
||||
ERROR_INVALID_TARGET
|
||||
ERROR_IN_WOW64
|
||||
ERROR_KEY_DOES_NOT_EXIST
|
||||
ERROR_LINE_NOT_FOUND
|
||||
ERROR_MACHINE_UNAVAILABLE
|
||||
ERROR_NON_WINDOWS_DRIVER
|
||||
ERROR_NON_WINDOWS_NT_DRIVER
|
||||
ERROR_NOT_DISABLEABLE
|
||||
ERROR_NOT_INSTALLED
|
||||
ERROR_NO_ASSOCIATED_CLASS
|
||||
ERROR_NO_ASSOCIATED_SERVICE
|
||||
ERROR_NO_BACKUP
|
||||
ERROR_NO_CATALOG_FOR_OEM_INF
|
||||
ERROR_NO_CLASSINSTALL_PARAMS
|
||||
ERROR_NO_CLASS_DRIVER_LIST
|
||||
ERROR_NO_COMPAT_DRIVERS
|
||||
ERROR_NO_CONFIGMGR_SERVICES
|
||||
ERROR_NO_DEFAULT_DEVICE_INTERFACE
|
||||
ERROR_NO_DEFAULT_INTERFACE_DEVICE
|
||||
ERROR_NO_DEVICE_ICON
|
||||
ERROR_NO_DEVICE_SELECTED
|
||||
ERROR_NO_DRIVER_SELECTED
|
||||
ERROR_NO_INF
|
||||
ERROR_NO_SUCH_DEVICE_INTERFACE
|
||||
ERROR_NO_SUCH_DEVINST
|
||||
ERROR_NO_SUCH_INTERFACE_CLASS
|
||||
ERROR_NO_SUCH_INTERFACE_DEVICE
|
||||
ERROR_REMOTE_COMM_FAILURE
|
||||
ERROR_SCE_DISABLED
|
||||
ERROR_SECTION_NAME_TOO_LONG
|
||||
ERROR_SECTION_NOT_FOUND
|
||||
ERROR_SET_SYSTEM_RESTORE_POINT
|
||||
ERROR_WRONG_INF_STYLE
|
||||
FILEOP_ABORT
|
||||
FILEOP_BACKUP
|
||||
FILEOP_COPY
|
||||
FILEOP_DELETE
|
||||
FILEOP_DOIT
|
||||
FILEOP_NEWPATH
|
||||
FILEOP_RENAME
|
||||
FILEOP_RETRY
|
||||
FILEOP_SKIP
|
||||
FLG_ADDREG_32BITKEY
|
||||
FLG_ADDREG_64BITKEY
|
||||
FLG_ADDREG_APPEND
|
||||
FLG_ADDREG_BINVALUETYPE
|
||||
FLG_ADDREG_DELREG_BIT
|
||||
FLG_ADDREG_DELVAL
|
||||
FLG_ADDREG_KEYONLY
|
||||
FLG_ADDREG_KEYONLY_COMMON
|
||||
FLG_ADDREG_NOCLOBBER
|
||||
FLG_ADDREG_OVERWRITEONLY
|
||||
FLG_ADDREG_TYPE_BINARY
|
||||
FLG_ADDREG_TYPE_DWORD
|
||||
FLG_ADDREG_TYPE_EXPAND_SZ
|
||||
FLG_ADDREG_TYPE_MASK
|
||||
FLG_ADDREG_TYPE_MULTI_SZ
|
||||
FLG_ADDREG_TYPE_NONE
|
||||
FLG_ADDREG_TYPE_SZ
|
||||
FLG_DELREG_32BITKEY
|
||||
FLG_DELREG_64BITKEY
|
||||
FLG_DELREG_KEYONLY_COMMON
|
||||
FLG_DELREG_MULTI_SZ_DELSTRING
|
||||
FLG_DELREG_OPERATION_MASK
|
||||
FLG_DELREG_TYPE_BINARY
|
||||
FLG_DELREG_TYPE_DWORD
|
||||
FLG_DELREG_TYPE_EXPAND_SZ
|
||||
FLG_DELREG_TYPE_MASK
|
||||
FLG_DELREG_TYPE_MULTI_SZ
|
||||
FLG_DELREG_TYPE_NONE
|
||||
FLG_DELREG_TYPE_SZ
|
||||
FLG_DELREG_VALUE
|
||||
INF_STYLE_CACHE_DISABLE
|
||||
INF_STYLE_CACHE_ENABLE
|
||||
INF_STYLE_NONE
|
||||
INF_STYLE_OLDNT
|
||||
INF_STYLE_WIN4
|
||||
LINE_LEN
|
||||
MAX_INF_STRING_LENGTH
|
||||
MAX_INSTRUCTION_LEN
|
||||
MAX_LABEL_LEN
|
||||
MAX_SERVICE_NAME_LEN
|
||||
MAX_SUBTITLE_LEN
|
||||
MAX_TITLE_LEN
|
||||
SPFILENOTIFY_BACKUPERROR
|
||||
SPFILENOTIFY_CABINETINFO
|
||||
SPFILENOTIFY_COPYERROR
|
||||
SPFILENOTIFY_DELETEERROR
|
||||
SPFILENOTIFY_ENDBACKUP
|
||||
SPFILENOTIFY_ENDCOPY
|
||||
SPFILENOTIFY_ENDDELETE
|
||||
SPFILENOTIFY_ENDQUEUE
|
||||
SPFILENOTIFY_ENDREGISTRATION
|
||||
SPFILENOTIFY_ENDRENAME
|
||||
SPFILENOTIFY_ENDSUBQUEUE
|
||||
SPFILENOTIFY_FILEEXTRACTED
|
||||
SPFILENOTIFY_FILEINCABINET
|
||||
SPFILENOTIFY_FILEOPDELAYED
|
||||
SPFILENOTIFY_LANGMISMATCH
|
||||
SPFILENOTIFY_NEEDMEDIA
|
||||
SPFILENOTIFY_NEEDNEWCABINET
|
||||
SPFILENOTIFY_QUEUESCAN
|
||||
SPFILENOTIFY_QUEUESCAN_EX
|
||||
SPFILENOTIFY_QUEUESCAN_SIGNERINFO
|
||||
SPFILENOTIFY_RENAMEERROR
|
||||
SPFILENOTIFY_STARTBACKUP
|
||||
SPFILENOTIFY_STARTCOPY
|
||||
SPFILENOTIFY_STARTDELETE
|
||||
SPFILENOTIFY_STARTQUEUE
|
||||
SPFILENOTIFY_STARTREGISTRATION
|
||||
SPFILENOTIFY_STARTRENAME
|
||||
SPFILENOTIFY_STARTSUBQUEUE
|
||||
SPFILENOTIFY_TARGETEXISTS
|
||||
SPFILENOTIFY_TARGETNEWER
|
||||
SPINST_ALL
|
||||
SPINST_BITREG
|
||||
SPINST_COPYINF
|
||||
SPINST_FILES
|
||||
SPINST_INI2REG
|
||||
SPINST_INIFILES
|
||||
SPINST_LOGCONFIG
|
||||
SPINST_LOGCONFIGS_ARE_OVERRIDES
|
||||
SPINST_LOGCONFIG_IS_FORCED
|
||||
SPINST_PROFILEITEMS
|
||||
SPINST_REGISTERCALLBACKAWARE
|
||||
SPINST_REGISTRY
|
||||
SPINST_REGSVR
|
||||
SPINST_SINGLESECTION
|
||||
SPINST_UNREGSVR
|
||||
SP_ALTPLATFORM_FLAGS_VERSION_RANGE
|
||||
SP_COPY_DELETESOURCE
|
||||
SP_COPY_FORCE_IN_USE
|
||||
SP_COPY_FORCE_NEWER
|
||||
SP_COPY_FORCE_NOOVERWRITE
|
||||
SP_COPY_IN_USE_NEEDS_REBOOT
|
||||
SP_COPY_LANGUAGEAWARE
|
||||
SP_COPY_NEWER
|
||||
SP_COPY_NEWER_ONLY
|
||||
SP_COPY_NEWER_OR_SAME
|
||||
SP_COPY_NOBROWSE
|
||||
SP_COPY_NODECOMP
|
||||
SP_COPY_NOOVERWRITE
|
||||
SP_COPY_NOPRUNE
|
||||
SP_COPY_NOSKIP
|
||||
SP_COPY_OEMINF_CATALOG_ONLY
|
||||
SP_COPY_OEM_F6_INF
|
||||
SP_COPY_REPLACEONLY
|
||||
SP_COPY_REPLACE_BOOT_FILE
|
||||
SP_COPY_SOURCEPATH_ABSOLUTE
|
||||
SP_COPY_SOURCE_ABSOLUTE
|
||||
SP_COPY_SOURCE_SIS_MASTER
|
||||
SP_COPY_WARNIFSKIP
|
||||
SP_FLAG_CABINETCONTINUATION
|
||||
SP_MAX_MACHINENAME_LENGTH
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant DIF_ADDPROPERTYPAGE_ADVANCED => 35;
|
||||
use constant DIF_ADDPROPERTYPAGE_BASIC => 36;
|
||||
use constant DIF_ADDREMOTEPROPERTYPAGE_ADVANCED => 40;
|
||||
use constant DIF_ALLOW_INSTALL => 24;
|
||||
use constant DIF_ASSIGNRESOURCES => 3;
|
||||
use constant DIF_CALCDISKSPACE => 11;
|
||||
use constant DIF_DESTROYPRIVATEDATA => 12;
|
||||
use constant DIF_DESTROYWIZARDDATA => 17;
|
||||
use constant DIF_DETECT => 15;
|
||||
use constant DIF_DETECTCANCEL => 33;
|
||||
use constant DIF_DETECTVERIFY => 20;
|
||||
use constant DIF_ENABLECLASS => 19;
|
||||
use constant DIF_FIRSTTIMESETUP => 6;
|
||||
use constant DIF_FOUNDDEVICE => 7;
|
||||
use constant DIF_INSTALLCLASSDRIVERS => 10;
|
||||
use constant DIF_INSTALLDEVICE => 2;
|
||||
use constant DIF_INSTALLDEVICEFILES => 21;
|
||||
use constant DIF_INSTALLINTERFACES => 32;
|
||||
use constant DIF_INSTALLWIZARD => 16;
|
||||
use constant DIF_MOVEDEVICE => 14;
|
||||
use constant DIF_NEWDEVICEWIZARD_FINISHINSTALL => 30;
|
||||
use constant DIF_NEWDEVICEWIZARD_POSTANALYZE => 29;
|
||||
use constant DIF_NEWDEVICEWIZARD_PREANALYZE => 28;
|
||||
use constant DIF_NEWDEVICEWIZARD_PRESELECT => 26;
|
||||
use constant DIF_NEWDEVICEWIZARD_SELECT => 27;
|
||||
use constant DIF_POWERMESSAGEWAKE => 39;
|
||||
use constant DIF_PROPERTIES => 4;
|
||||
use constant DIF_PROPERTYCHANGE => 18;
|
||||
use constant DIF_REGISTERDEVICE => 25;
|
||||
use constant DIF_REGISTER_COINSTALLERS => 34;
|
||||
use constant DIF_REMOVE => 5;
|
||||
use constant DIF_RESERVED1 => 37;
|
||||
use constant DIF_RESERVED2 => 48;
|
||||
use constant DIF_SELECTBESTCOMPATDRV => 23;
|
||||
use constant DIF_SELECTCLASSDRIVERS => 8;
|
||||
use constant DIF_SELECTDEVICE => 1;
|
||||
use constant DIF_TROUBLESHOOTER => 38;
|
||||
use constant DIF_UNREMOVE => 22;
|
||||
use constant DIF_UNUSED1 => 31;
|
||||
use constant DIF_UPDATEDRIVER_UI => 41;
|
||||
use constant DIF_VALIDATECLASSDRIVERS => 9;
|
||||
use constant DIF_VALIDATEDRIVER => 13;
|
||||
use constant DIRID_ABSOLUTE => -1;
|
||||
use constant DIRID_ABSOLUTE_16BIT => 65535;
|
||||
use constant DIRID_APPS => 24;
|
||||
use constant DIRID_BOOT => 30;
|
||||
use constant DIRID_COLOR => 23;
|
||||
use constant DIRID_COMMON_APPDATA => 16419;
|
||||
use constant DIRID_COMMON_DESKTOPDIRECTORY => 16409;
|
||||
use constant DIRID_COMMON_DOCUMENTS => 16430;
|
||||
use constant DIRID_COMMON_FAVORITES => 16415;
|
||||
use constant DIRID_COMMON_PROGRAMS => 16407;
|
||||
use constant DIRID_COMMON_STARTMENU => 16406;
|
||||
use constant DIRID_COMMON_STARTUP => 16408;
|
||||
use constant DIRID_COMMON_TEMPLATES => 16429;
|
||||
use constant DIRID_DEFAULT => 11;
|
||||
use constant DIRID_DRIVERS => 12;
|
||||
use constant DIRID_FONTS => 20;
|
||||
use constant DIRID_HELP => 18;
|
||||
use constant DIRID_INF => 17;
|
||||
use constant DIRID_IOSUBSYS => 12;
|
||||
use constant DIRID_LOADER => 54;
|
||||
use constant DIRID_NULL => 0;
|
||||
use constant DIRID_PRINTPROCESSOR => 55;
|
||||
use constant DIRID_PROGRAM_FILES => 16422;
|
||||
use constant DIRID_PROGRAM_FILES_COMMON => 16427;
|
||||
use constant DIRID_PROGRAM_FILES_COMMONX86 => 16428;
|
||||
use constant DIRID_PROGRAM_FILES_X86 => 16426;
|
||||
use constant DIRID_SHARED => 25;
|
||||
use constant DIRID_SPOOL => 51;
|
||||
use constant DIRID_SPOOLDRIVERS => 52;
|
||||
use constant DIRID_SRCPATH => 1;
|
||||
use constant DIRID_SYSTEM => 11;
|
||||
use constant DIRID_SYSTEM16 => 50;
|
||||
use constant DIRID_SYSTEM_X86 => 16425;
|
||||
use constant DIRID_USER => 32768;
|
||||
use constant DIRID_USERPROFILE => 53;
|
||||
use constant DIRID_VIEWERS => 21;
|
||||
use constant DIRID_WINDOWS => 10;
|
||||
use constant ERROR_BAD_INTERFACE_INSTALLSECT => -536870371;
|
||||
use constant ERROR_BAD_SECTION_NAME_LINE => -536870911;
|
||||
use constant ERROR_BAD_SERVICE_INSTALLSECT => -536870377;
|
||||
use constant ERROR_CANT_LOAD_CLASS_ICON => -536870388;
|
||||
use constant ERROR_CANT_REMOVE_DEVINST => -536870350;
|
||||
use constant ERROR_CLASS_MISMATCH => -536870399;
|
||||
use constant ERROR_DEVICE_INTERFACE_ACTIVE => -536870373;
|
||||
use constant ERROR_DEVICE_INTERFACE_REMOVED => -536870372;
|
||||
use constant ERROR_DEVINFO_DATA_LOCKED => -536870381;
|
||||
use constant ERROR_DEVINFO_LIST_LOCKED => -536870382;
|
||||
use constant ERROR_DEVINFO_NOT_REGISTERED => -536870392;
|
||||
use constant ERROR_DEVINSTALL_QUEUE_NONNATIVE => -536870352;
|
||||
use constant ERROR_DEVINST_ALREADY_EXISTS => -536870393;
|
||||
use constant ERROR_DI_BAD_PATH => -536870380;
|
||||
use constant ERROR_DI_DONT_INSTALL => -536870357;
|
||||
use constant ERROR_DI_DO_DEFAULT => -536870386;
|
||||
use constant ERROR_DI_NOFILECOPY => -536870385;
|
||||
use constant ERROR_DI_POSTPROCESSING_REQUIRED => -536870362;
|
||||
use constant ERROR_DRIVER_NONNATIVE => -536870348;
|
||||
use constant ERROR_DUPLICATE_FOUND => -536870398;
|
||||
use constant ERROR_EXPECTED_SECTION_NAME => -536870912;
|
||||
use constant ERROR_FILEQUEUE_LOCKED => -536870378;
|
||||
use constant ERROR_GENERAL_SYNTAX => -536870909;
|
||||
use constant ERROR_INCORRECTLY_COPIED_INF => -536870345;
|
||||
use constant ERROR_INTERFACE_DEVICE_ACTIVE => -536870373;
|
||||
use constant ERROR_INTERFACE_DEVICE_REMOVED => -536870372;
|
||||
use constant ERROR_INVALID_CLASS => -536870394;
|
||||
use constant ERROR_INVALID_CLASS_INSTALLER => -536870387;
|
||||
use constant ERROR_INVALID_COINSTALLER => -536870361;
|
||||
use constant ERROR_INVALID_DEVINST_NAME => -536870395;
|
||||
use constant ERROR_INVALID_FILTER_DRIVER => -536870356;
|
||||
use constant ERROR_INVALID_HWPROFILE => -536870384;
|
||||
use constant ERROR_INVALID_INF_LOGCONFIG => -536870358;
|
||||
use constant ERROR_INVALID_MACHINENAME => -536870368;
|
||||
use constant ERROR_INVALID_PROPPAGE_PROVIDER => -536870364;
|
||||
use constant ERROR_INVALID_REFERENCE_STRING => -536870369;
|
||||
use constant ERROR_INVALID_REG_PROPERTY => -536870391;
|
||||
use constant ERROR_INVALID_TARGET => -536870349;
|
||||
use constant ERROR_IN_WOW64 => -536870347;
|
||||
use constant ERROR_KEY_DOES_NOT_EXIST => -536870396;
|
||||
use constant ERROR_LINE_NOT_FOUND => -536870654;
|
||||
use constant ERROR_MACHINE_UNAVAILABLE => -536870366;
|
||||
use constant ERROR_NON_WINDOWS_DRIVER => -536870354;
|
||||
use constant ERROR_NON_WINDOWS_NT_DRIVER => -536870355;
|
||||
use constant ERROR_NOT_DISABLEABLE => -536870351;
|
||||
use constant ERROR_NOT_INSTALLED => -536866816;
|
||||
use constant ERROR_NO_ASSOCIATED_CLASS => -536870400;
|
||||
use constant ERROR_NO_ASSOCIATED_SERVICE => -536870375;
|
||||
use constant ERROR_NO_BACKUP => -536870653;
|
||||
use constant ERROR_NO_CATALOG_FOR_OEM_INF => -536870353;
|
||||
use constant ERROR_NO_CLASSINSTALL_PARAMS => -536870379;
|
||||
use constant ERROR_NO_CLASS_DRIVER_LIST => -536870376;
|
||||
use constant ERROR_NO_COMPAT_DRIVERS => -536870360;
|
||||
use constant ERROR_NO_CONFIGMGR_SERVICES => -536870365;
|
||||
use constant ERROR_NO_DEFAULT_DEVICE_INTERFACE => -536870374;
|
||||
use constant ERROR_NO_DEFAULT_INTERFACE_DEVICE => -536870374;
|
||||
use constant ERROR_NO_DEVICE_ICON => -536870359;
|
||||
use constant ERROR_NO_DEVICE_SELECTED => -536870383;
|
||||
use constant ERROR_NO_DRIVER_SELECTED => -536870397;
|
||||
use constant ERROR_NO_INF => -536870390;
|
||||
use constant ERROR_NO_SUCH_DEVICE_INTERFACE => -536870363;
|
||||
use constant ERROR_NO_SUCH_DEVINST => -536870389;
|
||||
use constant ERROR_NO_SUCH_INTERFACE_CLASS => -536870370;
|
||||
use constant ERROR_NO_SUCH_INTERFACE_DEVICE => -536870363;
|
||||
use constant ERROR_REMOTE_COMM_FAILURE => -536870367;
|
||||
use constant ERROR_SCE_DISABLED => -536870344;
|
||||
use constant ERROR_SECTION_NAME_TOO_LONG => -536870910;
|
||||
use constant ERROR_SECTION_NOT_FOUND => -536870655;
|
||||
use constant ERROR_SET_SYSTEM_RESTORE_POINT => -536870346;
|
||||
use constant ERROR_WRONG_INF_STYLE => -536870656;
|
||||
use constant FILEOP_ABORT => 0;
|
||||
use constant FILEOP_BACKUP => 3;
|
||||
use constant FILEOP_COPY => 0;
|
||||
use constant FILEOP_DELETE => 2;
|
||||
use constant FILEOP_DOIT => 1;
|
||||
use constant FILEOP_NEWPATH => 4;
|
||||
use constant FILEOP_RENAME => 1;
|
||||
use constant FILEOP_RETRY => 1;
|
||||
use constant FILEOP_SKIP => 2;
|
||||
use constant FLG_ADDREG_32BITKEY => 16384;
|
||||
use constant FLG_ADDREG_64BITKEY => 4096;
|
||||
use constant FLG_ADDREG_APPEND => 8;
|
||||
use constant FLG_ADDREG_BINVALUETYPE => 1;
|
||||
use constant FLG_ADDREG_DELREG_BIT => 32768;
|
||||
use constant FLG_ADDREG_DELVAL => 4;
|
||||
use constant FLG_ADDREG_KEYONLY => 16;
|
||||
use constant FLG_ADDREG_KEYONLY_COMMON => 8192;
|
||||
use constant FLG_ADDREG_NOCLOBBER => 2;
|
||||
use constant FLG_ADDREG_OVERWRITEONLY => 32;
|
||||
use constant FLG_ADDREG_TYPE_BINARY => 1;
|
||||
use constant FLG_ADDREG_TYPE_DWORD => 65537;
|
||||
use constant FLG_ADDREG_TYPE_EXPAND_SZ => 131072;
|
||||
use constant FLG_ADDREG_TYPE_MASK => -65535;
|
||||
use constant FLG_ADDREG_TYPE_MULTI_SZ => 65536;
|
||||
use constant FLG_ADDREG_TYPE_NONE => 131073;
|
||||
use constant FLG_ADDREG_TYPE_SZ => 0;
|
||||
use constant FLG_DELREG_32BITKEY => 16384;
|
||||
use constant FLG_DELREG_64BITKEY => 4096;
|
||||
use constant FLG_DELREG_KEYONLY_COMMON => 8192;
|
||||
use constant FLG_DELREG_MULTI_SZ_DELSTRING => 98306;
|
||||
use constant FLG_DELREG_OPERATION_MASK => 254;
|
||||
use constant FLG_DELREG_TYPE_BINARY => 1;
|
||||
use constant FLG_DELREG_TYPE_DWORD => 65537;
|
||||
use constant FLG_DELREG_TYPE_EXPAND_SZ => 131072;
|
||||
use constant FLG_DELREG_TYPE_MASK => -65535;
|
||||
use constant FLG_DELREG_TYPE_MULTI_SZ => 65536;
|
||||
use constant FLG_DELREG_TYPE_NONE => 131073;
|
||||
use constant FLG_DELREG_TYPE_SZ => 0;
|
||||
use constant FLG_DELREG_VALUE => 0;
|
||||
use constant INF_STYLE_CACHE_DISABLE => 32;
|
||||
use constant INF_STYLE_CACHE_ENABLE => 16;
|
||||
use constant INF_STYLE_NONE => 0;
|
||||
use constant INF_STYLE_OLDNT => 1;
|
||||
use constant INF_STYLE_WIN4 => 2;
|
||||
use constant LINE_LEN => 256;
|
||||
use constant MAX_INF_STRING_LENGTH => 4096;
|
||||
use constant MAX_INSTRUCTION_LEN => 256;
|
||||
use constant MAX_LABEL_LEN => 30;
|
||||
use constant MAX_SERVICE_NAME_LEN => 256;
|
||||
use constant MAX_SUBTITLE_LEN => 256;
|
||||
use constant MAX_TITLE_LEN => 60;
|
||||
use constant SPFILENOTIFY_BACKUPERROR => 22;
|
||||
use constant SPFILENOTIFY_CABINETINFO => 16;
|
||||
use constant SPFILENOTIFY_COPYERROR => 13;
|
||||
use constant SPFILENOTIFY_DELETEERROR => 7;
|
||||
use constant SPFILENOTIFY_ENDBACKUP => 23;
|
||||
use constant SPFILENOTIFY_ENDCOPY => 12;
|
||||
use constant SPFILENOTIFY_ENDDELETE => 6;
|
||||
use constant SPFILENOTIFY_ENDQUEUE => 2;
|
||||
use constant SPFILENOTIFY_ENDREGISTRATION => 32;
|
||||
use constant SPFILENOTIFY_ENDRENAME => 9;
|
||||
use constant SPFILENOTIFY_ENDSUBQUEUE => 4;
|
||||
use constant SPFILENOTIFY_FILEEXTRACTED => 19;
|
||||
use constant SPFILENOTIFY_FILEINCABINET => 17;
|
||||
use constant SPFILENOTIFY_FILEOPDELAYED => 20;
|
||||
use constant SPFILENOTIFY_LANGMISMATCH => 65536;
|
||||
use constant SPFILENOTIFY_NEEDMEDIA => 14;
|
||||
use constant SPFILENOTIFY_NEEDNEWCABINET => 18;
|
||||
use constant SPFILENOTIFY_QUEUESCAN => 15;
|
||||
use constant SPFILENOTIFY_QUEUESCAN_EX => 24;
|
||||
use constant SPFILENOTIFY_QUEUESCAN_SIGNERINFO => 64;
|
||||
use constant SPFILENOTIFY_RENAMEERROR => 10;
|
||||
use constant SPFILENOTIFY_STARTBACKUP => 21;
|
||||
use constant SPFILENOTIFY_STARTCOPY => 11;
|
||||
use constant SPFILENOTIFY_STARTDELETE => 5;
|
||||
use constant SPFILENOTIFY_STARTQUEUE => 1;
|
||||
use constant SPFILENOTIFY_STARTREGISTRATION => 25;
|
||||
use constant SPFILENOTIFY_STARTRENAME => 8;
|
||||
use constant SPFILENOTIFY_STARTSUBQUEUE => 3;
|
||||
use constant SPFILENOTIFY_TARGETEXISTS => 131072;
|
||||
use constant SPFILENOTIFY_TARGETNEWER => 262144;
|
||||
use constant SPINST_ALL => 1023;
|
||||
use constant SPINST_BITREG => 32;
|
||||
use constant SPINST_COPYINF => 512;
|
||||
use constant SPINST_FILES => 16;
|
||||
use constant SPINST_INI2REG => 8;
|
||||
use constant SPINST_INIFILES => 2;
|
||||
use constant SPINST_LOGCONFIG => 1;
|
||||
use constant SPINST_LOGCONFIGS_ARE_OVERRIDES => 262144;
|
||||
use constant SPINST_LOGCONFIG_IS_FORCED => 131072;
|
||||
use constant SPINST_PROFILEITEMS => 256;
|
||||
use constant SPINST_REGISTERCALLBACKAWARE => 524288;
|
||||
use constant SPINST_REGISTRY => 4;
|
||||
use constant SPINST_REGSVR => 64;
|
||||
use constant SPINST_SINGLESECTION => 65536;
|
||||
use constant SPINST_UNREGSVR => 128;
|
||||
use constant SP_ALTPLATFORM_FLAGS_VERSION_RANGE => 1;
|
||||
use constant SP_COPY_DELETESOURCE => 1;
|
||||
use constant SP_COPY_FORCE_IN_USE => 512;
|
||||
use constant SP_COPY_FORCE_NEWER => 8192;
|
||||
use constant SP_COPY_FORCE_NOOVERWRITE => 4096;
|
||||
use constant SP_COPY_IN_USE_NEEDS_REBOOT => 256;
|
||||
use constant SP_COPY_LANGUAGEAWARE => 32;
|
||||
use constant SP_COPY_NEWER => 4;
|
||||
use constant SP_COPY_NEWER_ONLY => 65536;
|
||||
use constant SP_COPY_NEWER_OR_SAME => 4;
|
||||
use constant SP_COPY_NOBROWSE => 32768;
|
||||
use constant SP_COPY_NODECOMP => 16;
|
||||
use constant SP_COPY_NOOVERWRITE => 8;
|
||||
use constant SP_COPY_NOPRUNE => 1048576;
|
||||
use constant SP_COPY_NOSKIP => 1024;
|
||||
use constant SP_COPY_OEMINF_CATALOG_ONLY => 262144;
|
||||
use constant SP_COPY_OEM_F6_INF => 2097152;
|
||||
use constant SP_COPY_REPLACEONLY => 2;
|
||||
use constant SP_COPY_REPLACE_BOOT_FILE => 524288;
|
||||
use constant SP_COPY_SOURCEPATH_ABSOLUTE => 128;
|
||||
use constant SP_COPY_SOURCE_ABSOLUTE => 64;
|
||||
use constant SP_COPY_SOURCE_SIS_MASTER => 131072;
|
||||
use constant SP_COPY_WARNIFSKIP => 16384;
|
||||
use constant SP_FLAG_CABINETCONTINUATION => 2048;
|
||||
use constant SP_MAX_MACHINENAME_LENGTH => 263;
|
||||
|
||||
1;
|
|
@ -1,25 +0,0 @@
|
|||
package shdocvw;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllGetVersion" => ["long", ["ptr"]],
|
||||
"DllInstall" => ["long", ["long", "wstr"]],
|
||||
"DllRegisterServer" => ["long", ["undef"]],
|
||||
"DllUnregisterServer" => ["long", ["undef"]]
|
||||
};
|
||||
|
||||
&wine::declare("shdocvw",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,251 +0,0 @@
|
|||
package shell32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"SHRegDeleteKeyA" => ["long", ["long", "str"]],
|
||||
"SHChangeNotifyRegister" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"SHChangeNotifyDeregister" => ["long", ["long"]],
|
||||
"SHChangeNotifyUpdateEntryList" => ["long", ["long", "long", "long", "long"]],
|
||||
"ILGetDisplayName" => ["long", ["ptr", "str"]],
|
||||
"ILFindLastID" => ["ptr", ["ptr"]],
|
||||
"ILRemoveLastID" => ["long", ["ptr"]],
|
||||
"ILClone" => ["ptr", ["ptr"]],
|
||||
"ILCloneFirst" => ["ptr", ["ptr"]],
|
||||
"ILGlobalClone" => ["ptr", ["ptr"]],
|
||||
"ILIsEqual" => ["long", ["ptr", "ptr"]],
|
||||
"ILIsParent" => ["long", ["ptr", "ptr", "long"]],
|
||||
"ILFindChild" => ["ptr", ["ptr", "ptr"]],
|
||||
"ILCombine" => ["ptr", ["ptr", "ptr"]],
|
||||
"ILLoadFromStream" => ["long", ["ptr", "ptr"]],
|
||||
"ILSaveToStream" => ["long", ["ptr", "ptr"]],
|
||||
"SHILCreateFromPath" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"PathIsRoot" => ["long", ["ptr"]],
|
||||
"PathBuildRoot" => ["ptr", ["ptr", "long"]],
|
||||
"PathFindExtension" => ["ptr", ["ptr"]],
|
||||
"PathAddBackslash" => ["ptr", ["ptr"]],
|
||||
"PathRemoveBlanks" => ["void", ["ptr"]],
|
||||
"PathFindFileName" => ["ptr", ["ptr"]],
|
||||
"PathRemoveFileSpec" => ["long", ["ptr"]],
|
||||
"PathAppend" => ["long", ["ptr", "ptr"]],
|
||||
"PathCombine" => ["ptr", ["ptr", "ptr", "ptr"]],
|
||||
"PathStripPath" => ["void", ["ptr"]],
|
||||
"PathIsUNC" => ["long", ["ptr"]],
|
||||
"PathIsRelative" => ["long", ["ptr"]],
|
||||
"PathIsExe" => ["long", ["ptr"]],
|
||||
"PathFileExists" => ["long", ["ptr"]],
|
||||
"PathMatchSpec" => ["long", ["ptr", "ptr"]],
|
||||
"PathMakeUniqueName" => ["long", ["ptr", "long", "ptr", "ptr", "ptr"]],
|
||||
"PathSetDlgItemPath" => ["void", ["long", "long", "ptr"]],
|
||||
"PathQualify" => ["long", ["ptr"]],
|
||||
"PathStripToRoot" => ["long", ["ptr"]],
|
||||
"PathResolve" => ["long", ["ptr", "ptr", "long"]],
|
||||
"PathGetArgs" => ["ptr", ["ptr"]],
|
||||
"DoEnvironmentSubst" => ["long", ["ptr", "ptr"]],
|
||||
"DragAcceptFiles" => ["void", ["long", "long"]],
|
||||
"PathQuoteSpaces" => ["void", ["ptr"]],
|
||||
"PathUnquoteSpaces" => ["void", ["ptr"]],
|
||||
"PathGetDriveNumber" => ["long", ["ptr"]],
|
||||
"ParseField" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"ExitWindowsDialog" => ["void", ["long"]],
|
||||
"PickIconDlg" => ["long", ["long", "str", "long", "ptr"]],
|
||||
"GetFileNameFromBrowse" => ["long", ["long", "str", "long", "str", "str", "str", "str"]],
|
||||
"DriveType" => ["long", ["long"]],
|
||||
"IsNetDrive" => ["long", ["long"]],
|
||||
"Shell_MergeMenus" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"SHGetSetSettings" => ["void", ["long", "long", "long"]],
|
||||
"SHCreateDefClassObject" => ["long", ["ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"Shell_GetImageList" => ["long", ["ptr", "ptr"]],
|
||||
"Shell_GetCachedImageIndex" => ["long", ["ptr", "long", "long"]],
|
||||
"SHShellFolderView_Message" => ["long", ["long", "long", "long"]],
|
||||
"PathYetAnotherMakeUniqueName" => ["long", ["str", "str", "str", "str"]],
|
||||
"SHMapPIDLToSystemImageListIndex" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"OleStrToStrN" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"StrToOleStrN" => ["long", ["wstr", "long", "ptr", "long"]],
|
||||
"DragFinish" => ["void", ["long"]],
|
||||
"DragQueryFile" => ["long", ["long", "long", "str", "long"]],
|
||||
"DragQueryFileA" => ["long", ["long", "long", "str", "long"]],
|
||||
"CIDLData_CreateFromIDArray" => ["long", ["ptr", "long", "ptr", "ptr"]],
|
||||
"SHRegisterDragDrop" => ["long", ["long", "ptr"]],
|
||||
"SHRevokeDragDrop" => ["long", ["long"]],
|
||||
"SHDoDragDrop" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"SHCloneSpecialIDList" => ["ptr", ["long", "long", "long"]],
|
||||
"PathGetShortPath" => ["ptr", ["ptr"]],
|
||||
"SHLogILFromFSIL" => ["ptr", ["ptr"]],
|
||||
"StrRetToStrN" => ["long", ["ptr", "long", "ptr", "ptr"]],
|
||||
"SHWaitForFileToOpen" => ["long", ["ptr", "long", "long"]],
|
||||
"SHGetRealIDL" => ["ptr", ["ptr", "ptr", "long"]],
|
||||
"SetAppStartingCursor" => ["long", ["long", "long"]],
|
||||
"SHRestricted" => ["long", ["long"]],
|
||||
"SHCoCreateInstance" => ["long", ["str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SignalFileOpen" => ["long", ["long"]],
|
||||
"FileMenu_DeleteAllItems" => ["long", ["long"]],
|
||||
"FileMenu_DrawItem" => ["long", ["long", "ptr"]],
|
||||
"FileMenu_FindSubMenuByPidl" => ["long", ["long", "ptr"]],
|
||||
"FileMenu_GetLastSelectedItemPidls" => ["long", ["long", "ptr", "ptr"]],
|
||||
"FileMenu_HandleMenuChar" => ["long", ["long", "long"]],
|
||||
"FileMenu_InitMenuPopup" => ["long", ["long"]],
|
||||
"FileMenu_InsertUsingPidl" => ["long", ["long", "long", "ptr", "long", "long", "ptr"]],
|
||||
"FileMenu_Invalidate" => ["void", ["long"]],
|
||||
"FileMenu_MeasureItem" => ["long", ["long", "ptr"]],
|
||||
"FileMenu_ReplaceUsingPidl" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"FileMenu_Create" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"FileMenu_AppendItem" => ["long", ["long", "ptr", "long", "long", "long", "long"]],
|
||||
"FileMenu_TrackPopupMenuEx" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"FileMenu_DeleteItemByCmd" => ["long", ["long", "long"]],
|
||||
"FileMenu_Destroy" => ["void", ["long"]],
|
||||
"IsLFNDrive" => ["long", ["str"]],
|
||||
"FileMenu_AbortInitMenu" => ["void", []],
|
||||
"SHFlushClipboard" => ["long", []],
|
||||
"RunDLL_CallEntry16" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"SHFreeUnusedLibraries" => ["void", []],
|
||||
"FileMenu_AppendFilesForPidl" => ["long", ["long", "ptr", "long"]],
|
||||
"FileMenu_AddFilesForPidl" => ["long", ["long", "long", "long", "ptr", "long", "long", "ptr"]],
|
||||
"SHOutOfMemoryMessageBox" => ["long", ["long", "str", "long"]],
|
||||
"SHWinHelp" => ["long", ["long", "long", "long", "long"]],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DAD_AutoScroll" => ["long", ["long", "ptr", "ptr"]],
|
||||
"DAD_DragEnter" => ["long", ["long"]],
|
||||
"DAD_DragEnterEx" => ["long", ["long", "long", "long"]],
|
||||
"DAD_DragLeave" => ["long", []],
|
||||
"DragQueryFileW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"DAD_DragMove" => ["long", ["long", "long"]],
|
||||
"DragQueryPoint" => ["long", ["long", "ptr"]],
|
||||
"DAD_SetDragImage" => ["long", ["long", "ptr"]],
|
||||
"DAD_ShowDragImage" => ["long", ["long"]],
|
||||
"FileMenu_DeleteItemByIndex" => ["long", ["long", "long"]],
|
||||
"FileMenu_DeleteItemByFirstID" => ["long", ["long", "long"]],
|
||||
"FileMenu_DeleteSeparator" => ["long", ["long"]],
|
||||
"FileMenu_EnableItemByCmd" => ["long", ["long", "long", "long"]],
|
||||
"FileMenu_GetItemExtent" => ["long", ["long", "long"]],
|
||||
"PathFindOnPath" => ["long", ["ptr", "ptr"]],
|
||||
"RLBuildListOfPaths" => ["long", []],
|
||||
"SHCLSIDFromString" => ["long", ["ptr", "ptr"]],
|
||||
"SHFind_InitMenuPopup" => ["ptr", ["long", "long", "long", "long"]],
|
||||
"SHLoadOLE" => ["long", ["long"]],
|
||||
"ILGetSize" => ["long", ["ptr"]],
|
||||
"ILGetNext" => ["ptr", ["ptr"]],
|
||||
"ILAppend" => ["ptr", ["ptr", "ptr", "long"]],
|
||||
"ILFree" => ["long", ["ptr"]],
|
||||
"ILGlobalFree" => ["void", ["ptr"]],
|
||||
"ILCreateFromPath" => ["ptr", ["ptr"]],
|
||||
"PathGetExtension" => ["ptr", ["ptr", "long", "long"]],
|
||||
"PathIsDirectory" => ["long", ["ptr"]],
|
||||
"SHRunControlPanel" => ["long", ["long", "long"]],
|
||||
"SHSimpleIDListFromPath" => ["ptr", ["ptr"]],
|
||||
"StrToOleStr" => ["long", ["wstr", "ptr"]],
|
||||
"Win32DeleteFile" => ["long", ["str"]],
|
||||
"SHCreateDirectory" => ["long", ["ptr", "str"]],
|
||||
"CallCPLEntry16" => ["long", ["long", "ptr", "long", "long", "long", "long"]],
|
||||
"SHAddFromPropSheetExtArray" => ["long", ["long", "long", "long"]],
|
||||
"SHCreatePropSheetExtArray" => ["long", ["long", "str", "long"]],
|
||||
"SHDestroyPropSheetExtArray" => ["long", ["long"]],
|
||||
"SHReplaceFromPropSheetExtArray" => ["long", ["long", "long", "long", "long"]],
|
||||
"PathCleanupSpec" => ["long", ["ptr", "ptr"]],
|
||||
"SHValidateUNC" => ["long", ["long", "long", "long"]],
|
||||
"SHCreateShellFolderViewEx" => ["long", ["ptr", "ptr"]],
|
||||
"SHGetSpecialFolderPath" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"SHSetInstanceExplorer" => ["long", ["ptr"]],
|
||||
"RegisterShellHook" => ["long", ["long", "long"]],
|
||||
"ArrangeWindows" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"SHFree" => ["void", ["ptr"]],
|
||||
"SHAlloc" => ["ptr", ["long"]],
|
||||
"SHAbortInvokeCommand" => ["long", []],
|
||||
"SHInitRestricted" => ["long", ["str", "str"]],
|
||||
"SHGetDataFromIDListA" => ["long", ["ptr", "ptr", "long", "ptr", "long"]],
|
||||
"SHGetDataFromIDListW" => ["long", ["ptr", "ptr", "long", "ptr", "long"]],
|
||||
"PathParseIconLocation" => ["long", ["ptr"]],
|
||||
"PathRemoveExtension" => ["void", ["ptr"]],
|
||||
"PathRemoveArgs" => ["void", ["ptr"]],
|
||||
"SheChangeDirW" => ["long", ["wstr"]],
|
||||
"SheGetDirW" => ["long", ["wstr", "wstr"]],
|
||||
"ShellAboutA" => ["long", ["long", "str", "str", "long"]],
|
||||
"ShellAboutW" => ["long", ["long", "wstr", "wstr", "long"]],
|
||||
"ShellExecuteA" => ["long", ["long", "str", "str", "str", "str", "long"]],
|
||||
"ShellExecuteEx" => ["long", ["ptr"]],
|
||||
"ShellExecuteExA" => ["long", ["ptr"]],
|
||||
"ShellExecuteExW" => ["long", ["ptr"]],
|
||||
"ShellExecuteW" => ["long", ["long", "wstr", "wstr", "wstr", "wstr", "long"]],
|
||||
"Shell_NotifyIcon" => ["long", ["long", "ptr"]],
|
||||
"Shell_NotifyIconA" => ["long", ["long", "ptr"]],
|
||||
"Shell_NotifyIconW" => ["long", ["long", "ptr"]],
|
||||
"SHRegOpenKeyA" => ["long", ["long", "str", "ptr"]],
|
||||
"SHRegOpenKeyW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"SHRegQueryValueExA" => ["long", ["long", "str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHRegQueryValueW" => ["long", ["long", "wstr", "wstr", "ptr"]],
|
||||
"SHRegQueryValueExW" => ["long", ["long", "wstr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHRegDeleteKeyW" => ["long", ["long", "wstr"]],
|
||||
"SHAllocShared" => ["long", ["ptr", "long", "long"]],
|
||||
"SHLockShared" => ["ptr", ["long", "long"]],
|
||||
"SHUnlockShared" => ["long", ["ptr"]],
|
||||
"SHFreeShared" => ["long", ["long", "long"]],
|
||||
"NTSHChangeNotifyRegister" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"NTSHChangeNotifyDeregister" => ["long", ["long"]],
|
||||
"SHChangeNotification_Lock" => ["long", ["long", "long", "undef", "ptr"]],
|
||||
"SHChangeNotification_Unlock" => ["long", ["long"]],
|
||||
"PathIsSameRoot" => ["long", ["ptr", "ptr"]],
|
||||
"ReadCabinetState" => ["long", ["long", "long"]],
|
||||
"WriteCabinetState" => ["long", ["long"]],
|
||||
"PathProcessCommand" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"FileIconInit" => ["long", ["long"]],
|
||||
"IsUserAdmin" => ["long", []],
|
||||
"CommandLineToArgvW" => ["ptr", ["wstr", "ptr"]],
|
||||
"Control_FillCache_RunDLL" => ["long", ["long", "long", "long", "long"]],
|
||||
"Control_RunDLL" => ["void", ["long", "long", "str", "long"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetVersion" => ["long", ["ptr"]],
|
||||
"DllInstall" => ["long", ["long", "wstr"]],
|
||||
"DoEnvironmentSubstA" => ["long", ["str", "str"]],
|
||||
"DoEnvironmentSubstW" => ["long", ["wstr", "wstr"]],
|
||||
"DuplicateIcon" => ["long", ["long", "long"]],
|
||||
"ExtractAssociatedIconA" => ["long", ["long", "str", "ptr"]],
|
||||
"ExtractAssociatedIconExA" => ["long", ["long", "long", "long", "long"]],
|
||||
"ExtractAssociatedIconExW" => ["long", ["long", "long", "long", "long"]],
|
||||
"ExtractIconA" => ["long", ["long", "str", "long"]],
|
||||
"ExtractIconEx" => ["long", ["ptr", "long", "ptr", "ptr", "long"]],
|
||||
"ExtractIconExA" => ["long", ["str", "long", "ptr", "ptr", "long"]],
|
||||
"ExtractIconExW" => ["long", ["wstr", "long", "ptr", "ptr", "long"]],
|
||||
"ExtractIconW" => ["long", ["long", "wstr", "long"]],
|
||||
"FindExecutableA" => ["long", ["str", "str", "str"]],
|
||||
"FindExecutableW" => ["long", ["wstr", "wstr", "wstr"]],
|
||||
"FreeIconList" => ["void", ["long"]],
|
||||
"SHAddToRecentDocs" => ["long", ["long", "ptr"]],
|
||||
"SHAppBarMessage" => ["long", ["long", "ptr"]],
|
||||
"SHBrowseForFolder" => ["ptr", ["ptr"]],
|
||||
"SHBrowseForFolderA" => ["ptr", ["ptr"]],
|
||||
"SHBrowseForFolderW" => ["ptr", ["ptr"]],
|
||||
"SHChangeNotify" => ["void", ["long", "long", "ptr", "ptr"]],
|
||||
"SHFileOperation" => ["long", ["ptr"]],
|
||||
"SHFileOperationA" => ["long", ["ptr"]],
|
||||
"SHFileOperationW" => ["long", ["ptr"]],
|
||||
"SHGetDesktopFolder" => ["long", ["ptr"]],
|
||||
"SHGetFileInfo" => ["long", ["ptr", "long", "ptr", "long", "long"]],
|
||||
"SHGetFileInfoA" => ["long", ["str", "long", "ptr", "long", "long"]],
|
||||
"SHGetFileInfoW" => ["long", ["wstr", "long", "ptr", "long", "long"]],
|
||||
"SHGetFolderLocation" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"SHGetFolderPathA" => ["long", ["long", "long", "long", "long", "str"]],
|
||||
"SHGetFolderPathW" => ["long", ["long", "long", "long", "long", "wstr"]],
|
||||
"SHGetInstanceExplorer" => ["long", ["ptr"]],
|
||||
"SHGetMalloc" => ["long", ["ptr"]],
|
||||
"SHGetPathFromIDList" => ["long", ["ptr", "ptr"]],
|
||||
"SHGetPathFromIDListA" => ["long", ["ptr", "str"]],
|
||||
"SHGetPathFromIDListW" => ["long", ["ptr", "wstr"]],
|
||||
"SHGetSettings" => ["void", ["ptr", "long"]],
|
||||
"SHGetSpecialFolderLocation" => ["long", ["long", "long", "ptr"]],
|
||||
"SHGetSpecialFolderPathA" => ["long", ["long", "str", "long", "long"]],
|
||||
"SHHelpShortcuts_RunDLL" => ["long", ["long", "long", "long", "long"]],
|
||||
"SHLoadInProc" => ["long", ["ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("shell32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,268 +0,0 @@
|
|||
package shlwapi;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"ChrCmpIA" => ["long", ["long", "long"]],
|
||||
"ChrCmpIW" => ["long", ["long", "long"]],
|
||||
"ColorHLSToRGB" => ["long", ["long", "long", "long"]],
|
||||
"ColorRGBToHLS" => ["void", ["long", "ptr", "ptr", "ptr"]],
|
||||
"DllGetVersion" => ["long", ["ptr"]],
|
||||
"GetMenuPosFromID" => ["long", ["long", "long"]],
|
||||
"HashData" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"PathAddBackslashA" => ["str", ["str"]],
|
||||
"PathAddBackslashW" => ["wstr", ["wstr"]],
|
||||
"PathAddExtensionA" => ["long", ["str", "str"]],
|
||||
"PathAddExtensionW" => ["long", ["wstr", "wstr"]],
|
||||
"PathAppendA" => ["long", ["str", "str"]],
|
||||
"PathAppendW" => ["long", ["wstr", "wstr"]],
|
||||
"PathBuildRootA" => ["str", ["str", "long"]],
|
||||
"PathBuildRootW" => ["wstr", ["wstr", "long"]],
|
||||
"PathCanonicalizeA" => ["long", ["str", "str"]],
|
||||
"PathCanonicalizeW" => ["long", ["wstr", "wstr"]],
|
||||
"PathCombineA" => ["str", ["str", "str", "str"]],
|
||||
"PathCombineW" => ["wstr", ["wstr", "wstr", "wstr"]],
|
||||
"PathCommonPrefixA" => ["long", ["str", "str", "str"]],
|
||||
"PathCommonPrefixW" => ["long", ["wstr", "wstr", "wstr"]],
|
||||
"PathCompactPathA" => ["long", ["long", "str", "long"]],
|
||||
"PathCompactPathExA" => ["long", ["str", "str", "long", "long"]],
|
||||
"PathCompactPathExW" => ["long", ["wstr", "wstr", "long", "long"]],
|
||||
"PathCompactPathW" => ["long", ["long", "wstr", "long"]],
|
||||
"PathCreateFromUrlA" => ["long", ["str", "str", "ptr", "long"]],
|
||||
"PathCreateFromUrlW" => ["long", ["wstr", "wstr", "ptr", "long"]],
|
||||
"PathFileExistsA" => ["long", ["str"]],
|
||||
"PathFileExistsW" => ["long", ["wstr"]],
|
||||
"PathFindExtensionA" => ["str", ["str"]],
|
||||
"PathFindExtensionW" => ["wstr", ["wstr"]],
|
||||
"PathFindFileNameA" => ["str", ["str"]],
|
||||
"PathFindFileNameW" => ["wstr", ["wstr"]],
|
||||
"PathFindNextComponentA" => ["str", ["str"]],
|
||||
"PathFindNextComponentW" => ["wstr", ["wstr"]],
|
||||
"PathFindOnPathA" => ["long", ["str", "ptr"]],
|
||||
"PathFindOnPathW" => ["long", ["wstr", "ptr"]],
|
||||
"PathFindSuffixArrayA" => ["long", ["str", "ptr", "long"]],
|
||||
"PathFindSuffixArrayW" => ["long", ["wstr", "ptr", "long"]],
|
||||
"PathGetArgsA" => ["str", ["str"]],
|
||||
"PathGetArgsW" => ["wstr", ["wstr"]],
|
||||
"PathGetCharTypeA" => ["long", ["long"]],
|
||||
"PathGetCharTypeW" => ["long", ["long"]],
|
||||
"PathGetDriveNumberA" => ["long", ["str"]],
|
||||
"PathGetDriveNumberW" => ["long", ["wstr"]],
|
||||
"PathIsContentTypeA" => ["long", ["str", "str"]],
|
||||
"PathIsContentTypeW" => ["long", ["wstr", "wstr"]],
|
||||
"PathIsDirectoryA" => ["long", ["str"]],
|
||||
"PathIsDirectoryEmptyA" => ["long", ["str"]],
|
||||
"PathIsDirectoryEmptyW" => ["long", ["wstr"]],
|
||||
"PathIsDirectoryW" => ["long", ["wstr"]],
|
||||
"PathIsFileSpecA" => ["long", ["str"]],
|
||||
"PathIsFileSpecW" => ["long", ["wstr"]],
|
||||
"PathIsLFNFileSpecA" => ["long", ["str"]],
|
||||
"PathIsLFNFileSpecW" => ["long", ["wstr"]],
|
||||
"PathIsNetworkPathA" => ["long", ["str"]],
|
||||
"PathIsNetworkPathW" => ["long", ["wstr"]],
|
||||
"PathIsPrefixA" => ["long", ["str", "str"]],
|
||||
"PathIsPrefixW" => ["long", ["wstr", "wstr"]],
|
||||
"PathIsRelativeA" => ["long", ["str"]],
|
||||
"PathIsRelativeW" => ["long", ["wstr"]],
|
||||
"PathIsRootA" => ["long", ["str"]],
|
||||
"PathIsRootW" => ["long", ["wstr"]],
|
||||
"PathIsSameRootA" => ["long", ["str", "str"]],
|
||||
"PathIsSameRootW" => ["long", ["wstr", "wstr"]],
|
||||
"PathIsSystemFolderA" => ["long", ["str", "long"]],
|
||||
"PathIsSystemFolderW" => ["long", ["wstr", "long"]],
|
||||
"PathIsUNCA" => ["long", ["str"]],
|
||||
"PathIsUNCServerA" => ["long", ["str"]],
|
||||
"PathIsUNCServerShareA" => ["long", ["str"]],
|
||||
"PathIsUNCServerShareW" => ["long", ["wstr"]],
|
||||
"PathIsUNCServerW" => ["long", ["wstr"]],
|
||||
"PathIsUNCW" => ["long", ["wstr"]],
|
||||
"PathIsURLA" => ["long", ["str"]],
|
||||
"PathIsURLW" => ["long", ["wstr"]],
|
||||
"PathMakePrettyA" => ["long", ["str"]],
|
||||
"PathMakePrettyW" => ["long", ["wstr"]],
|
||||
"PathMakeSystemFolderA" => ["long", ["str"]],
|
||||
"PathMakeSystemFolderW" => ["long", ["wstr"]],
|
||||
"PathMatchSpecA" => ["long", ["str", "str"]],
|
||||
"PathMatchSpecW" => ["long", ["wstr", "wstr"]],
|
||||
"PathParseIconLocationA" => ["long", ["str"]],
|
||||
"PathParseIconLocationW" => ["long", ["wstr"]],
|
||||
"PathQuoteSpacesA" => ["void", ["str"]],
|
||||
"PathQuoteSpacesW" => ["void", ["wstr"]],
|
||||
"PathRelativePathToA" => ["long", ["str", "str", "long", "str", "long"]],
|
||||
"PathRelativePathToW" => ["long", ["wstr", "wstr", "long", "wstr", "long"]],
|
||||
"PathRemoveArgsA" => ["void", ["str"]],
|
||||
"PathRemoveArgsW" => ["void", ["wstr"]],
|
||||
"PathRemoveBackslashA" => ["str", ["str"]],
|
||||
"PathRemoveBackslashW" => ["wstr", ["wstr"]],
|
||||
"PathRemoveBlanksA" => ["void", ["str"]],
|
||||
"PathRemoveBlanksW" => ["void", ["wstr"]],
|
||||
"PathRemoveExtensionA" => ["void", ["str"]],
|
||||
"PathRemoveExtensionW" => ["void", ["wstr"]],
|
||||
"PathRemoveFileSpecA" => ["long", ["str"]],
|
||||
"PathRemoveFileSpecW" => ["long", ["wstr"]],
|
||||
"PathRenameExtensionA" => ["long", ["str", "str"]],
|
||||
"PathRenameExtensionW" => ["long", ["wstr", "wstr"]],
|
||||
"PathSearchAndQualifyA" => ["long", ["str", "str", "long"]],
|
||||
"PathSearchAndQualifyW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"PathSetDlgItemPathA" => ["void", ["long", "long", "str"]],
|
||||
"PathSetDlgItemPathW" => ["void", ["long", "long", "wstr"]],
|
||||
"PathSkipRootA" => ["str", ["str"]],
|
||||
"PathSkipRootW" => ["wstr", ["wstr"]],
|
||||
"PathStripPathA" => ["void", ["str"]],
|
||||
"PathStripPathW" => ["void", ["wstr"]],
|
||||
"PathStripToRootA" => ["long", ["str"]],
|
||||
"PathStripToRootW" => ["long", ["wstr"]],
|
||||
"PathUndecorateA" => ["void", ["str"]],
|
||||
"PathUndecorateW" => ["void", ["wstr"]],
|
||||
"PathUnmakeSystemFolderA" => ["long", ["str"]],
|
||||
"PathUnmakeSystemFolderW" => ["long", ["wstr"]],
|
||||
"PathUnquoteSpacesA" => ["void", ["str"]],
|
||||
"PathUnquoteSpacesW" => ["void", ["wstr"]],
|
||||
"SHCreateShellPalette" => ["long", ["long"]],
|
||||
"SHCreateStreamOnFileA" => ["long", ["str", "long", "ptr"]],
|
||||
"SHCreateStreamOnFileEx" => ["long", ["wstr", "long", "long", "long", "ptr", "ptr"]],
|
||||
"SHCreateStreamOnFileW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"SHDeleteEmptyKeyA" => ["long", ["long", "str"]],
|
||||
"SHDeleteEmptyKeyW" => ["long", ["long", "wstr"]],
|
||||
"SHDeleteKeyA" => ["long", ["long", "str"]],
|
||||
"SHDeleteKeyW" => ["long", ["long", "wstr"]],
|
||||
"SHDeleteOrphanKeyA" => ["long", ["long", "str"]],
|
||||
"SHDeleteOrphanKeyW" => ["long", ["long", "wstr"]],
|
||||
"SHDeleteValueA" => ["long", ["long", "str", "str"]],
|
||||
"SHDeleteValueW" => ["long", ["long", "wstr", "wstr"]],
|
||||
"SHEnumKeyExA" => ["long", ["long", "long", "str", "ptr"]],
|
||||
"SHEnumKeyExW" => ["long", ["long", "long", "wstr", "ptr"]],
|
||||
"SHEnumValueA" => ["long", ["long", "long", "str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHEnumValueW" => ["long", ["long", "long", "wstr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHGetInverseCMAP" => ["long", ["ptr", "long"]],
|
||||
"SHGetThreadRef" => ["long", ["ptr"]],
|
||||
"SHGetValueA" => ["long", ["long", "str", "str", "ptr", "ptr", "ptr"]],
|
||||
"SHGetValueW" => ["long", ["long", "wstr", "wstr", "ptr", "ptr", "ptr"]],
|
||||
"SHIsLowMemoryMachine" => ["long", ["long"]],
|
||||
"SHOpenRegStream2A" => ["ptr", ["long", "str", "str", "long"]],
|
||||
"SHOpenRegStream2W" => ["ptr", ["long", "wstr", "wstr", "long"]],
|
||||
"SHOpenRegStreamA" => ["ptr", ["long", "str", "str", "long"]],
|
||||
"SHOpenRegStreamW" => ["ptr", ["long", "wstr", "wstr", "long"]],
|
||||
"SHQueryInfoKeyA" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHQueryInfoKeyW" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHQueryValueExA" => ["long", ["long", "str", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHQueryValueExW" => ["long", ["long", "wstr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"SHRegCloseUSKey" => ["long", ["long"]],
|
||||
"SHRegDuplicateHKey" => ["long", ["long"]],
|
||||
"SHRegEnumUSKeyA" => ["long", ["long", "long", "str", "ptr", "long"]],
|
||||
"SHRegEnumUSKeyW" => ["long", ["long", "long", "wstr", "ptr", "long"]],
|
||||
"SHRegGetBoolUSValueA" => ["long", ["str", "str", "long", "long"]],
|
||||
"SHRegGetBoolUSValueW" => ["long", ["wstr", "wstr", "long", "long"]],
|
||||
"SHRegGetPathA" => ["long", ["long", "str", "str", "str", "long"]],
|
||||
"SHRegGetPathW" => ["long", ["long", "wstr", "wstr", "wstr", "long"]],
|
||||
"SHRegGetUSValueA" => ["long", ["str", "str", "ptr", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"SHRegGetUSValueW" => ["long", ["wstr", "wstr", "ptr", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"SHRegOpenUSKeyA" => ["long", ["str", "long", "long", "ptr", "long"]],
|
||||
"SHRegOpenUSKeyW" => ["long", ["wstr", "long", "long", "ptr", "long"]],
|
||||
"SHRegQueryInfoUSKeyA" => ["long", ["long", "ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"SHRegQueryInfoUSKeyW" => ["long", ["long", "ptr", "ptr", "ptr", "ptr", "long"]],
|
||||
"SHRegQueryUSValueA" => ["long", ["long", "str", "ptr", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"SHRegQueryUSValueW" => ["long", ["long", "wstr", "ptr", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"SHRegSetPathA" => ["long", ["long", "str", "str", "str", "long"]],
|
||||
"SHRegSetPathW" => ["long", ["long", "wstr", "wstr", "wstr", "long"]],
|
||||
"SHRegWriteUSValueA" => ["long", ["long", "str", "long", "ptr", "long", "long"]],
|
||||
"SHRegWriteUSValueW" => ["long", ["long", "wstr", "long", "ptr", "long", "long"]],
|
||||
"SHReleaseThreadRef" => ["long", ["undef"]],
|
||||
"SHSetThreadRef" => ["long", ["ptr"]],
|
||||
"SHSetValueA" => ["long", ["long", "str", "str", "long", "ptr", "long"]],
|
||||
"SHSetValueW" => ["long", ["long", "wstr", "wstr", "long", "ptr", "long"]],
|
||||
"StrCSpnA" => ["long", ["str", "str"]],
|
||||
"StrCSpnIA" => ["long", ["str", "str"]],
|
||||
"StrCSpnIW" => ["long", ["wstr", "wstr"]],
|
||||
"StrCSpnW" => ["long", ["wstr", "wstr"]],
|
||||
"StrCatBuffA" => ["str", ["str", "str", "long"]],
|
||||
"StrCatBuffW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"StrCatW" => ["wstr", ["wstr", "wstr"]],
|
||||
"StrChrA" => ["str", ["str", "long"]],
|
||||
"StrChrIA" => ["str", ["str", "long"]],
|
||||
"StrChrIW" => ["wstr", ["wstr", "long"]],
|
||||
"StrChrW" => ["wstr", ["wstr", "long"]],
|
||||
"StrCmpIW" => ["long", ["wstr", "wstr"]],
|
||||
"StrCmpNA" => ["long", ["str", "str", "long"]],
|
||||
"StrCmpNIA" => ["long", ["str", "str", "long"]],
|
||||
"StrCmpNIW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"StrCmpNW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"StrCmpW" => ["long", ["wstr", "wstr"]],
|
||||
"StrCpyNW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"StrCpyW" => ["wstr", ["wstr", "wstr"]],
|
||||
"StrDupA" => ["str", ["str"]],
|
||||
"StrDupW" => ["wstr", ["wstr"]],
|
||||
"StrFormatByteSizeA" => ["str", ["long", "str", "long"]],
|
||||
"StrFormatByteSizeW" => ["wstr", ["long", "wstr", "long"]],
|
||||
"StrFormatKBSizeA" => ["str", ["long", "long", "str", "long"]],
|
||||
"StrFormatKBSizeW" => ["wstr", ["long", "long", "wstr", "long"]],
|
||||
"StrFromTimeIntervalA" => ["long", ["str", "long", "long", "long"]],
|
||||
"StrFromTimeIntervalW" => ["long", ["wstr", "long", "long", "long"]],
|
||||
"StrIsIntlEqualA" => ["long", ["long", "str", "str", "long"]],
|
||||
"StrIsIntlEqualW" => ["long", ["long", "wstr", "wstr", "long"]],
|
||||
"StrNCatA" => ["str", ["str", "str", "long"]],
|
||||
"StrNCatW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"StrPBrkA" => ["str", ["str", "str"]],
|
||||
"StrPBrkW" => ["wstr", ["wstr", "wstr"]],
|
||||
"StrRChrA" => ["str", ["str", "str", "long"]],
|
||||
"StrRChrIA" => ["str", ["str", "str", "long"]],
|
||||
"StrRChrIW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"StrRChrW" => ["wstr", ["wstr", "wstr", "long"]],
|
||||
"StrRStrIA" => ["str", ["str", "str", "str"]],
|
||||
"StrRStrIW" => ["wstr", ["wstr", "wstr", "wstr"]],
|
||||
"StrRetToBufA" => ["long", ["ptr", "ptr", "str", "long"]],
|
||||
"StrRetToBufW" => ["long", ["ptr", "ptr", "wstr", "long"]],
|
||||
"StrRetToStrA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"StrRetToStrW" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"StrSpnA" => ["long", ["str", "str"]],
|
||||
"StrSpnW" => ["long", ["wstr", "wstr"]],
|
||||
"StrStrA" => ["str", ["str", "str"]],
|
||||
"StrStrIA" => ["str", ["str", "str"]],
|
||||
"StrStrIW" => ["wstr", ["wstr", "wstr"]],
|
||||
"StrStrW" => ["wstr", ["wstr", "wstr"]],
|
||||
"StrToIntA" => ["long", ["str"]],
|
||||
"StrToIntExA" => ["long", ["str", "long", "ptr"]],
|
||||
"StrToIntExW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"StrToIntW" => ["long", ["wstr"]],
|
||||
"StrTrimA" => ["long", ["str", "str"]],
|
||||
"StrTrimW" => ["long", ["wstr", "wstr"]],
|
||||
"UrlApplySchemeW" => ["long", ["wstr", "wstr", "ptr", "long"]],
|
||||
"UrlCanonicalizeA" => ["long", ["str", "str", "ptr", "long"]],
|
||||
"UrlCanonicalizeW" => ["long", ["wstr", "wstr", "ptr", "long"]],
|
||||
"UrlCombineA" => ["long", ["str", "str", "str", "ptr", "long"]],
|
||||
"UrlCombineW" => ["long", ["wstr", "wstr", "wstr", "ptr", "long"]],
|
||||
"UrlCompareA" => ["long", ["str", "str", "long"]],
|
||||
"UrlCompareW" => ["long", ["wstr", "wstr", "long"]],
|
||||
"UrlEscapeA" => ["long", ["str", "str", "ptr", "long"]],
|
||||
"UrlEscapeW" => ["long", ["wstr", "wstr", "ptr", "long"]],
|
||||
"UrlGetLocationA" => ["str", ["str"]],
|
||||
"UrlGetLocationW" => ["wstr", ["wstr"]],
|
||||
"UrlGetPartA" => ["long", ["str", "str", "ptr", "long", "long"]],
|
||||
"UrlGetPartW" => ["long", ["wstr", "wstr", "ptr", "long", "long"]],
|
||||
"UrlHashA" => ["long", ["str", "ptr", "long"]],
|
||||
"UrlHashW" => ["long", ["wstr", "ptr", "long"]],
|
||||
"UrlIsA" => ["long", ["str", "long"]],
|
||||
"UrlIsNoHistoryA" => ["long", ["str"]],
|
||||
"UrlIsNoHistoryW" => ["long", ["wstr"]],
|
||||
"UrlIsOpaqueA" => ["long", ["str"]],
|
||||
"UrlIsOpaqueW" => ["long", ["wstr"]],
|
||||
"UrlIsW" => ["long", ["wstr", "long"]],
|
||||
"UrlUnescapeA" => ["long", ["str", "str", "ptr", "long"]],
|
||||
"UrlUnescapeW" => ["long", ["wstr", "wstr", "ptr", "long"]],
|
||||
"_SHGetInstanceExplorer" => ["long", ["ptr"]],
|
||||
"wvnsprintfA" => ["long", ["str", "long", "str", "ptr"]],
|
||||
"wvnsprintfW" => ["long", ["wstr", "long", "wstr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("shlwapi",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package sti;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"StiCreateInstance" => ["long", ["long", "long", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("sti",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,131 +0,0 @@
|
|||
package tapi32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"lineAccept" => ["long", ["long", "str", "long"]],
|
||||
"lineAddProvider" => ["long", ["str", "long", "ptr"]],
|
||||
"lineAddToConference" => ["long", ["long", "long"]],
|
||||
"lineAnswer" => ["long", ["long", "str", "long"]],
|
||||
"lineBlindTransfer" => ["long", ["long", "str", "long"]],
|
||||
"lineClose" => ["long", ["long"]],
|
||||
"lineCompleteCall" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"lineCompleteTransfer" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"lineConfigDialog" => ["long", ["long", "long", "str"]],
|
||||
"lineConfigDialogEdit" => ["long", ["long", "long", "str", "ptr", "long", "ptr"]],
|
||||
"lineConfigProvider" => ["long", ["long", "long"]],
|
||||
"lineDeallocateCall" => ["long", ["long"]],
|
||||
"lineDevSpecific" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"lineDevSpecificFeature" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"lineDial" => ["long", ["long", "str", "long"]],
|
||||
"lineDrop" => ["long", ["long", "str", "long"]],
|
||||
"lineForward" => ["long", ["long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"lineGatherDigits" => ["long", ["long", "long", "str", "long", "str", "long", "long"]],
|
||||
"lineGenerateDigits" => ["long", ["long", "long", "str", "long"]],
|
||||
"lineGenerateTone" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"lineGetAddressCaps" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"lineGetAddressID" => ["long", ["long", "ptr", "long", "str", "long"]],
|
||||
"lineGetAddressStatus" => ["long", ["long", "long", "ptr"]],
|
||||
"lineGetAppPriority" => ["long", ["str", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"lineGetCallInfo" => ["long", ["long", "ptr"]],
|
||||
"lineGetCallStatus" => ["long", ["long", "ptr"]],
|
||||
"lineGetConfRelatedCalls" => ["long", ["long", "ptr"]],
|
||||
"lineGetCountry" => ["long", ["long", "long", "ptr"]],
|
||||
"lineGetDevCaps" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"lineGetDevConfig" => ["long", ["long", "ptr", "str"]],
|
||||
"lineGetID" => ["long", ["long", "long", "long", "long", "ptr", "str"]],
|
||||
"lineGetIcon" => ["long", ["long", "str", "ptr"]],
|
||||
"lineGetLineDevStatus" => ["long", ["long", "ptr"]],
|
||||
"lineGetNewCalls" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"lineGetNumRings" => ["long", ["long", "long", "ptr"]],
|
||||
"lineGetProviderList" => ["long", ["long", "ptr"]],
|
||||
"lineGetRequest" => ["long", ["long", "long", "ptr"]],
|
||||
"lineGetStatusMessages" => ["long", ["long", "ptr", "ptr"]],
|
||||
"lineGetTranslateCaps" => ["long", ["long", "long", "ptr"]],
|
||||
"lineHandoff" => ["long", ["long", "str", "long"]],
|
||||
"lineHold" => ["long", ["long"]],
|
||||
"lineInitialize" => ["long", ["ptr", "long", "ptr", "str", "ptr"]],
|
||||
"lineMakeCall" => ["long", ["long", "ptr", "str", "long", "ptr"]],
|
||||
"lineMonitorDigits" => ["long", ["long", "long"]],
|
||||
"lineMonitorMedia" => ["long", ["long", "long"]],
|
||||
"lineMonitorTones" => ["long", ["long", "ptr", "long"]],
|
||||
"lineNegotiateAPIVersion" => ["long", ["long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"lineNegotiateExtVersion" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"lineOpen" => ["long", ["long", "long", "ptr", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"linePark" => ["long", ["long", "long", "str", "ptr"]],
|
||||
"linePickup" => ["long", ["long", "long", "ptr", "str", "str"]],
|
||||
"linePrepareAddToConference" => ["long", ["long", "ptr", "ptr"]],
|
||||
"lineRedirect" => ["long", ["long", "str", "long"]],
|
||||
"lineRegisterRequestRecipient" => ["long", ["long", "long", "long", "long"]],
|
||||
"lineReleaseUserUserInfo" => ["long", ["long"]],
|
||||
"lineRemoveFromConference" => ["long", ["long"]],
|
||||
"lineRemoveProvider" => ["long", ["long", "long"]],
|
||||
"lineSecureCall" => ["long", ["long"]],
|
||||
"lineSendUserUserInfo" => ["long", ["long", "str", "long"]],
|
||||
"lineSetAppPriority" => ["long", ["str", "long", "ptr", "long", "str", "long"]],
|
||||
"lineSetAppSpecific" => ["long", ["long", "long"]],
|
||||
"lineSetCallParams" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"lineSetCallPrivilege" => ["long", ["long", "long"]],
|
||||
"lineSetCurrentLocation" => ["long", ["long", "long"]],
|
||||
"lineSetDevConfig" => ["long", ["long", "ptr", "long", "str"]],
|
||||
"lineSetMediaControl" => ["long", ["long", "long", "long", "long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "long"]],
|
||||
"lineSetMediaMode" => ["long", ["long", "long"]],
|
||||
"lineSetNumRings" => ["long", ["long", "long", "long"]],
|
||||
"lineSetStatusMessages" => ["long", ["long", "long", "long"]],
|
||||
"lineSetTerminal" => ["long", ["long", "long", "long", "long", "long", "long", "long"]],
|
||||
"lineSetTollList" => ["long", ["long", "long", "str", "long"]],
|
||||
"lineSetupConference" => ["long", ["long", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"lineSetupTransfer" => ["long", ["long", "ptr", "ptr"]],
|
||||
"lineShutdown" => ["long", ["long"]],
|
||||
"lineSwapHold" => ["long", ["long", "long"]],
|
||||
"lineTranslateAddress" => ["long", ["long", "long", "long", "str", "long", "long", "ptr"]],
|
||||
"lineTranslateDialog" => ["long", ["long", "long", "long", "long", "str"]],
|
||||
"lineUncompleteCall" => ["long", ["long", "long"]],
|
||||
"lineUnhold" => ["long", ["long"]],
|
||||
"lineUnpark" => ["long", ["long", "long", "ptr", "str"]],
|
||||
"phoneClose" => ["long", ["long"]],
|
||||
"phoneConfigDialog" => ["long", ["long", "long", "str"]],
|
||||
"phoneDevSpecific" => ["long", ["long", "ptr", "long"]],
|
||||
"phoneGetButtonInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"phoneGetData" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"phoneGetDevCaps" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"phoneGetDisplay" => ["long", ["long", "ptr"]],
|
||||
"phoneGetGain" => ["long", ["long", "long", "ptr"]],
|
||||
"phoneGetHookSwitch" => ["long", ["long", "ptr"]],
|
||||
"phoneGetID" => ["long", ["long", "ptr", "str"]],
|
||||
"phoneGetIcon" => ["long", ["long", "str", "ptr"]],
|
||||
"phoneGetLamp" => ["long", ["long", "long", "ptr"]],
|
||||
"phoneGetRing" => ["long", ["long", "ptr", "ptr"]],
|
||||
"phoneGetStatus" => ["long", ["long", "ptr"]],
|
||||
"phoneGetStatusMessages" => ["long", ["long", "ptr", "ptr", "ptr"]],
|
||||
"phoneGetVolume" => ["long", ["long", "long", "ptr"]],
|
||||
"phoneInitialize" => ["long", ["ptr", "long", "ptr", "str", "ptr"]],
|
||||
"phoneNegotiateAPIVersion" => ["long", ["long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"phoneNegotiateExtVersion" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"phoneOpen" => ["long", ["long", "long", "ptr", "long", "long", "long", "long"]],
|
||||
"phoneSetButtonInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"phoneSetData" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"phoneSetDisplay" => ["long", ["long", "long", "long", "str", "long"]],
|
||||
"phoneSetGain" => ["long", ["long", "long", "long"]],
|
||||
"phoneSetHookSwitch" => ["long", ["long", "long", "long"]],
|
||||
"phoneSetLamp" => ["long", ["long", "long", "long"]],
|
||||
"phoneSetRing" => ["long", ["long", "long", "long"]],
|
||||
"phoneSetStatusMessages" => ["long", ["long", "long", "long", "long"]],
|
||||
"phoneSetVolume" => ["long", ["long", "long", "long"]],
|
||||
"phoneShutdown" => ["long", ["long"]],
|
||||
"tapiGetLocationInfo" => ["long", ["str", "str"]],
|
||||
"tapiRequestMakeCall" => ["long", ["str", "str", "str", "str"]]
|
||||
};
|
||||
|
||||
&wine::declare("tapi32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,33 +0,0 @@
|
|||
package urlmon;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"CoInternetGetSession" => ["long", ["long", "ptr", "long"]],
|
||||
"CreateAsyncBindCtxEx" => ["long", ["ptr", "long", "ptr", "ptr", "ptr", "long"]],
|
||||
"CreateURLMoniker" => ["long", ["ptr", "wstr", "ptr"]],
|
||||
"DllCanUnloadNow" => ["long", []],
|
||||
"DllGetClassObject" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"DllInstall" => ["long", ["long", "wstr"]],
|
||||
"DllRegisterServer" => ["long", []],
|
||||
"DllRegisterServerEx" => ["long", []],
|
||||
"DllUnregisterServer" => ["long", []],
|
||||
"Extract" => ["long", ["long", "str"]],
|
||||
"ObtainUserAgentString" => ["long", ["long", "str", "ptr"]],
|
||||
"RegisterBindStatusCallback" => ["long", ["ptr", "ptr", "ptr", "long"]],
|
||||
"RevokeBindStatusCallback" => ["long", ["ptr", "ptr"]],
|
||||
"UrlMkSetSessionOption" => ["long", ["long", "ptr", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("urlmon",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,631 +0,0 @@
|
|||
package user32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"ActivateKeyboardLayout" => ["long", ["long", "long"]],
|
||||
"AdjustWindowRect" => ["long", ["ptr", "long", "long"]],
|
||||
"AdjustWindowRectEx" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"AllowSetForegroundWindow" => ["long", ["long"]],
|
||||
"AnimateWindow" => ["long", ["long", "long", "long"]],
|
||||
"AnyPopup" => ["long", []],
|
||||
"AppendMenuA" => ["long", ["long", "long", "long", "str"]],
|
||||
"AppendMenuW" => ["long", ["long", "long", "long", "wstr"]],
|
||||
"ArrangeIconicWindows" => ["long", ["long"]],
|
||||
"AttachThreadInput" => ["long", ["long", "long", "long"]],
|
||||
"BeginDeferWindowPos" => ["long", ["long"]],
|
||||
"BeginPaint" => ["long", ["long", "ptr"]],
|
||||
"BringWindowToTop" => ["long", ["long"]],
|
||||
"BroadcastSystemMessage" => ["long", ["long", "ptr", "long", "long", "long"]],
|
||||
"BroadcastSystemMessageA" => ["long", ["long", "ptr", "long", "long", "long"]],
|
||||
"CalcChildScroll" => ["void", ["long", "long"]],
|
||||
"CallMsgFilterA" => ["long", ["ptr", "long"]],
|
||||
"CallMsgFilterW" => ["long", ["ptr", "long"]],
|
||||
"CallNextHookEx" => ["long", ["long", "long", "long", "long"]],
|
||||
"CallNextHookEx16" => ["long", ["long", "long", "long", "long"]],
|
||||
"CallWindowProc16" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"CallWindowProcA" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"CallWindowProcW" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"CascadeWindows" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ChangeClipboardChain" => ["long", ["long", "long"]],
|
||||
"ChangeDisplaySettingsA" => ["long", ["ptr", "long"]],
|
||||
"ChangeDisplaySettingsExA" => ["long", ["str", "ptr", "long", "long", "long"]],
|
||||
"ChangeMenuA" => ["long", ["long", "long", "str", "long", "long"]],
|
||||
"ChangeMenuW" => ["long", ["long", "long", "wstr", "long", "long"]],
|
||||
"CharLowerA" => ["str", ["str"]],
|
||||
"CharLowerBuffA" => ["long", ["str", "long"]],
|
||||
"CharLowerBuffW" => ["long", ["wstr", "long"]],
|
||||
"CharLowerW" => ["wstr", ["wstr"]],
|
||||
"CharNextA" => ["str", ["str"]],
|
||||
"CharNextExA" => ["str", ["long", "str", "long"]],
|
||||
"CharNextExW" => ["wstr", ["long", "wstr", "long"]],
|
||||
"CharNextW" => ["wstr", ["wstr"]],
|
||||
"CharPrevA" => ["str", ["str", "str"]],
|
||||
"CharPrevExA" => ["str", ["long", "str", "str", "long"]],
|
||||
"CharPrevExW" => ["str", ["long", "wstr", "wstr", "long"]],
|
||||
"CharPrevW" => ["wstr", ["wstr", "wstr"]],
|
||||
"CharToOemA" => ["long", ["str", "str"]],
|
||||
"CharToOemBuffA" => ["long", ["str", "str", "long"]],
|
||||
"CharToOemBuffW" => ["long", ["wstr", "str", "long"]],
|
||||
"CharToOemW" => ["long", ["wstr", "str"]],
|
||||
"CharUpperA" => ["str", ["str"]],
|
||||
"CharUpperBuffA" => ["long", ["str", "long"]],
|
||||
"CharUpperBuffW" => ["long", ["wstr", "long"]],
|
||||
"CharUpperW" => ["wstr", ["wstr"]],
|
||||
"CheckDlgButton" => ["long", ["long", "long", "long"]],
|
||||
"CheckMenuItem" => ["long", ["long", "long", "long"]],
|
||||
"CheckMenuRadioItem" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"CheckRadioButton" => ["long", ["long", "long", "long", "long"]],
|
||||
"ChildWindowFromPoint" => ["long", ["long", "long", "long"]],
|
||||
"ChildWindowFromPointEx" => ["long", ["long", "long", "long", "long"]],
|
||||
"ClientToScreen" => ["long", ["long", "ptr"]],
|
||||
"ClipCursor" => ["long", ["ptr"]],
|
||||
"CloseClipboard" => ["long", []],
|
||||
"CloseDesktop" => ["long", ["long"]],
|
||||
"CloseDriver16" => ["long", ["long", "long", "long"]],
|
||||
"CloseWindow" => ["long", ["long"]],
|
||||
"CloseWindowStation" => ["long", ["long"]],
|
||||
"CopyAcceleratorTableA" => ["long", ["long", "ptr", "long"]],
|
||||
"CopyAcceleratorTableW" => ["long", ["long", "ptr", "long"]],
|
||||
"CopyIcon" => ["long", ["long"]],
|
||||
"CopyImage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"CopyRect" => ["long", ["ptr", "ptr"]],
|
||||
"CountClipboardFormats" => ["long", []],
|
||||
"CreateAcceleratorTableA" => ["long", ["ptr", "long"]],
|
||||
"CreateAcceleratorTableW" => ["long", ["ptr", "long"]],
|
||||
"CreateCaret" => ["long", ["long", "long", "long", "long"]],
|
||||
"CreateCursor" => ["long", ["long", "long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"CreateDesktopA" => ["long", ["str", "str", "ptr", "long", "long", "ptr"]],
|
||||
"CreateDesktopW" => ["long", ["wstr", "wstr", "ptr", "long", "long", "ptr"]],
|
||||
"CreateDialogIndirectParam16" => ["long", ["long", "ptr", "long", "ptr", "long"]],
|
||||
"CreateDialogIndirectParamA" => ["long", ["long", "ptr", "long", "ptr", "long"]],
|
||||
"CreateDialogIndirectParamAorW" => ["long", ["long", "ptr", "long", "ptr", "long"]],
|
||||
"CreateDialogIndirectParamW" => ["long", ["long", "ptr", "long", "ptr", "long"]],
|
||||
"CreateDialogParamA" => ["long", ["long", "str", "long", "ptr", "long"]],
|
||||
"CreateDialogParamW" => ["long", ["long", "wstr", "long", "ptr", "long"]],
|
||||
"CreateIcon" => ["long", ["long", "long", "long", "long", "long", "ptr", "ptr"]],
|
||||
"CreateIconFromResource" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"CreateIconFromResourceEx" => ["long", ["ptr", "long", "long", "long", "long", "long", "long"]],
|
||||
"CreateIconIndirect" => ["long", ["ptr"]],
|
||||
"CreateMDIWindowA" => ["long", ["str", "str", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"CreateMDIWindowW" => ["long", ["wstr", "wstr", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"CreateMenu" => ["long", []],
|
||||
"CreatePopupMenu" => ["long", []],
|
||||
"CreateWindowExA" => ["long", ["long", "str", "str", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"CreateWindowExW" => ["long", ["long", "wstr", "wstr", "long", "long", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"CreateWindowStationW" => ["long", ["wstr", "long", "long", "ptr"]],
|
||||
"DdeAbandonTransaction" => ["long", ["long", "long", "long"]],
|
||||
"DdeAccessData" => ["ptr", ["long", "ptr"]],
|
||||
"DdeAddData" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"DdeClientTransaction" => ["long", ["ptr", "long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"DdeCmpStringHandles" => ["long", ["long", "long"]],
|
||||
"DdeConnect" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"DdeConnectList" => ["long", ["long", "long", "long", "long", "ptr"]],
|
||||
"DdeCreateDataHandle" => ["long", ["long", "ptr", "long", "long", "long", "long", "long"]],
|
||||
"DdeCreateStringHandleA" => ["long", ["long", "str", "long"]],
|
||||
"DdeCreateStringHandleW" => ["long", ["long", "wstr", "long"]],
|
||||
"DdeDisconnect" => ["long", ["long"]],
|
||||
"DdeDisconnectList" => ["long", ["long"]],
|
||||
"DdeEnableCallback" => ["long", ["long", "long", "long"]],
|
||||
"DdeFreeDataHandle" => ["long", ["long"]],
|
||||
"DdeFreeStringHandle" => ["long", ["long", "long"]],
|
||||
"DdeGetData" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"DdeGetLastError" => ["long", ["long"]],
|
||||
"DdeImpersonateClient" => ["long", ["long"]],
|
||||
"DdeInitializeA" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"DdeInitializeW" => ["long", ["ptr", "ptr", "long", "long"]],
|
||||
"DdeKeepStringHandle" => ["long", ["long", "long"]],
|
||||
"DdeNameService" => ["long", ["long", "long", "long", "long"]],
|
||||
"DdePostAdvise" => ["long", ["long", "long", "long"]],
|
||||
"DdeQueryConvInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"DdeQueryNextServer" => ["long", ["long", "long"]],
|
||||
"DdeQueryStringA" => ["long", ["long", "long", "str", "long", "long"]],
|
||||
"DdeQueryStringW" => ["long", ["long", "long", "wstr", "long", "long"]],
|
||||
"DdeReconnect" => ["long", ["long"]],
|
||||
"DdeSetQualityOfService" => ["long", ["long", "ptr", "ptr"]],
|
||||
"DdeSetUserHandle" => ["long", ["long", "long", "long"]],
|
||||
"DdeUnaccessData" => ["long", ["long"]],
|
||||
"DdeUninitialize" => ["long", ["long"]],
|
||||
"DefDlgProcA" => ["long", ["long", "long", "long", "long"]],
|
||||
"DefDlgProcW" => ["long", ["long", "long", "long", "long"]],
|
||||
"DefDriverProc16" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"DefFrameProcA" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"DefFrameProcW" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"DefMDIChildProcA" => ["long", ["long", "long", "long", "long"]],
|
||||
"DefMDIChildProcW" => ["long", ["long", "long", "long", "long"]],
|
||||
"DefWindowProcA" => ["long", ["long", "long", "long", "long"]],
|
||||
"DefWindowProcW" => ["long", ["long", "long", "long", "long"]],
|
||||
"DeferWindowPos" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"DeleteMenu" => ["long", ["long", "long", "long"]],
|
||||
"DeregisterShellHookWindow" => ["long", ["long"]],
|
||||
"DestroyAcceleratorTable" => ["long", ["long"]],
|
||||
"DestroyCaret" => ["long", []],
|
||||
"DestroyCursor" => ["long", ["long"]],
|
||||
"DestroyIcon" => ["long", ["long"]],
|
||||
"DestroyIcon32" => ["long", ["long", "long"]],
|
||||
"DestroyMenu" => ["long", ["long"]],
|
||||
"DestroyWindow" => ["long", ["long"]],
|
||||
"DialogBoxIndirectParam16" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"DialogBoxIndirectParamA" => ["long", ["long", "ptr", "long", "ptr", "long"]],
|
||||
"DialogBoxIndirectParamAorW" => ["long", ["long", "ptr", "long", "ptr", "long", "long"]],
|
||||
"DialogBoxIndirectParamW" => ["long", ["long", "ptr", "long", "ptr", "long"]],
|
||||
"DialogBoxParamA" => ["long", ["long", "str", "long", "ptr", "long"]],
|
||||
"DialogBoxParamW" => ["long", ["long", "wstr", "long", "ptr", "long"]],
|
||||
"DispatchMessageA" => ["long", ["ptr"]],
|
||||
"DispatchMessageW" => ["long", ["ptr"]],
|
||||
"DlgDirListA" => ["long", ["long", "str", "long", "long", "long"]],
|
||||
"DlgDirListComboBoxA" => ["long", ["long", "str", "long", "long", "long"]],
|
||||
"DlgDirListComboBoxW" => ["long", ["long", "wstr", "long", "long", "long"]],
|
||||
"DlgDirListW" => ["long", ["long", "wstr", "long", "long", "long"]],
|
||||
"DlgDirSelectComboBoxExA" => ["long", ["long", "str", "long", "long"]],
|
||||
"DlgDirSelectComboBoxExW" => ["long", ["long", "wstr", "long", "long"]],
|
||||
"DlgDirSelectExA" => ["long", ["long", "str", "long", "long"]],
|
||||
"DlgDirSelectExW" => ["long", ["long", "wstr", "long", "long"]],
|
||||
"DragDetect" => ["long", ["long", "long", "long"]],
|
||||
"DrawAnimatedRects" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"DrawCaption" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"DrawCaptionTempA" => ["long", ["long", "long", "ptr", "long", "long", "str", "long"]],
|
||||
"DrawCaptionTempW" => ["long", ["long", "long", "ptr", "long", "long", "wstr", "long"]],
|
||||
"DrawEdge" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"DrawFocusRect" => ["long", ["long", "ptr"]],
|
||||
"DrawFrameControl" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"DrawIcon" => ["long", ["long", "long", "long", "long"]],
|
||||
"DrawIconEx" => ["long", ["long", "long", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"DrawMenuBar" => ["long", ["long"]],
|
||||
"DrawMenuBarTemp" => ["long", ["long", "long", "ptr", "long", "long"]],
|
||||
"DrawStateA" => ["long", ["long", "long", "ptr", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"DrawStateW" => ["long", ["long", "long", "ptr", "long", "long", "long", "long", "long", "long", "long"]],
|
||||
"DrawTextA" => ["long", ["long", "str", "long", "ptr", "long"]],
|
||||
"DrawTextExA" => ["long", ["long", "str", "long", "ptr", "long", "ptr"]],
|
||||
"DrawTextExW" => ["long", ["long", "wstr", "long", "ptr", "long", "ptr"]],
|
||||
"DrawTextW" => ["long", ["long", "wstr", "long", "ptr", "long"]],
|
||||
"EditWndProc" => ["long", ["long", "long", "long", "long"]],
|
||||
"EditWndProcW" => ["long", ["long", "long", "long", "long"]],
|
||||
"EmptyClipboard" => ["long", []],
|
||||
"EnableMenuItem" => ["long", ["long", "long", "long"]],
|
||||
"EnableScrollBar" => ["long", ["long", "long", "long"]],
|
||||
"EnableWindow" => ["long", ["long", "long"]],
|
||||
"EndDeferWindowPos" => ["long", ["long"]],
|
||||
"EndDialog" => ["long", ["long", "long"]],
|
||||
"EndMenu" => ["void", []],
|
||||
"EndPaint" => ["long", ["long", "ptr"]],
|
||||
"EnumChildWindows" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumClipboardFormats" => ["long", ["long"]],
|
||||
"EnumDesktopWindows" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumDisplayDevicesA" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"EnumDisplayDevicesW" => ["long", ["ptr", "long", "ptr", "long"]],
|
||||
"EnumDisplayMonitors" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"EnumDisplaySettingsA" => ["long", ["str", "long", "ptr"]],
|
||||
"EnumDisplaySettingsExA" => ["long", ["str", "long", "ptr", "long"]],
|
||||
"EnumDisplaySettingsExW" => ["long", ["wstr", "long", "ptr", "long"]],
|
||||
"EnumDisplaySettingsW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"EnumPropsA" => ["long", ["long", "ptr"]],
|
||||
"EnumPropsExA" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumPropsExW" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumPropsW" => ["long", ["long", "ptr"]],
|
||||
"EnumThreadWindows" => ["long", ["long", "ptr", "long"]],
|
||||
"EnumWindows" => ["long", ["ptr", "long"]],
|
||||
"EqualRect" => ["long", ["ptr", "ptr"]],
|
||||
"ExcludeUpdateRgn" => ["long", ["long", "long"]],
|
||||
"ExitWindowsEx" => ["long", ["long", "long"]],
|
||||
"FillRect" => ["long", ["long", "ptr", "long"]],
|
||||
"FindWindowA" => ["long", ["str", "str"]],
|
||||
"FindWindowExA" => ["long", ["long", "long", "str", "str"]],
|
||||
"FindWindowExW" => ["long", ["long", "long", "wstr", "wstr"]],
|
||||
"FindWindowW" => ["long", ["wstr", "wstr"]],
|
||||
"FlashWindow" => ["long", ["long", "long"]],
|
||||
"FrameRect" => ["long", ["long", "ptr", "long"]],
|
||||
"FreeDDElParam" => ["long", ["long", "long"]],
|
||||
"GetActiveWindow" => ["long", []],
|
||||
"GetAncestor" => ["long", ["long", "long"]],
|
||||
"GetAppCompatFlags" => ["long", ["long"]],
|
||||
"GetAsyncKeyState" => ["long", ["long"]],
|
||||
"GetCapture" => ["long", []],
|
||||
"GetCaretBlinkTime" => ["long", []],
|
||||
"GetCaretPos" => ["long", ["ptr"]],
|
||||
"GetClassInfoA" => ["long", ["long", "str", "ptr"]],
|
||||
"GetClassInfoExA" => ["long", ["long", "str", "ptr"]],
|
||||
"GetClassInfoExW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"GetClassInfoW" => ["long", ["long", "wstr", "ptr"]],
|
||||
"GetClassLongA" => ["long", ["long", "long"]],
|
||||
"GetClassLongW" => ["long", ["long", "long"]],
|
||||
"GetClassNameA" => ["long", ["long", "str", "long"]],
|
||||
"GetClassNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"GetClassWord" => ["long", ["long", "long"]],
|
||||
"GetClientRect" => ["long", ["long", "ptr"]],
|
||||
"GetClipCursor" => ["long", ["ptr"]],
|
||||
"GetClipboardData" => ["long", ["long"]],
|
||||
"GetClipboardFormatNameA" => ["long", ["long", "str", "long"]],
|
||||
"GetClipboardFormatNameW" => ["long", ["long", "wstr", "long"]],
|
||||
"GetClipboardOwner" => ["long", []],
|
||||
"GetClipboardSequenceNumber" => ["long", []],
|
||||
"GetClipboardViewer" => ["long", []],
|
||||
"GetCursor" => ["long", []],
|
||||
"GetCursorPos" => ["long", ["ptr"]],
|
||||
"GetDC" => ["long", ["long"]],
|
||||
"GetDCEx" => ["long", ["long", "long", "long"]],
|
||||
"GetDesktopWindow" => ["long", []],
|
||||
"GetDialogBaseUnits" => ["long", []],
|
||||
"GetDlgCtrlID" => ["long", ["long"]],
|
||||
"GetDlgItem" => ["long", ["long", "long"]],
|
||||
"GetDlgItemInt" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"GetDlgItemTextA" => ["long", ["long", "long", "str", "long"]],
|
||||
"GetDlgItemTextW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"GetDoubleClickTime" => ["long", []],
|
||||
"GetDriverModuleHandle16" => ["long", ["long"]],
|
||||
"GetFocus" => ["long", []],
|
||||
"GetForegroundWindow" => ["long", []],
|
||||
"GetIconInfo" => ["long", ["long", "ptr"]],
|
||||
"GetInputState" => ["long", []],
|
||||
"GetInternalWindowPos" => ["long", ["long", "ptr", "ptr"]],
|
||||
"GetKBCodePage" => ["long", []],
|
||||
"GetKeyNameTextA" => ["long", ["long", "str", "long"]],
|
||||
"GetKeyNameTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"GetKeyState" => ["long", ["long"]],
|
||||
"GetKeyboardLayout" => ["long", ["long"]],
|
||||
"GetKeyboardLayoutList" => ["long", ["long", "ptr"]],
|
||||
"GetKeyboardLayoutNameA" => ["long", ["str"]],
|
||||
"GetKeyboardLayoutNameW" => ["long", ["wstr"]],
|
||||
"GetKeyboardState" => ["long", ["ptr"]],
|
||||
"GetKeyboardType" => ["long", ["long"]],
|
||||
"GetLastActivePopup" => ["long", ["long"]],
|
||||
"GetMenu" => ["long", ["long"]],
|
||||
"GetMenuCheckMarkDimensions" => ["long", []],
|
||||
"GetMenuContextHelpId" => ["long", ["long"]],
|
||||
"GetMenuDefaultItem" => ["long", ["long", "long", "long"]],
|
||||
"GetMenuInfo" => ["long", ["long", "ptr"]],
|
||||
"GetMenuItemCount" => ["long", ["long"]],
|
||||
"GetMenuItemID" => ["long", ["long", "long"]],
|
||||
"GetMenuItemInfoA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetMenuItemInfoW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetMenuItemRect" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"GetMenuState" => ["long", ["long", "long", "long"]],
|
||||
"GetMenuStringA" => ["long", ["long", "long", "str", "long", "long"]],
|
||||
"GetMenuStringW" => ["long", ["long", "long", "wstr", "long", "long"]],
|
||||
"GetMessageA" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"GetMessageExtraInfo" => ["long", []],
|
||||
"GetMessagePos" => ["long", []],
|
||||
"GetMessageTime" => ["long", []],
|
||||
"GetMessageW" => ["long", ["ptr", "long", "long", "long"]],
|
||||
"GetMonitorInfoA" => ["long", ["long", "ptr"]],
|
||||
"GetMonitorInfoW" => ["long", ["long", "ptr"]],
|
||||
"GetNextDlgGroupItem" => ["long", ["long", "long", "long"]],
|
||||
"GetNextDlgTabItem" => ["long", ["long", "long", "long"]],
|
||||
"GetOpenClipboardWindow" => ["long", []],
|
||||
"GetParent" => ["long", ["long"]],
|
||||
"GetPriorityClipboardFormat" => ["long", ["ptr", "long"]],
|
||||
"GetProcessDefaultLayout" => ["long", ["ptr"]],
|
||||
"GetProcessWindowStation" => ["long", []],
|
||||
"GetProgmanWindow" => ["long", []],
|
||||
"GetPropA" => ["long", ["long", "str"]],
|
||||
"GetPropW" => ["long", ["long", "wstr"]],
|
||||
"GetQueueStatus" => ["long", ["long"]],
|
||||
"GetScrollInfo" => ["long", ["long", "long", "ptr"]],
|
||||
"GetScrollPos" => ["long", ["long", "long"]],
|
||||
"GetScrollRange" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"GetShellWindow" => ["long", []],
|
||||
"GetSubMenu" => ["long", ["long", "long"]],
|
||||
"GetSysColor" => ["long", ["long"]],
|
||||
"GetSysColorBrush" => ["long", ["long"]],
|
||||
"GetSystemMenu" => ["long", ["long", "long"]],
|
||||
"GetSystemMetrics" => ["long", ["long"]],
|
||||
"GetTabbedTextExtentA" => ["long", ["long", "str", "long", "long", "ptr"]],
|
||||
"GetTabbedTextExtentW" => ["long", ["long", "wstr", "long", "long", "ptr"]],
|
||||
"GetTaskmanWindow" => ["long", []],
|
||||
"GetThreadDesktop" => ["long", ["long"]],
|
||||
"GetTopWindow" => ["long", ["long"]],
|
||||
"GetUpdateRect" => ["long", ["long", "ptr", "long"]],
|
||||
"GetUpdateRgn" => ["long", ["long", "long", "long"]],
|
||||
"GetUserObjectInformationA" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"GetUserObjectInformationW" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"GetUserObjectSecurity" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"GetWindow" => ["long", ["long", "long"]],
|
||||
"GetWindowContextHelpId" => ["long", ["long"]],
|
||||
"GetWindowDC" => ["long", ["long"]],
|
||||
"GetWindowInfo" => ["long", ["long", "ptr"]],
|
||||
"GetWindowLongA" => ["long", ["long", "long"]],
|
||||
"GetWindowLongW" => ["long", ["long", "long"]],
|
||||
"GetWindowModuleFileNameA" => ["long", ["long", "str", "long"]],
|
||||
"GetWindowModuleFileNameW" => ["long", ["long", "str", "long"]],
|
||||
"GetWindowPlacement" => ["long", ["long", "ptr"]],
|
||||
"GetWindowRect" => ["long", ["long", "ptr"]],
|
||||
"GetWindowRgn" => ["long", ["long", "long"]],
|
||||
"GetWindowTextA" => ["long", ["long", "str", "long"]],
|
||||
"GetWindowTextLengthA" => ["long", ["long"]],
|
||||
"GetWindowTextLengthW" => ["long", ["long"]],
|
||||
"GetWindowTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"GetWindowThreadProcessId" => ["long", ["long", "ptr"]],
|
||||
"GetWindowWord" => ["long", ["long", "long"]],
|
||||
"GrayStringA" => ["long", ["long", "long", "ptr", "long", "long", "long", "long", "long", "long"]],
|
||||
"GrayStringW" => ["long", ["long", "long", "ptr", "long", "long", "long", "long", "long", "long"]],
|
||||
"HideCaret" => ["long", ["long"]],
|
||||
"HiliteMenuItem" => ["long", ["long", "long", "long", "long"]],
|
||||
"ImpersonateDdeClientWindow" => ["long", ["long", "long"]],
|
||||
"InSendMessage" => ["long", []],
|
||||
"InSendMessageEx" => ["long", ["ptr"]],
|
||||
"InflateRect" => ["long", ["ptr", "long", "long"]],
|
||||
"InsertMenuA" => ["long", ["long", "long", "long", "long", "str"]],
|
||||
"InsertMenuItemA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"InsertMenuItemW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"InsertMenuW" => ["long", ["long", "long", "long", "long", "wstr"]],
|
||||
"InternalGetWindowText" => ["long", ["long", "wstr", "long"]],
|
||||
"IntersectRect" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"InvalidateRect" => ["long", ["long", "ptr", "long"]],
|
||||
"InvalidateRgn" => ["long", ["long", "long", "long"]],
|
||||
"InvertRect" => ["long", ["long", "ptr"]],
|
||||
"IsCharAlphaA" => ["long", ["long"]],
|
||||
"IsCharAlphaNumericA" => ["long", ["long"]],
|
||||
"IsCharAlphaNumericW" => ["long", ["long"]],
|
||||
"IsCharAlphaW" => ["long", ["long"]],
|
||||
"IsCharLowerA" => ["long", ["long"]],
|
||||
"IsCharLowerW" => ["long", ["long"]],
|
||||
"IsCharUpperA" => ["long", ["long"]],
|
||||
"IsCharUpperW" => ["long", ["long"]],
|
||||
"IsChild" => ["long", ["long", "long"]],
|
||||
"IsClipboardFormatAvailable" => ["long", ["long"]],
|
||||
"IsDialogMessage" => ["long", ["long", "ptr"]],
|
||||
"IsDialogMessageA" => ["long", ["long", "ptr"]],
|
||||
"IsDialogMessageW" => ["long", ["long", "ptr"]],
|
||||
"IsDlgButtonChecked" => ["long", ["long", "long"]],
|
||||
"IsIconic" => ["long", ["long"]],
|
||||
"IsMenu" => ["long", ["long"]],
|
||||
"IsRectEmpty" => ["long", ["ptr"]],
|
||||
"IsWinEventHookInstalled" => ["long", ["long"]],
|
||||
"IsWindow" => ["long", ["long"]],
|
||||
"IsWindowEnabled" => ["long", ["long"]],
|
||||
"IsWindowUnicode" => ["long", ["long"]],
|
||||
"IsWindowVisible" => ["long", ["long"]],
|
||||
"IsZoomed" => ["long", ["long"]],
|
||||
"KillSystemTimer" => ["long", ["long", "long"]],
|
||||
"KillTimer" => ["long", ["long", "long"]],
|
||||
"LoadAcceleratorsA" => ["long", ["long", "str"]],
|
||||
"LoadAcceleratorsW" => ["long", ["long", "wstr"]],
|
||||
"LoadBitmapA" => ["long", ["long", "str"]],
|
||||
"LoadBitmapW" => ["long", ["long", "wstr"]],
|
||||
"LoadCursorA" => ["long", ["long", "str"]],
|
||||
"LoadCursorFromFileA" => ["long", ["str"]],
|
||||
"LoadCursorFromFileW" => ["long", ["wstr"]],
|
||||
"LoadCursorW" => ["long", ["long", "wstr"]],
|
||||
"LoadIconA" => ["long", ["long", "str"]],
|
||||
"LoadIconW" => ["long", ["long", "wstr"]],
|
||||
"LoadImageA" => ["long", ["long", "str", "long", "long", "long", "long"]],
|
||||
"LoadImageW" => ["long", ["long", "wstr", "long", "long", "long", "long"]],
|
||||
"LoadKeyboardLayoutA" => ["long", ["str", "long"]],
|
||||
"LoadKeyboardLayoutW" => ["long", ["wstr", "long"]],
|
||||
"LoadLocalFonts" => ["void", []],
|
||||
"LoadMenuA" => ["long", ["long", "str"]],
|
||||
"LoadMenuIndirectA" => ["long", ["ptr"]],
|
||||
"LoadMenuIndirectW" => ["long", ["ptr"]],
|
||||
"LoadMenuW" => ["long", ["long", "wstr"]],
|
||||
"LoadStringA" => ["long", ["long", "long", "str", "long"]],
|
||||
"LoadStringW" => ["long", ["long", "long", "wstr", "long"]],
|
||||
"LockSetForegroundWindow" => ["long", ["long"]],
|
||||
"LockWindowUpdate" => ["long", ["long"]],
|
||||
"LookupIconIdFromDirectory" => ["long", ["ptr", "long"]],
|
||||
"LookupIconIdFromDirectoryEx" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"MapDialogRect" => ["long", ["long", "ptr"]],
|
||||
"MapVirtualKeyA" => ["long", ["long", "long"]],
|
||||
"MapVirtualKeyExA" => ["long", ["long", "long", "long"]],
|
||||
"MapVirtualKeyExW" => ["long", ["long", "long", "long"]],
|
||||
"MapVirtualKeyW" => ["long", ["long", "long"]],
|
||||
"MapWindowPoints" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"MenuItemFromPoint" => ["long", ["long", "long", "long", "long"]],
|
||||
"MessageBeep" => ["long", ["long"]],
|
||||
"MessageBoxA" => ["long", ["long", "str", "str", "long"]],
|
||||
"MessageBoxExA" => ["long", ["long", "str", "str", "long", "long"]],
|
||||
"MessageBoxExW" => ["long", ["long", "wstr", "wstr", "long", "long"]],
|
||||
"MessageBoxIndirectA" => ["long", ["ptr"]],
|
||||
"MessageBoxIndirectW" => ["long", ["ptr"]],
|
||||
"MessageBoxW" => ["long", ["long", "wstr", "wstr", "long"]],
|
||||
"ModifyMenuA" => ["long", ["long", "long", "long", "long", "str"]],
|
||||
"ModifyMenuW" => ["long", ["long", "long", "long", "long", "wstr"]],
|
||||
"MonitorFromPoint" => ["long", ["long", "long", "long"]],
|
||||
"MonitorFromRect" => ["long", ["ptr", "long"]],
|
||||
"MonitorFromWindow" => ["long", ["long", "long"]],
|
||||
"MoveWindow" => ["long", ["long", "long", "long", "long", "long", "long"]],
|
||||
"MsgWaitForMultipleObjects" => ["long", ["long", "ptr", "long", "long", "long"]],
|
||||
"MsgWaitForMultipleObjectsEx" => ["long", ["long", "ptr", "long", "long", "long"]],
|
||||
"NotifyWinEvent" => ["void", ["long", "long", "long", "long"]],
|
||||
"OemKeyScan" => ["long", ["long"]],
|
||||
"OemToCharA" => ["long", ["str", "str"]],
|
||||
"OemToCharBuffA" => ["long", ["str", "str", "long"]],
|
||||
"OemToCharBuffW" => ["long", ["str", "wstr", "long"]],
|
||||
"OemToCharW" => ["long", ["str", "wstr"]],
|
||||
"OffsetRect" => ["long", ["ptr", "long", "long"]],
|
||||
"OpenClipboard" => ["long", ["long"]],
|
||||
"OpenDesktopA" => ["long", ["str", "long", "long", "long"]],
|
||||
"OpenDriver16" => ["long", ["str", "str", "long"]],
|
||||
"OpenIcon" => ["long", ["long"]],
|
||||
"PackDDElParam" => ["long", ["long", "long", "long"]],
|
||||
"PaintDesktop" => ["long", ["long"]],
|
||||
"PeekMessageA" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"PeekMessageW" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"PostAppMessage16" => ["long", ["long", "long", "long", "long"]],
|
||||
"PostMessageA" => ["long", ["long", "long", "long", "long"]],
|
||||
"PostMessageW" => ["long", ["long", "long", "long", "long"]],
|
||||
"PostQuitMessage" => ["void", ["long"]],
|
||||
"PostThreadMessageA" => ["long", ["long", "long", "long", "long"]],
|
||||
"PostThreadMessageW" => ["long", ["long", "long", "long", "long"]],
|
||||
"PrivateExtractIconExA" => ["long", ["str", "long", "ptr", "ptr", "long"]],
|
||||
"PrivateExtractIconExW" => ["long", ["wstr", "long", "ptr", "ptr", "long"]],
|
||||
"PrivateExtractIconsA" => ["long", ["str", "long", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"PrivateExtractIconsW" => ["long", ["wstr", "long", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"PtInRect" => ["long", ["ptr", "long", "long"]],
|
||||
"RedrawWindow" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"RegisterClassA" => ["long", ["ptr"]],
|
||||
"RegisterClassExA" => ["long", ["ptr"]],
|
||||
"RegisterClassExW" => ["long", ["ptr"]],
|
||||
"RegisterClassW" => ["long", ["ptr"]],
|
||||
"RegisterClipboardFormatA" => ["long", ["str"]],
|
||||
"RegisterClipboardFormatW" => ["long", ["wstr"]],
|
||||
"RegisterDeviceNotificationA" => ["long", ["long", "ptr", "long"]],
|
||||
"RegisterHotKey" => ["long", ["long", "long", "long", "long"]],
|
||||
"RegisterLogonProcess" => ["long", ["long", "long"]],
|
||||
"RegisterShellHookWindow" => ["long", ["long"]],
|
||||
"RegisterSystemThread" => ["void", ["long", "long"]],
|
||||
"RegisterTasklist" => ["long", ["long"]],
|
||||
"RegisterWindowMessageA" => ["long", ["str"]],
|
||||
"RegisterWindowMessageW" => ["long", ["wstr"]],
|
||||
"ReleaseCapture" => ["long", []],
|
||||
"ReleaseDC" => ["long", ["long", "long"]],
|
||||
"RemoveMenu" => ["long", ["long", "long", "long"]],
|
||||
"RemovePropA" => ["long", ["long", "str"]],
|
||||
"RemovePropW" => ["long", ["long", "wstr"]],
|
||||
"ReplyMessage" => ["long", ["long"]],
|
||||
"ReuseDDElParam" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"ScreenToClient" => ["long", ["long", "ptr"]],
|
||||
"ScrollChildren" => ["void", ["long", "long", "long", "long"]],
|
||||
"ScrollDC" => ["long", ["long", "long", "long", "ptr", "ptr", "long", "ptr"]],
|
||||
"ScrollWindow" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"ScrollWindowEx" => ["long", ["long", "long", "long", "ptr", "ptr", "long", "ptr", "long"]],
|
||||
"SendDlgItemMessageA" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"SendDlgItemMessageW" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"SendDriverMessage16" => ["long", ["long", "long", "long", "long"]],
|
||||
"SendInput" => ["long", ["long", "ptr", "long"]],
|
||||
"SendMessageA" => ["long", ["long", "long", "long", "long"]],
|
||||
"SendMessageCallbackA" => ["long", ["long", "long", "long", "long", "ptr", "long"]],
|
||||
"SendMessageCallbackW" => ["long", ["long", "long", "long", "long", "ptr", "long"]],
|
||||
"SendMessageTimeoutA" => ["long", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"SendMessageTimeoutW" => ["long", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"SendMessageW" => ["long", ["long", "long", "long", "long"]],
|
||||
"SendNotifyMessageA" => ["long", ["long", "long", "long", "long"]],
|
||||
"SendNotifyMessageW" => ["long", ["long", "long", "long", "long"]],
|
||||
"SetActiveWindow" => ["long", ["long"]],
|
||||
"SetCapture" => ["long", ["long"]],
|
||||
"SetCaretBlinkTime" => ["long", ["long"]],
|
||||
"SetCaretPos" => ["long", ["long", "long"]],
|
||||
"SetClassLongA" => ["long", ["long", "long", "long"]],
|
||||
"SetClassLongW" => ["long", ["long", "long", "long"]],
|
||||
"SetClassWord" => ["long", ["long", "long", "long"]],
|
||||
"SetClipboardData" => ["long", ["long", "long"]],
|
||||
"SetClipboardViewer" => ["long", ["long"]],
|
||||
"SetCursor" => ["long", ["long"]],
|
||||
"SetCursorPos" => ["long", ["long", "long"]],
|
||||
"SetDebugErrorLevel" => ["void", ["long"]],
|
||||
"SetDeskWallPaper" => ["long", ["str"]],
|
||||
"SetDlgItemInt" => ["long", ["long", "long", "long", "long"]],
|
||||
"SetDlgItemTextA" => ["long", ["long", "long", "str"]],
|
||||
"SetDlgItemTextW" => ["long", ["long", "long", "wstr"]],
|
||||
"SetDoubleClickTime" => ["long", ["long"]],
|
||||
"SetFocus" => ["long", ["long"]],
|
||||
"SetForegroundWindow" => ["long", ["long"]],
|
||||
"SetInternalWindowPos" => ["void", ["long", "long", "ptr", "ptr"]],
|
||||
"SetKeyboardState" => ["long", ["ptr"]],
|
||||
"SetLastErrorEx" => ["void", ["long", "long"]],
|
||||
"SetLogonNotifyWindow" => ["long", ["long", "long"]],
|
||||
"SetMenu" => ["long", ["long", "long"]],
|
||||
"SetMenuContextHelpId" => ["long", ["long", "long"]],
|
||||
"SetMenuDefaultItem" => ["long", ["long", "long", "long"]],
|
||||
"SetMenuInfo" => ["long", ["long", "ptr"]],
|
||||
"SetMenuItemBitmaps" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"SetMenuItemInfoA" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetMenuItemInfoW" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetMessageQueue" => ["long", ["long"]],
|
||||
"SetParent" => ["long", ["long", "long"]],
|
||||
"SetProcessDefaultLayout" => ["long", ["long"]],
|
||||
"SetProcessWindowStation" => ["long", ["long"]],
|
||||
"SetProgmanWindow" => ["long", ["long"]],
|
||||
"SetPropA" => ["long", ["long", "str", "long"]],
|
||||
"SetPropW" => ["long", ["long", "wstr", "long"]],
|
||||
"SetRect" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"SetRectEmpty" => ["long", ["ptr"]],
|
||||
"SetScrollPos" => ["long", ["long", "long", "long", "long"]],
|
||||
"SetScrollRange" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"SetShellWindow" => ["long", ["long"]],
|
||||
"SetShellWindowEx" => ["long", ["long", "long"]],
|
||||
"SetSysColors" => ["long", ["long", "ptr", "ptr"]],
|
||||
"SetSysColorsTemp" => ["long", ["ptr", "ptr", "long"]],
|
||||
"SetSystemCursor" => ["long", ["long", "long"]],
|
||||
"SetSystemMenu" => ["long", ["long", "long"]],
|
||||
"SetSystemTimer" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetTaskmanWindow" => ["long", ["long"]],
|
||||
"SetThreadDesktop" => ["long", ["long"]],
|
||||
"SetTimer" => ["long", ["long", "long", "long", "ptr"]],
|
||||
"SetUserObjectInformationA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SetUserObjectSecurity" => ["long", ["long", "ptr", "ptr"]],
|
||||
"SetWinEventHook" => ["long", ["long", "long", "long", "ptr", "long", "long", "long"]],
|
||||
"SetWindowContextHelpId" => ["long", ["long", "long"]],
|
||||
"SetWindowLongA" => ["long", ["long", "long", "long"]],
|
||||
"SetWindowLongW" => ["long", ["long", "long", "long"]],
|
||||
"SetWindowPlacement" => ["long", ["long", "ptr"]],
|
||||
"SetWindowPos" => ["long", ["long", "long", "long", "long", "long", "long", "long"]],
|
||||
"SetWindowRgn" => ["long", ["long", "long", "long"]],
|
||||
"SetWindowStationUser" => ["long", ["long", "long"]],
|
||||
"SetWindowText" => ["long", ["long", "str"]],
|
||||
"SetWindowTextA" => ["long", ["long", "str"]],
|
||||
"SetWindowTextW" => ["long", ["long", "wstr"]],
|
||||
"SetWindowWord" => ["long", ["long", "long", "long"]],
|
||||
"SetWindowsHookA" => ["long", ["long", "ptr"]],
|
||||
"SetWindowsHookEx16" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"SetWindowsHookExA" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"SetWindowsHookExW" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"SetWindowsHookW" => ["long", ["long", "ptr"]],
|
||||
"ShowCaret" => ["long", ["long"]],
|
||||
"ShowCursor" => ["long", ["long"]],
|
||||
"ShowOwnedPopups" => ["long", ["long", "long"]],
|
||||
"ShowScrollBar" => ["long", ["long", "long", "long"]],
|
||||
"ShowWindow" => ["long", ["long", "long"]],
|
||||
"ShowWindowAsync" => ["long", ["long", "long"]],
|
||||
"SubtractRect" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"SwapMouseButton" => ["long", ["long"]],
|
||||
"SwitchToThisWindow" => ["void", ["long", "long"]],
|
||||
"SystemParametersInfoA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SystemParametersInfoW" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"TabbedTextOutA" => ["long", ["long", "long", "long", "str", "long", "long", "ptr", "long"]],
|
||||
"TabbedTextOutW" => ["long", ["long", "long", "long", "wstr", "long", "long", "ptr", "long"]],
|
||||
"TileWindows" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"ToAscii" => ["long", ["long", "long", "ptr", "ptr", "long"]],
|
||||
"ToAsciiEx" => ["long", ["long", "long", "ptr", "ptr", "long", "long"]],
|
||||
"ToUnicode" => ["long", ["long", "long", "ptr", "wstr", "long", "long"]],
|
||||
"ToUnicodeEx" => ["long", ["long", "long", "ptr", "wstr", "long", "long", "long"]],
|
||||
"TrackPopupMenu" => ["long", ["long", "long", "long", "long", "long", "long", "ptr"]],
|
||||
"TrackPopupMenuEx" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
|
||||
"TranslateAccelerator" => ["long", ["long", "long", "ptr"]],
|
||||
"TranslateAcceleratorA" => ["long", ["long", "long", "ptr"]],
|
||||
"TranslateAcceleratorW" => ["long", ["long", "long", "ptr"]],
|
||||
"TranslateCharsetInfo" => ["long", ["ptr", "ptr", "long"]],
|
||||
"TranslateMDISysAccel" => ["long", ["long", "ptr"]],
|
||||
"TranslateMessage" => ["long", ["ptr"]],
|
||||
"UnhookWinEvent" => ["long", ["long"]],
|
||||
"UnhookWindowsHook" => ["long", ["long", "ptr"]],
|
||||
"UnhookWindowsHookEx" => ["long", ["long"]],
|
||||
"UnionRect" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"UnpackDDElParam" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"UnregisterClassA" => ["long", ["str", "long"]],
|
||||
"UnregisterClassW" => ["long", ["wstr", "long"]],
|
||||
"UnregisterHotKey" => ["long", ["long", "long"]],
|
||||
"UpdateWindow" => ["void", ["long"]],
|
||||
"UserClientDllInitialize" => ["long", ["long", "long", "ptr"]],
|
||||
"UserRealizePalette" => ["long", ["long"]],
|
||||
"UserSignalProc" => ["long", ["long", "long", "long", "long"]],
|
||||
"UserYield16" => ["void", []],
|
||||
"ValidateRect" => ["void", ["long", "ptr"]],
|
||||
"ValidateRgn" => ["void", ["long", "long"]],
|
||||
"VkKeyScanA" => ["long", ["long"]],
|
||||
"VkKeyScanExA" => ["long", ["long", "long"]],
|
||||
"VkKeyScanExW" => ["long", ["long", "long"]],
|
||||
"VkKeyScanW" => ["long", ["long"]],
|
||||
"WaitForInputIdle" => ["long", ["long", "long"]],
|
||||
"WaitMessage" => ["long", []],
|
||||
"WinHelpA" => ["long", ["long", "str", "long", "long"]],
|
||||
"WinHelpW" => ["long", ["long", "wstr", "long", "long"]],
|
||||
"WindowFromDC" => ["long", ["long"]],
|
||||
"WindowFromPoint" => ["long", ["long", "long"]],
|
||||
"keybd_event" => ["void", ["long", "long", "long", "long"]],
|
||||
"mouse_event" => ["void", ["long", "long", "long", "long", "long"]],
|
||||
"wvsprintfA" => ["long", ["str", "str", "ptr"]],
|
||||
"wvsprintfW" => ["long", ["wstr", "wstr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("user32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,29 +0,0 @@
|
|||
package version;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"GetFileVersionInfoA" => ["long", ["str", "long", "long", "ptr"]],
|
||||
"GetFileVersionInfoSizeA" => ["long", ["str", "ptr"]],
|
||||
"GetFileVersionInfoSizeW" => ["long", ["wstr", "ptr"]],
|
||||
"GetFileVersionInfoW" => ["long", ["wstr", "long", "long", "ptr"]],
|
||||
"VerFindFileA" => ["long", ["long", "str", "str", "str", "str", "ptr", "str", "ptr"]],
|
||||
"VerFindFileW" => ["long", ["long", "wstr", "wstr", "wstr", "wstr", "ptr", "wstr", "ptr"]],
|
||||
"VerInstallFileA" => ["long", ["long", "str", "str", "str", "str", "str", "str", "ptr"]],
|
||||
"VerInstallFileW" => ["long", ["long", "wstr", "wstr", "wstr", "wstr", "wstr", "wstr", "ptr"]],
|
||||
"VerQueryValueA" => ["long", ["ptr", "str", "ptr", "ptr"]],
|
||||
"VerQueryValueW" => ["long", ["ptr", "wstr", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("version",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,21 +0,0 @@
|
|||
package w32skrnl;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"GetCurrentTask32" => ["long", []],
|
||||
"_kGetWin32sDirectory\@0" => ["str", []]
|
||||
};
|
||||
|
||||
&wine::declare("w32skrnl",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,807 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file winbase.h
|
||||
#
|
||||
|
||||
|
||||
package winbase;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
BAUD_075
|
||||
BAUD_110
|
||||
BAUD_115200
|
||||
BAUD_1200
|
||||
BAUD_128K
|
||||
BAUD_134_5
|
||||
BAUD_14400
|
||||
BAUD_150
|
||||
BAUD_1800
|
||||
BAUD_19200
|
||||
BAUD_2400
|
||||
BAUD_300
|
||||
BAUD_38400
|
||||
BAUD_4800
|
||||
BAUD_56K
|
||||
BAUD_57600
|
||||
BAUD_600
|
||||
BAUD_7200
|
||||
BAUD_9600
|
||||
BAUD_USER
|
||||
CBR_110
|
||||
CBR_115200
|
||||
CBR_1200
|
||||
CBR_128000
|
||||
CBR_14400
|
||||
CBR_19200
|
||||
CBR_2400
|
||||
CBR_256000
|
||||
CBR_300
|
||||
CBR_38400
|
||||
CBR_4800
|
||||
CBR_56000
|
||||
CBR_57600
|
||||
CBR_600
|
||||
CBR_9600
|
||||
CE_BREAK
|
||||
CE_CTSTO
|
||||
CE_DNS
|
||||
CE_DSRTO
|
||||
CE_FRAME
|
||||
CE_IOE
|
||||
CE_MODE
|
||||
CE_OOP
|
||||
CE_OVERRUN
|
||||
CE_PTO
|
||||
CE_RLSDTO
|
||||
CE_RXOVER
|
||||
CE_RXPARITY
|
||||
CE_TXFULL
|
||||
CLRBREAK
|
||||
CLRDTR
|
||||
CLRRTS
|
||||
CONTROL_C_EXIT
|
||||
COPY_FILE_FAIL_IF_EXISTS
|
||||
COPY_FILE_OPEN_SOURCE_FOR_WRITE
|
||||
COPY_FILE_RESTARTABLE
|
||||
CREATE_ALWAYS
|
||||
CREATE_DEFAULT_ERROR_MODE
|
||||
CREATE_NEW
|
||||
CREATE_NEW_CONSOLE
|
||||
CREATE_NEW_PROCESS_GROUP
|
||||
CREATE_NO_WINDOW
|
||||
CREATE_PROCESS_DEBUG_EVENT
|
||||
CREATE_SEPARATE_WOW_VDM
|
||||
CREATE_SHARED_WOW_VDM
|
||||
CREATE_SUSPENDED
|
||||
CREATE_THREAD_DEBUG_EVENT
|
||||
CREATE_UNICODE_ENVIRONMENT
|
||||
DATABITS_16
|
||||
DATABITS_16X
|
||||
DATABITS_5
|
||||
DATABITS_6
|
||||
DATABITS_7
|
||||
DATABITS_8
|
||||
DEBUG_ONLY_THIS_PROCESS
|
||||
DEBUG_PROCESS
|
||||
DETACHED_PROCESS
|
||||
DONT_RESOLVE_DLL_REFERENCES
|
||||
DRIVE_CDROM
|
||||
DRIVE_FIXED
|
||||
DRIVE_NO_ROOT_DIR
|
||||
DRIVE_RAMDISK
|
||||
DRIVE_REMOTE
|
||||
DRIVE_REMOVABLE
|
||||
DRIVE_UNKNOWN
|
||||
DTR_CONTROL_DISABLE
|
||||
DTR_CONTROL_ENABLE
|
||||
DTR_CONTROL_HANDSHAKE
|
||||
DUPLICATE_CLOSE_SOURCE
|
||||
DUPLICATE_SAME_ACCESS
|
||||
EVENPARITY
|
||||
EV_BREAK
|
||||
EV_CTS
|
||||
EV_DSR
|
||||
EV_ERR
|
||||
EV_EVENT1
|
||||
EV_EVENT2
|
||||
EV_PERR
|
||||
EV_RING
|
||||
EV_RLSD
|
||||
EV_RX80FULL
|
||||
EV_RXCHAR
|
||||
EV_RXFLAG
|
||||
EV_TXEMPT
|
||||
EXCEPTION_ACCESS_VIOLATION
|
||||
EXCEPTION_ARRAY_BOUNDS_EXCEEDED
|
||||
EXCEPTION_BREAKPOINT
|
||||
EXCEPTION_CRITICAL_SECTION_WAIT
|
||||
EXCEPTION_DATATYPE_MISALIGNMENT
|
||||
EXCEPTION_DEBUG_EVENT
|
||||
EXCEPTION_FLT_DENORMAL_OPERAND
|
||||
EXCEPTION_FLT_DIVIDE_BY_ZERO
|
||||
EXCEPTION_FLT_INEXACT_RESULT
|
||||
EXCEPTION_FLT_INVALID_OPERATION
|
||||
EXCEPTION_FLT_OVERFLOW
|
||||
EXCEPTION_FLT_STACK_CHECK
|
||||
EXCEPTION_FLT_UNDERFLOW
|
||||
EXCEPTION_GUARD_PAGE
|
||||
EXCEPTION_ILLEGAL_INSTRUCTION
|
||||
EXCEPTION_INT_DIVIDE_BY_ZERO
|
||||
EXCEPTION_INT_OVERFLOW
|
||||
EXCEPTION_INVALID_DISPOSITION
|
||||
EXCEPTION_INVALID_HANDLE
|
||||
EXCEPTION_IN_PAGE_ERROR
|
||||
EXCEPTION_NONCONTINUABLE_EXCEPTION
|
||||
EXCEPTION_PRIV_INSTRUCTION
|
||||
EXCEPTION_SINGLE_STEP
|
||||
EXCEPTION_STACK_OVERFLOW
|
||||
EXIT_PROCESS_DEBUG_EVENT
|
||||
EXIT_THREAD_DEBUG_EVENT
|
||||
FILE_BEGIN
|
||||
FILE_CURRENT
|
||||
FILE_END
|
||||
FILE_FLAG_BACKUP_SEMANTICS
|
||||
FILE_FLAG_DELETE_ON_CLOSE
|
||||
FILE_FLAG_NO_BUFFERING
|
||||
FILE_FLAG_OVERLAPPED
|
||||
FILE_FLAG_POSIX_SEMANTICS
|
||||
FILE_FLAG_RANDOM_ACCESS
|
||||
FILE_FLAG_SEQUENTIAL_SCAN
|
||||
FILE_FLAG_WRITE_THROUGH
|
||||
FILE_MAP_ALL_ACCESS
|
||||
FILE_MAP_COPY
|
||||
FILE_MAP_READ
|
||||
FILE_MAP_WRITE
|
||||
FILE_TYPE_CHAR
|
||||
FILE_TYPE_DISK
|
||||
FILE_TYPE_PIPE
|
||||
FILE_TYPE_REMOTE
|
||||
FILE_TYPE_UNKNOWN
|
||||
FORMAT_MESSAGE_ALLOCATE_BUFFER
|
||||
FORMAT_MESSAGE_ARGUMENT_ARRAY
|
||||
FORMAT_MESSAGE_FROM_HMODULE
|
||||
FORMAT_MESSAGE_FROM_STRING
|
||||
FORMAT_MESSAGE_FROM_SYSTEM
|
||||
FORMAT_MESSAGE_IGNORE_INSERTS
|
||||
FORMAT_MESSAGE_MAX_WIDTH_MASK
|
||||
FS_CASE_IS_PRESERVED
|
||||
FS_CASE_SENSITIVE
|
||||
FS_FILE_COMPRESSION
|
||||
FS_PERSISTENT_ACLS
|
||||
FS_UNICODE_STORED_ON_DISK
|
||||
FS_VOL_IS_COMPRESSED
|
||||
GHND
|
||||
GMEM_DDESHARE
|
||||
GMEM_DISCARDABLE
|
||||
GMEM_DISCARDED
|
||||
GMEM_FIXED
|
||||
GMEM_INVALID_HANDLE
|
||||
GMEM_LOCKCOUNT
|
||||
GMEM_LOWER
|
||||
GMEM_MODIFY
|
||||
GMEM_MOVEABLE
|
||||
GMEM_NOCOMPACT
|
||||
GMEM_NODISCARD
|
||||
GMEM_NOTIFY
|
||||
GMEM_NOT_BANKED
|
||||
GMEM_SHARE
|
||||
GMEM_ZEROINIT
|
||||
GPD_APP_COMPAT_FLAGS
|
||||
GPD_FLAGS
|
||||
GPD_HINSTANCE16
|
||||
GPD_LOAD_DONE_EVENT
|
||||
GPD_PARENT
|
||||
GPD_PDB
|
||||
GPD_STARTF_FLAGS
|
||||
GPD_STARTF_HOTKEY
|
||||
GPD_STARTF_POSITION
|
||||
GPD_STARTF_SHELLDATA
|
||||
GPD_STARTF_SHOWWINDOW
|
||||
GPD_STARTF_SIZE
|
||||
GPD_THDB
|
||||
GPD_USERDATA
|
||||
GPD_WINDOWS_VERSION
|
||||
GPTR
|
||||
HANDLE_FLAG_INHERIT
|
||||
HANDLE_FLAG_PROTECT_FROM_CLOSE
|
||||
HIGH_PRIORITY_CLASS
|
||||
HINSTANCE_ERROR
|
||||
IDLE_PRIORITY_CLASS
|
||||
IE_BADID
|
||||
IE_BAUDRATE
|
||||
IE_BYTESIZE
|
||||
IE_DEFAULT
|
||||
IE_HARDWARE
|
||||
IE_MEMORY
|
||||
IE_NOPEN
|
||||
IE_OPEN
|
||||
IGNORE
|
||||
INFINITE
|
||||
INVALID_ATOM
|
||||
INVALID_HANDLE_VALUE
|
||||
LHND
|
||||
LMEM_DISCARDABLE
|
||||
LMEM_DISCARDED
|
||||
LMEM_FIXED
|
||||
LMEM_LOCKCOUNT
|
||||
LMEM_MODIFY
|
||||
LMEM_MOVEABLE
|
||||
LMEM_NOCOMPACT
|
||||
LMEM_NODISCARD
|
||||
LMEM_ZEROINIT
|
||||
LOAD_DLL_DEBUG_EVENT
|
||||
LOAD_LIBRARY_AS_DATAFILE
|
||||
LOAD_WITH_ALTERED_SEARCH_PATH
|
||||
LPTR
|
||||
MARKPARITY
|
||||
MAXINTATOM
|
||||
MOVEFILE_COPY_ALLOWED
|
||||
MOVEFILE_DELAY_UNTIL_REBOOT
|
||||
MOVEFILE_REPLACE_EXISTING
|
||||
MS_CTS_ON
|
||||
MS_DSR_ON
|
||||
MS_RING_ON
|
||||
MS_RLSD_ON
|
||||
NMPWAIT_NOWAIT
|
||||
NMPWAIT_USE_DEFAULT_WAIT
|
||||
NMPWAIT_WAIT_FOREVER
|
||||
NONZEROLHND
|
||||
NONZEROLPTR
|
||||
NOPARITY
|
||||
NORMAL_PRIORITY_CLASS
|
||||
ODDPARITY
|
||||
OFS_MAXPATHNAME
|
||||
OF_CANCEL
|
||||
OF_CREATE
|
||||
OF_DELETE
|
||||
OF_EXIST
|
||||
OF_PARSE
|
||||
OF_PROMPT
|
||||
OF_READ
|
||||
OF_READWRITE
|
||||
OF_REOPEN
|
||||
OF_SEARCH
|
||||
OF_SHARE_COMPAT
|
||||
OF_SHARE_DENY_NONE
|
||||
OF_SHARE_DENY_READ
|
||||
OF_SHARE_DENY_WRITE
|
||||
OF_SHARE_EXCLUSIVE
|
||||
OF_VERIFY
|
||||
OF_WRITE
|
||||
ONE5STOPBITS
|
||||
ONESTOPBIT
|
||||
OPEN_ALWAYS
|
||||
OPEN_EXISTING
|
||||
OUTPUT_DEBUG_STRING_EVENT
|
||||
PARITY_EVEN
|
||||
PARITY_MARK
|
||||
PARITY_NONE
|
||||
PARITY_ODD
|
||||
PARITY_SPACE
|
||||
PCF_16BITMODE
|
||||
PCF_DTRDSR
|
||||
PCF_INTTIMEOUTS
|
||||
PCF_PARITY_CHECK
|
||||
PCF_RLSD
|
||||
PCF_RTSCTS
|
||||
PCF_SETXCHAR
|
||||
PCF_SPECIALCHARS
|
||||
PCF_TOTALTIMEOUTS
|
||||
PCF_XONXOFF
|
||||
PIPE_ACCESS_DUPLEX
|
||||
PIPE_ACCESS_INBOUND
|
||||
PIPE_ACCESS_OUTBOUND
|
||||
PIPE_NOWAIT
|
||||
PIPE_READMODE_BYTE
|
||||
PIPE_READMODE_MESSAGE
|
||||
PIPE_TYPE_BYTE
|
||||
PIPE_TYPE_MESSAGE
|
||||
PIPE_UNLIMITED_INSTANCES
|
||||
PIPE_WAIT
|
||||
PROCESS_HEAP_ENTRY_BUSY
|
||||
PROCESS_HEAP_ENTRY_DDESHARE
|
||||
PROCESS_HEAP_ENTRY_MOVEABLE
|
||||
PROCESS_HEAP_REGION
|
||||
PROCESS_HEAP_UNCOMMITTED_RANGE
|
||||
PROFILE_KERNEL
|
||||
PROFILE_SERVER
|
||||
PROFILE_USER
|
||||
PST_FAX
|
||||
PST_LAT
|
||||
PST_MODEM
|
||||
PST_NETWORK_BRIDGE
|
||||
PST_PARALLEL_PORT
|
||||
PST_RS232
|
||||
PST_RS423
|
||||
PST_RS442
|
||||
PST_RS449
|
||||
PST_SCANNER
|
||||
PST_TCPIP_TELNET
|
||||
PST_UNSPECIFIED
|
||||
PST_X25
|
||||
PURGE_RXABORT
|
||||
PURGE_RXCLEAR
|
||||
PURGE_TXABORT
|
||||
PURGE_TXCLEAR
|
||||
REALTIME_PRIORITY_CLASS
|
||||
RESETDEV
|
||||
RIP_EVENT
|
||||
RTS_CONTROL_DISABLE
|
||||
RTS_CONTROL_ENABLE
|
||||
RTS_CONTROL_HANDSHAKE
|
||||
RTS_CONTROL_TOGGLE
|
||||
SCS_32BIT_BINARY
|
||||
SCS_DOS_BINARY
|
||||
SCS_OS216_BINARY
|
||||
SCS_PIF_BINARY
|
||||
SCS_POSIX_BINARY
|
||||
SCS_WOW_BINARY
|
||||
SEM_FAILCRITICALERRORS
|
||||
SEM_NOALIGNMENTFAULTEXCEPT
|
||||
SEM_NOGPFAULTERRORBOX
|
||||
SEM_NOOPENFILEERRORBOX
|
||||
SETBREAK
|
||||
SETDTR
|
||||
SETRTS
|
||||
SETXOFF
|
||||
SETXON
|
||||
SHUTDOWN_NORETRY
|
||||
SPACEPARITY
|
||||
SP_BAUD
|
||||
SP_DATABITS
|
||||
SP_HANDSHAKING
|
||||
SP_PARITY
|
||||
SP_PARITY_CHECK
|
||||
SP_RLSD
|
||||
SP_SERIALCOMM
|
||||
SP_STOPBITS
|
||||
STARTF_FORCEOFFFEEDBACK
|
||||
STARTF_FORCEONFEEDBACK
|
||||
STARTF_RUNFULLSCREEN
|
||||
STARTF_USECOUNTCHARS
|
||||
STARTF_USEFILLATTRIBUTE
|
||||
STARTF_USEHOTKEY
|
||||
STARTF_USEPOSITION
|
||||
STARTF_USESHOWWINDOW
|
||||
STARTF_USESIZE
|
||||
STARTF_USESTDHANDLES
|
||||
STD_ERROR_HANDLE
|
||||
STD_INPUT_HANDLE
|
||||
STD_OUTPUT_HANDLE
|
||||
STILL_ACTIVE
|
||||
STOPBITS_10
|
||||
STOPBITS_15
|
||||
STOPBITS_20
|
||||
TF_FORCEDRIVE
|
||||
THREAD_PRIORITY_ABOVE_NORMAL
|
||||
THREAD_PRIORITY_BELOW_NORMAL
|
||||
THREAD_PRIORITY_ERROR_RETURN
|
||||
THREAD_PRIORITY_HIGHEST
|
||||
THREAD_PRIORITY_IDLE
|
||||
THREAD_PRIORITY_LOWEST
|
||||
THREAD_PRIORITY_NORMAL
|
||||
THREAD_PRIORITY_TIME_CRITICAL
|
||||
TIME_ZONE_ID_DAYLIGHT
|
||||
TIME_ZONE_ID_INVALID
|
||||
TIME_ZONE_ID_STANDARD
|
||||
TIME_ZONE_ID_UNKNOWN
|
||||
TLS_OUT_OF_INDEXES
|
||||
TRUNCATE_EXISTING
|
||||
TWOSTOPBITS
|
||||
UNLOAD_DLL_DEBUG_EVENT
|
||||
VER_PLATFORM_WIN32_NT
|
||||
VER_PLATFORM_WIN32_WINDOWS
|
||||
VER_PLATFORM_WIN32s
|
||||
WAIT_ABANDONED
|
||||
WAIT_ABANDONED_0
|
||||
WAIT_FAILED
|
||||
WAIT_IO_COMPLETION
|
||||
WAIT_OBJECT_0
|
||||
WAIT_TIMEOUT
|
||||
WEP_FREE_DLL
|
||||
WEP_SYSTEM_EXIT
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant BAUD_075 => 1;
|
||||
use constant BAUD_110 => 2;
|
||||
use constant BAUD_115200 => 131072;
|
||||
use constant BAUD_1200 => 64;
|
||||
use constant BAUD_128K => 65536;
|
||||
use constant BAUD_134_5 => 4;
|
||||
use constant BAUD_14400 => 4096;
|
||||
use constant BAUD_150 => 8;
|
||||
use constant BAUD_1800 => 128;
|
||||
use constant BAUD_19200 => 8192;
|
||||
use constant BAUD_2400 => 256;
|
||||
use constant BAUD_300 => 16;
|
||||
use constant BAUD_38400 => 16384;
|
||||
use constant BAUD_4800 => 512;
|
||||
use constant BAUD_56K => 32768;
|
||||
use constant BAUD_57600 => 262144;
|
||||
use constant BAUD_600 => 32;
|
||||
use constant BAUD_7200 => 1024;
|
||||
use constant BAUD_9600 => 2048;
|
||||
use constant BAUD_USER => 268435456;
|
||||
use constant CBR_110 => 65296;
|
||||
use constant CBR_115200 => 65313;
|
||||
use constant CBR_1200 => 65299;
|
||||
use constant CBR_128000 => 65315;
|
||||
use constant CBR_14400 => 65303;
|
||||
use constant CBR_19200 => 65304;
|
||||
use constant CBR_2400 => 65300;
|
||||
use constant CBR_256000 => 65319;
|
||||
use constant CBR_300 => 65297;
|
||||
use constant CBR_38400 => 65307;
|
||||
use constant CBR_4800 => 65301;
|
||||
use constant CBR_56000 => 65311;
|
||||
use constant CBR_57600 => 65312;
|
||||
use constant CBR_600 => 65298;
|
||||
use constant CBR_9600 => 65302;
|
||||
use constant CE_BREAK => 16;
|
||||
use constant CE_CTSTO => 32;
|
||||
use constant CE_DNS => 2048;
|
||||
use constant CE_DSRTO => 64;
|
||||
use constant CE_FRAME => 8;
|
||||
use constant CE_IOE => 1024;
|
||||
use constant CE_MODE => 32768;
|
||||
use constant CE_OOP => 4096;
|
||||
use constant CE_OVERRUN => 2;
|
||||
use constant CE_PTO => 512;
|
||||
use constant CE_RLSDTO => 128;
|
||||
use constant CE_RXOVER => 1;
|
||||
use constant CE_RXPARITY => 4;
|
||||
use constant CE_TXFULL => 256;
|
||||
use constant CLRBREAK => 9;
|
||||
use constant CLRDTR => 6;
|
||||
use constant CLRRTS => 4;
|
||||
use constant CONTROL_C_EXIT => -1073741510;
|
||||
use constant COPY_FILE_FAIL_IF_EXISTS => 1;
|
||||
use constant COPY_FILE_OPEN_SOURCE_FOR_WRITE => 4;
|
||||
use constant COPY_FILE_RESTARTABLE => 2;
|
||||
use constant CREATE_ALWAYS => 2;
|
||||
use constant CREATE_DEFAULT_ERROR_MODE => 67108864;
|
||||
use constant CREATE_NEW => 1;
|
||||
use constant CREATE_NEW_CONSOLE => 16;
|
||||
use constant CREATE_NEW_PROCESS_GROUP => 512;
|
||||
use constant CREATE_NO_WINDOW => 134217728;
|
||||
use constant CREATE_PROCESS_DEBUG_EVENT => 3;
|
||||
use constant CREATE_SEPARATE_WOW_VDM => 2048;
|
||||
use constant CREATE_SHARED_WOW_VDM => 4096;
|
||||
use constant CREATE_SUSPENDED => 4;
|
||||
use constant CREATE_THREAD_DEBUG_EVENT => 2;
|
||||
use constant CREATE_UNICODE_ENVIRONMENT => 1024;
|
||||
use constant DATABITS_16 => 16;
|
||||
use constant DATABITS_16X => 32;
|
||||
use constant DATABITS_5 => 1;
|
||||
use constant DATABITS_6 => 2;
|
||||
use constant DATABITS_7 => 4;
|
||||
use constant DATABITS_8 => 8;
|
||||
use constant DEBUG_ONLY_THIS_PROCESS => 2;
|
||||
use constant DEBUG_PROCESS => 1;
|
||||
use constant DETACHED_PROCESS => 8;
|
||||
use constant DONT_RESOLVE_DLL_REFERENCES => 1;
|
||||
use constant DRIVE_CDROM => 5;
|
||||
use constant DRIVE_FIXED => 3;
|
||||
use constant DRIVE_NO_ROOT_DIR => 1;
|
||||
use constant DRIVE_RAMDISK => 6;
|
||||
use constant DRIVE_REMOTE => 4;
|
||||
use constant DRIVE_REMOVABLE => 2;
|
||||
use constant DRIVE_UNKNOWN => 0;
|
||||
use constant DTR_CONTROL_DISABLE => 0;
|
||||
use constant DTR_CONTROL_ENABLE => 1;
|
||||
use constant DTR_CONTROL_HANDSHAKE => 2;
|
||||
use constant DUPLICATE_CLOSE_SOURCE => 1;
|
||||
use constant DUPLICATE_SAME_ACCESS => 2;
|
||||
use constant EVENPARITY => 2;
|
||||
use constant EV_BREAK => 64;
|
||||
use constant EV_CTS => 8;
|
||||
use constant EV_DSR => 16;
|
||||
use constant EV_ERR => 128;
|
||||
use constant EV_EVENT1 => 2048;
|
||||
use constant EV_EVENT2 => 4096;
|
||||
use constant EV_PERR => 512;
|
||||
use constant EV_RING => 256;
|
||||
use constant EV_RLSD => 32;
|
||||
use constant EV_RX80FULL => 1024;
|
||||
use constant EV_RXCHAR => 1;
|
||||
use constant EV_RXFLAG => 2;
|
||||
use constant EV_TXEMPT => 4;
|
||||
use constant EXCEPTION_ACCESS_VIOLATION => -1073741819;
|
||||
use constant EXCEPTION_ARRAY_BOUNDS_EXCEEDED => -1073741684;
|
||||
use constant EXCEPTION_BREAKPOINT => -2147483645;
|
||||
use constant EXCEPTION_CRITICAL_SECTION_WAIT => -1073741420;
|
||||
use constant EXCEPTION_DATATYPE_MISALIGNMENT => -2147483646;
|
||||
use constant EXCEPTION_DEBUG_EVENT => 1;
|
||||
use constant EXCEPTION_FLT_DENORMAL_OPERAND => -1073741683;
|
||||
use constant EXCEPTION_FLT_DIVIDE_BY_ZERO => -1073741682;
|
||||
use constant EXCEPTION_FLT_INEXACT_RESULT => -1073741681;
|
||||
use constant EXCEPTION_FLT_INVALID_OPERATION => -1073741680;
|
||||
use constant EXCEPTION_FLT_OVERFLOW => -1073741679;
|
||||
use constant EXCEPTION_FLT_STACK_CHECK => -1073741678;
|
||||
use constant EXCEPTION_FLT_UNDERFLOW => -1073741677;
|
||||
use constant EXCEPTION_GUARD_PAGE => -2147483647;
|
||||
use constant EXCEPTION_ILLEGAL_INSTRUCTION => -1073741795;
|
||||
use constant EXCEPTION_INT_DIVIDE_BY_ZERO => -1073741676;
|
||||
use constant EXCEPTION_INT_OVERFLOW => -1073741675;
|
||||
use constant EXCEPTION_INVALID_DISPOSITION => -1073741786;
|
||||
use constant EXCEPTION_INVALID_HANDLE => -1073741816;
|
||||
use constant EXCEPTION_IN_PAGE_ERROR => -1073741818;
|
||||
use constant EXCEPTION_NONCONTINUABLE_EXCEPTION => -1073741787;
|
||||
use constant EXCEPTION_PRIV_INSTRUCTION => -1073741674;
|
||||
use constant EXCEPTION_SINGLE_STEP => -2147483644;
|
||||
use constant EXCEPTION_STACK_OVERFLOW => -1073741571;
|
||||
use constant EXIT_PROCESS_DEBUG_EVENT => 5;
|
||||
use constant EXIT_THREAD_DEBUG_EVENT => 4;
|
||||
use constant FILE_BEGIN => 0;
|
||||
use constant FILE_CURRENT => 1;
|
||||
use constant FILE_END => 2;
|
||||
use constant FILE_FLAG_BACKUP_SEMANTICS => 33554432;
|
||||
use constant FILE_FLAG_DELETE_ON_CLOSE => 67108864;
|
||||
use constant FILE_FLAG_NO_BUFFERING => 536870912;
|
||||
use constant FILE_FLAG_OVERLAPPED => 1073741824;
|
||||
use constant FILE_FLAG_POSIX_SEMANTICS => 16777216;
|
||||
use constant FILE_FLAG_RANDOM_ACCESS => 268435456;
|
||||
use constant FILE_FLAG_SEQUENTIAL_SCAN => 134217728;
|
||||
use constant FILE_FLAG_WRITE_THROUGH => -2147483648;
|
||||
use constant FILE_MAP_ALL_ACCESS => 983071;
|
||||
use constant FILE_MAP_COPY => 1;
|
||||
use constant FILE_MAP_READ => 4;
|
||||
use constant FILE_MAP_WRITE => 2;
|
||||
use constant FILE_TYPE_CHAR => 2;
|
||||
use constant FILE_TYPE_DISK => 1;
|
||||
use constant FILE_TYPE_PIPE => 3;
|
||||
use constant FILE_TYPE_REMOTE => 32768;
|
||||
use constant FILE_TYPE_UNKNOWN => 0;
|
||||
use constant FORMAT_MESSAGE_ALLOCATE_BUFFER => 256;
|
||||
use constant FORMAT_MESSAGE_ARGUMENT_ARRAY => 8192;
|
||||
use constant FORMAT_MESSAGE_FROM_HMODULE => 2048;
|
||||
use constant FORMAT_MESSAGE_FROM_STRING => 1024;
|
||||
use constant FORMAT_MESSAGE_FROM_SYSTEM => 4096;
|
||||
use constant FORMAT_MESSAGE_IGNORE_INSERTS => 512;
|
||||
use constant FORMAT_MESSAGE_MAX_WIDTH_MASK => 255;
|
||||
use constant FS_CASE_IS_PRESERVED => 2;
|
||||
use constant FS_CASE_SENSITIVE => 1;
|
||||
use constant FS_FILE_COMPRESSION => 16;
|
||||
use constant FS_PERSISTENT_ACLS => 8;
|
||||
use constant FS_UNICODE_STORED_ON_DISK => 4;
|
||||
use constant FS_VOL_IS_COMPRESSED => 32768;
|
||||
use constant GHND => 66;
|
||||
use constant GMEM_DDESHARE => 8192;
|
||||
use constant GMEM_DISCARDABLE => 256;
|
||||
use constant GMEM_DISCARDED => 16384;
|
||||
use constant GMEM_FIXED => 0;
|
||||
use constant GMEM_INVALID_HANDLE => 32768;
|
||||
use constant GMEM_LOCKCOUNT => 255;
|
||||
use constant GMEM_LOWER => 4096;
|
||||
use constant GMEM_MODIFY => 128;
|
||||
use constant GMEM_MOVEABLE => 2;
|
||||
use constant GMEM_NOCOMPACT => 16;
|
||||
use constant GMEM_NODISCARD => 32;
|
||||
use constant GMEM_NOTIFY => 16384;
|
||||
use constant GMEM_NOT_BANKED => 4096;
|
||||
use constant GMEM_SHARE => 8192;
|
||||
use constant GMEM_ZEROINIT => 64;
|
||||
use constant GPD_APP_COMPAT_FLAGS => -56;
|
||||
use constant GPD_FLAGS => -4;
|
||||
use constant GPD_HINSTANCE16 => -48;
|
||||
use constant GPD_LOAD_DONE_EVENT => -52;
|
||||
use constant GPD_PARENT => -8;
|
||||
use constant GPD_PDB => -36;
|
||||
use constant GPD_STARTF_FLAGS => -12;
|
||||
use constant GPD_STARTF_HOTKEY => -28;
|
||||
use constant GPD_STARTF_POSITION => -16;
|
||||
use constant GPD_STARTF_SHELLDATA => -32;
|
||||
use constant GPD_STARTF_SHOWWINDOW => -24;
|
||||
use constant GPD_STARTF_SIZE => -20;
|
||||
use constant GPD_THDB => -40;
|
||||
use constant GPD_USERDATA => 0;
|
||||
use constant GPD_WINDOWS_VERSION => -44;
|
||||
use constant GPTR => 64;
|
||||
use constant HANDLE_FLAG_INHERIT => 1;
|
||||
use constant HANDLE_FLAG_PROTECT_FROM_CLOSE => 2;
|
||||
use constant HIGH_PRIORITY_CLASS => 128;
|
||||
use constant HINSTANCE_ERROR => 32;
|
||||
use constant IDLE_PRIORITY_CLASS => 64;
|
||||
use constant IE_BADID => -1;
|
||||
use constant IE_BAUDRATE => -12;
|
||||
use constant IE_BYTESIZE => -11;
|
||||
use constant IE_DEFAULT => -5;
|
||||
use constant IE_HARDWARE => -10;
|
||||
use constant IE_MEMORY => -4;
|
||||
use constant IE_NOPEN => -3;
|
||||
use constant IE_OPEN => -2;
|
||||
use constant IGNORE => 0;
|
||||
use constant INFINITE => -1;
|
||||
use constant INVALID_ATOM => 0;
|
||||
use constant INVALID_HANDLE_VALUE => -1;
|
||||
use constant LHND => 66;
|
||||
use constant LMEM_DISCARDABLE => 3840;
|
||||
use constant LMEM_DISCARDED => 16384;
|
||||
use constant LMEM_FIXED => 0;
|
||||
use constant LMEM_LOCKCOUNT => 255;
|
||||
use constant LMEM_MODIFY => 128;
|
||||
use constant LMEM_MOVEABLE => 2;
|
||||
use constant LMEM_NOCOMPACT => 16;
|
||||
use constant LMEM_NODISCARD => 32;
|
||||
use constant LMEM_ZEROINIT => 64;
|
||||
use constant LOAD_DLL_DEBUG_EVENT => 6;
|
||||
use constant LOAD_LIBRARY_AS_DATAFILE => 2;
|
||||
use constant LOAD_WITH_ALTERED_SEARCH_PATH => 8;
|
||||
use constant LPTR => 64;
|
||||
use constant MARKPARITY => 3;
|
||||
use constant MAXINTATOM => 49152;
|
||||
use constant MOVEFILE_COPY_ALLOWED => 2;
|
||||
use constant MOVEFILE_DELAY_UNTIL_REBOOT => 4;
|
||||
use constant MOVEFILE_REPLACE_EXISTING => 1;
|
||||
use constant MS_CTS_ON => 16;
|
||||
use constant MS_DSR_ON => 32;
|
||||
use constant MS_RING_ON => 64;
|
||||
use constant MS_RLSD_ON => 128;
|
||||
use constant NMPWAIT_NOWAIT => 1;
|
||||
use constant NMPWAIT_USE_DEFAULT_WAIT => 0;
|
||||
use constant NMPWAIT_WAIT_FOREVER => -1;
|
||||
use constant NONZEROLHND => 2;
|
||||
use constant NONZEROLPTR => 0;
|
||||
use constant NOPARITY => 0;
|
||||
use constant NORMAL_PRIORITY_CLASS => 32;
|
||||
use constant ODDPARITY => 1;
|
||||
use constant OFS_MAXPATHNAME => 128;
|
||||
use constant OF_CANCEL => 2048;
|
||||
use constant OF_CREATE => 4096;
|
||||
use constant OF_DELETE => 512;
|
||||
use constant OF_EXIST => 16384;
|
||||
use constant OF_PARSE => 256;
|
||||
use constant OF_PROMPT => 8192;
|
||||
use constant OF_READ => 0;
|
||||
use constant OF_READWRITE => 2;
|
||||
use constant OF_REOPEN => 32768;
|
||||
use constant OF_SEARCH => 1024;
|
||||
use constant OF_SHARE_COMPAT => 0;
|
||||
use constant OF_SHARE_DENY_NONE => 64;
|
||||
use constant OF_SHARE_DENY_READ => 48;
|
||||
use constant OF_SHARE_DENY_WRITE => 32;
|
||||
use constant OF_SHARE_EXCLUSIVE => 16;
|
||||
use constant OF_VERIFY => 1024;
|
||||
use constant OF_WRITE => 1;
|
||||
use constant ONE5STOPBITS => 1;
|
||||
use constant ONESTOPBIT => 0;
|
||||
use constant OPEN_ALWAYS => 4;
|
||||
use constant OPEN_EXISTING => 3;
|
||||
use constant OUTPUT_DEBUG_STRING_EVENT => 8;
|
||||
use constant PARITY_EVEN => 1024;
|
||||
use constant PARITY_MARK => 2048;
|
||||
use constant PARITY_NONE => 256;
|
||||
use constant PARITY_ODD => 512;
|
||||
use constant PARITY_SPACE => 4096;
|
||||
use constant PCF_16BITMODE => 512;
|
||||
use constant PCF_DTRDSR => 1;
|
||||
use constant PCF_INTTIMEOUTS => 128;
|
||||
use constant PCF_PARITY_CHECK => 8;
|
||||
use constant PCF_RLSD => 4;
|
||||
use constant PCF_RTSCTS => 2;
|
||||
use constant PCF_SETXCHAR => 32;
|
||||
use constant PCF_SPECIALCHARS => 256;
|
||||
use constant PCF_TOTALTIMEOUTS => 64;
|
||||
use constant PCF_XONXOFF => 16;
|
||||
use constant PIPE_ACCESS_DUPLEX => 3;
|
||||
use constant PIPE_ACCESS_INBOUND => 1;
|
||||
use constant PIPE_ACCESS_OUTBOUND => 2;
|
||||
use constant PIPE_NOWAIT => 1;
|
||||
use constant PIPE_READMODE_BYTE => 0;
|
||||
use constant PIPE_READMODE_MESSAGE => 2;
|
||||
use constant PIPE_TYPE_BYTE => 0;
|
||||
use constant PIPE_TYPE_MESSAGE => 4;
|
||||
use constant PIPE_UNLIMITED_INSTANCES => 255;
|
||||
use constant PIPE_WAIT => 0;
|
||||
use constant PROCESS_HEAP_ENTRY_BUSY => 4;
|
||||
use constant PROCESS_HEAP_ENTRY_DDESHARE => 32;
|
||||
use constant PROCESS_HEAP_ENTRY_MOVEABLE => 16;
|
||||
use constant PROCESS_HEAP_REGION => 1;
|
||||
use constant PROCESS_HEAP_UNCOMMITTED_RANGE => 2;
|
||||
use constant PROFILE_KERNEL => 536870912;
|
||||
use constant PROFILE_SERVER => 1073741824;
|
||||
use constant PROFILE_USER => 268435456;
|
||||
use constant PST_FAX => 33;
|
||||
use constant PST_LAT => 257;
|
||||
use constant PST_MODEM => 6;
|
||||
use constant PST_NETWORK_BRIDGE => 256;
|
||||
use constant PST_PARALLEL_PORT => 2;
|
||||
use constant PST_RS232 => 1;
|
||||
use constant PST_RS423 => 4;
|
||||
use constant PST_RS442 => 3;
|
||||
use constant PST_RS449 => 6;
|
||||
use constant PST_SCANNER => 34;
|
||||
use constant PST_TCPIP_TELNET => 258;
|
||||
use constant PST_UNSPECIFIED => 0;
|
||||
use constant PST_X25 => 259;
|
||||
use constant PURGE_RXABORT => 2;
|
||||
use constant PURGE_RXCLEAR => 8;
|
||||
use constant PURGE_TXABORT => 1;
|
||||
use constant PURGE_TXCLEAR => 4;
|
||||
use constant REALTIME_PRIORITY_CLASS => 256;
|
||||
use constant RESETDEV => 7;
|
||||
use constant RIP_EVENT => 9;
|
||||
use constant RTS_CONTROL_DISABLE => 0;
|
||||
use constant RTS_CONTROL_ENABLE => 1;
|
||||
use constant RTS_CONTROL_HANDSHAKE => 2;
|
||||
use constant RTS_CONTROL_TOGGLE => 3;
|
||||
use constant SCS_32BIT_BINARY => 0;
|
||||
use constant SCS_DOS_BINARY => 1;
|
||||
use constant SCS_OS216_BINARY => 5;
|
||||
use constant SCS_PIF_BINARY => 3;
|
||||
use constant SCS_POSIX_BINARY => 4;
|
||||
use constant SCS_WOW_BINARY => 2;
|
||||
use constant SEM_FAILCRITICALERRORS => 1;
|
||||
use constant SEM_NOALIGNMENTFAULTEXCEPT => 4;
|
||||
use constant SEM_NOGPFAULTERRORBOX => 2;
|
||||
use constant SEM_NOOPENFILEERRORBOX => 32768;
|
||||
use constant SETBREAK => 8;
|
||||
use constant SETDTR => 5;
|
||||
use constant SETRTS => 3;
|
||||
use constant SETXOFF => 1;
|
||||
use constant SETXON => 2;
|
||||
use constant SHUTDOWN_NORETRY => 1;
|
||||
use constant SPACEPARITY => 4;
|
||||
use constant SP_BAUD => 2;
|
||||
use constant SP_DATABITS => 4;
|
||||
use constant SP_HANDSHAKING => 16;
|
||||
use constant SP_PARITY => 1;
|
||||
use constant SP_PARITY_CHECK => 32;
|
||||
use constant SP_RLSD => 64;
|
||||
use constant SP_SERIALCOMM => 1;
|
||||
use constant SP_STOPBITS => 8;
|
||||
use constant STARTF_FORCEOFFFEEDBACK => 128;
|
||||
use constant STARTF_FORCEONFEEDBACK => 64;
|
||||
use constant STARTF_RUNFULLSCREEN => 32;
|
||||
use constant STARTF_USECOUNTCHARS => 8;
|
||||
use constant STARTF_USEFILLATTRIBUTE => 16;
|
||||
use constant STARTF_USEHOTKEY => 512;
|
||||
use constant STARTF_USEPOSITION => 4;
|
||||
use constant STARTF_USESHOWWINDOW => 1;
|
||||
use constant STARTF_USESIZE => 2;
|
||||
use constant STARTF_USESTDHANDLES => 256;
|
||||
use constant STD_ERROR_HANDLE => -12;
|
||||
use constant STD_INPUT_HANDLE => -10;
|
||||
use constant STD_OUTPUT_HANDLE => -11;
|
||||
use constant STILL_ACTIVE => 259;
|
||||
use constant STOPBITS_10 => 1;
|
||||
use constant STOPBITS_15 => 2;
|
||||
use constant STOPBITS_20 => 4;
|
||||
use constant TF_FORCEDRIVE => 128;
|
||||
use constant THREAD_PRIORITY_ABOVE_NORMAL => 1;
|
||||
use constant THREAD_PRIORITY_BELOW_NORMAL => -1;
|
||||
use constant THREAD_PRIORITY_ERROR_RETURN => 2147483647;
|
||||
use constant THREAD_PRIORITY_HIGHEST => 2;
|
||||
use constant THREAD_PRIORITY_IDLE => -15;
|
||||
use constant THREAD_PRIORITY_LOWEST => -2;
|
||||
use constant THREAD_PRIORITY_NORMAL => 0;
|
||||
use constant THREAD_PRIORITY_TIME_CRITICAL => 15;
|
||||
use constant TIME_ZONE_ID_DAYLIGHT => 2;
|
||||
use constant TIME_ZONE_ID_INVALID => -1;
|
||||
use constant TIME_ZONE_ID_STANDARD => 1;
|
||||
use constant TIME_ZONE_ID_UNKNOWN => 0;
|
||||
use constant TLS_OUT_OF_INDEXES => -1;
|
||||
use constant TRUNCATE_EXISTING => 5;
|
||||
use constant TWOSTOPBITS => 2;
|
||||
use constant UNLOAD_DLL_DEBUG_EVENT => 7;
|
||||
use constant VER_PLATFORM_WIN32_NT => 2;
|
||||
use constant VER_PLATFORM_WIN32_WINDOWS => 1;
|
||||
use constant VER_PLATFORM_WIN32s => 0;
|
||||
use constant WAIT_ABANDONED => 128;
|
||||
use constant WAIT_ABANDONED_0 => 128;
|
||||
use constant WAIT_FAILED => -1;
|
||||
use constant WAIT_IO_COMPLETION => 192;
|
||||
use constant WAIT_OBJECT_0 => 0;
|
||||
use constant WAIT_TIMEOUT => 258;
|
||||
use constant WEP_FREE_DLL => 0;
|
||||
use constant WEP_SYSTEM_EXIT => 1;
|
||||
|
||||
1;
|
|
@ -1,109 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file wincon.h
|
||||
#
|
||||
|
||||
|
||||
package wincon;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
BACKGROUND_BLUE
|
||||
BACKGROUND_GREEN
|
||||
BACKGROUND_INTENSITY
|
||||
BACKGROUND_RED
|
||||
CAPSLOCK_ON
|
||||
CONSOLE_TEXTMODE_BUFFER
|
||||
CTRL_BREAK_EVENT
|
||||
CTRL_CLOSE_EVENT
|
||||
CTRL_C_EVENT
|
||||
CTRL_LOGOFF_EVENT
|
||||
CTRL_SHUTDOWN_EVENT
|
||||
DOUBLE_CLICK
|
||||
ENABLE_ECHO_INPUT
|
||||
ENABLE_LINE_INPUT
|
||||
ENABLE_MOUSE_INPUT
|
||||
ENABLE_PROCESSED_INPUT
|
||||
ENABLE_PROCESSED_OUTPUT
|
||||
ENABLE_WINDOW_INPUT
|
||||
ENABLE_WRAP_AT_EOL_OUTPUT
|
||||
ENHANCED_KEY
|
||||
FOCUS_EVENT
|
||||
FOREGROUND_BLUE
|
||||
FOREGROUND_GREEN
|
||||
FOREGROUND_INTENSITY
|
||||
FOREGROUND_RED
|
||||
FROM_LEFT_1ST_BUTTON_PRESSED
|
||||
FROM_LEFT_2ND_BUTTON_PRESSED
|
||||
FROM_LEFT_3RD_BUTTON_PRESSED
|
||||
FROM_LEFT_4TH_BUTTON_PRESSED
|
||||
KEY_EVENT
|
||||
LEFT_ALT_PRESSED
|
||||
LEFT_CTRL_PRESSED
|
||||
MENU_EVENT
|
||||
MOUSE_EVENT
|
||||
MOUSE_MOVED
|
||||
MOUSE_WHEELED
|
||||
NUMLOCK_ON
|
||||
RIGHTMOST_BUTTON_PRESSED
|
||||
RIGHT_ALT_PRESSED
|
||||
RIGHT_CTRL_PRESSED
|
||||
SCROLLLOCK_ON
|
||||
SHIFT_PRESSED
|
||||
WINDOW_BUFFER_SIZE_EVENT
|
||||
WINE_ENABLE_LINE_INPUT_EMACS
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant BACKGROUND_BLUE => 16;
|
||||
use constant BACKGROUND_GREEN => 32;
|
||||
use constant BACKGROUND_INTENSITY => 128;
|
||||
use constant BACKGROUND_RED => 64;
|
||||
use constant CAPSLOCK_ON => 128;
|
||||
use constant CONSOLE_TEXTMODE_BUFFER => 1;
|
||||
use constant CTRL_BREAK_EVENT => 1;
|
||||
use constant CTRL_CLOSE_EVENT => 2;
|
||||
use constant CTRL_C_EVENT => 0;
|
||||
use constant CTRL_LOGOFF_EVENT => 5;
|
||||
use constant CTRL_SHUTDOWN_EVENT => 6;
|
||||
use constant DOUBLE_CLICK => 2;
|
||||
use constant ENABLE_ECHO_INPUT => 4;
|
||||
use constant ENABLE_LINE_INPUT => 2;
|
||||
use constant ENABLE_MOUSE_INPUT => 16;
|
||||
use constant ENABLE_PROCESSED_INPUT => 1;
|
||||
use constant ENABLE_PROCESSED_OUTPUT => 1;
|
||||
use constant ENABLE_WINDOW_INPUT => 8;
|
||||
use constant ENABLE_WRAP_AT_EOL_OUTPUT => 2;
|
||||
use constant ENHANCED_KEY => 256;
|
||||
use constant FOCUS_EVENT => 16;
|
||||
use constant FOREGROUND_BLUE => 1;
|
||||
use constant FOREGROUND_GREEN => 2;
|
||||
use constant FOREGROUND_INTENSITY => 8;
|
||||
use constant FOREGROUND_RED => 4;
|
||||
use constant FROM_LEFT_1ST_BUTTON_PRESSED => 1;
|
||||
use constant FROM_LEFT_2ND_BUTTON_PRESSED => 4;
|
||||
use constant FROM_LEFT_3RD_BUTTON_PRESSED => 8;
|
||||
use constant FROM_LEFT_4TH_BUTTON_PRESSED => 16;
|
||||
use constant KEY_EVENT => 1;
|
||||
use constant LEFT_ALT_PRESSED => 2;
|
||||
use constant LEFT_CTRL_PRESSED => 8;
|
||||
use constant MENU_EVENT => 8;
|
||||
use constant MOUSE_EVENT => 2;
|
||||
use constant MOUSE_MOVED => 1;
|
||||
use constant MOUSE_WHEELED => 4;
|
||||
use constant NUMLOCK_ON => 32;
|
||||
use constant RIGHTMOST_BUTTON_PRESSED => 2;
|
||||
use constant RIGHT_ALT_PRESSED => 1;
|
||||
use constant RIGHT_CTRL_PRESSED => 4;
|
||||
use constant SCROLLLOCK_ON => 64;
|
||||
use constant SHIFT_PRESSED => 16;
|
||||
use constant WINDOW_BUFFER_SIZE_EVENT => 4;
|
||||
use constant WINE_ENABLE_LINE_INPUT_EMACS => 128;
|
||||
|
||||
1;
|
|
@ -1,37 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file windef.h
|
||||
#
|
||||
|
||||
|
||||
package windef;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
HFILE_ERROR
|
||||
MAX_PATH
|
||||
WINVER
|
||||
_MAX_DIR
|
||||
_MAX_DRIVE
|
||||
_MAX_EXT
|
||||
_MAX_FNAME
|
||||
_MAX_PATH
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant HFILE_ERROR => -1;
|
||||
use constant MAX_PATH => 260;
|
||||
use constant WINVER => 1280;
|
||||
use constant _MAX_DIR => 256;
|
||||
use constant _MAX_DRIVE => 3;
|
||||
use constant _MAX_EXT => 256;
|
||||
use constant _MAX_FNAME => 256;
|
||||
use constant _MAX_PATH => 260;
|
||||
|
||||
1;
|
|
@ -1,405 +0,0 @@
|
|||
# --------------------------------------------------------------------
|
||||
# Module: wine.pm
|
||||
#
|
||||
# Purpose: Module to supply wrapper around and support for gateway to
|
||||
# Windows API functions
|
||||
#
|
||||
# Copyright 2001 John F Sturtz for Codeweavers
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
# --------------------------------------------------------------------
|
||||
|
||||
package wine;
|
||||
|
||||
use strict;
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $AUTOLOAD
|
||||
%return_types %prototypes %loaded_modules);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
|
||||
# Items to export into callers namespace by default. Note: do not export
|
||||
# names by default without a very good reason. Use EXPORT_OK instead.
|
||||
# Do not simply export all your public functions/methods/constants.
|
||||
@EXPORT = qw(
|
||||
AUTOLOAD
|
||||
alloc_callback
|
||||
);
|
||||
|
||||
$VERSION = '0.01';
|
||||
bootstrap wine $VERSION;
|
||||
|
||||
# Global variables
|
||||
$wine::err = 0;
|
||||
$wine::debug = defined($ENV{WINETEST_DEBUG}) ? $ENV{WINETEST_DEBUG} : 1;
|
||||
|
||||
%loaded_modules = ();
|
||||
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Return-type constants |
|
||||
# | |
|
||||
# | [todo] I think there's a way to define these in a C |
|
||||
# | header file, so that both the C functions in the |
|
||||
# | XS module and the Perl routines in the .pm have |
|
||||
# | access to them. But I haven't worked it out |
|
||||
# | yet ... |
|
||||
# --------------------------------------------------------------
|
||||
%return_types = (
|
||||
"void" => 0,
|
||||
"int" => 1, "long" => 1,
|
||||
"word" => 2,
|
||||
"ptr" => 3,
|
||||
"str" => 4, "wstr" => 4
|
||||
);
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# | Sub: AUTOLOAD |
|
||||
# | -------------------------------------------------------------------- |
|
||||
# | Purpose: Used to catch calls to undefined routines |
|
||||
# | |
|
||||
# | Any routine which is called and not defined is assumed to be |
|
||||
# | a call to the Wine API function of the same name. We trans- |
|
||||
# | late it into a call to the call() subroutine, with FUNCTION |
|
||||
# | set to the function invoked and all other args passed thru. |
|
||||
# ------------------------------------------------------------------------
|
||||
sub AUTOLOAD
|
||||
{
|
||||
# --------------------------------------------------------------
|
||||
# | Figure out who we are |
|
||||
# --------------------------------------------------------------
|
||||
my ($pkg, $func) = (split /::/, $AUTOLOAD)[0,1];
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Any function that is in the @EXPORT array is passed thru |
|
||||
# | to AutoLoader to pick up the appropriate XS extension |
|
||||
# --------------------------------------------------------------
|
||||
if (grep ($_ eq $func, @EXPORT))
|
||||
{
|
||||
$AutoLoader::AUTOLOAD = $AUTOLOAD;
|
||||
goto &AutoLoader::AUTOLOAD;
|
||||
}
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Ignore this |
|
||||
# --------------------------------------------------------------
|
||||
return
|
||||
if ($func eq 'DESTROY');
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Otherwise, assume any undefined method is the name of a |
|
||||
# | wine API call, and all the args are to be passed through |
|
||||
# --------------------------------------------------------------
|
||||
if (defined($prototypes{$func}))
|
||||
{
|
||||
return call( $func, @_ );
|
||||
}
|
||||
die "Function '$func' not declared";
|
||||
} # End AUTOLOAD
|
||||
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# | Sub: call |
|
||||
# | -------------------------------------------------------------------- |
|
||||
# | Purpose: Call a wine API function |
|
||||
# | |
|
||||
# | Usage: call FUNCTION, [ARGS ...]
|
||||
# | |
|
||||
# | Returns: value returned by API function called |
|
||||
# ------------------------------------------------------------------------
|
||||
sub call($@)
|
||||
{
|
||||
my ($function,@args) = @_;
|
||||
my ($module,$funcptr,$ret_type,$arg_types) = @{$prototypes{$function}};
|
||||
|
||||
unless ($funcptr)
|
||||
{
|
||||
my $handle = $loaded_modules{$module};
|
||||
$funcptr = get_proc_address( $handle, $function ) or die "Could not get address for $module.$function";
|
||||
${$prototypes{$function}}[1] = $funcptr;
|
||||
}
|
||||
|
||||
if ($wine::debug > 1)
|
||||
{
|
||||
print STDERR "==== Call $function(";
|
||||
for (@args)
|
||||
{
|
||||
print STDERR " ", +(ref () ? ("(" . ${$_} . ")") : "$_");
|
||||
}
|
||||
print STDERR " " if (scalar @args);
|
||||
print STDERR ")\n";
|
||||
}
|
||||
|
||||
# Check and translate args before call
|
||||
my @args2;
|
||||
if (defined($arg_types)) {
|
||||
my @arg_types = @$arg_types;
|
||||
|
||||
if($#args != $#arg_types) {
|
||||
die "$function: Wrong number of arguments, expected " .
|
||||
($#arg_types + 1) . ", got " . ($#args + 1) . "\n";
|
||||
}
|
||||
|
||||
while (defined(my $arg = shift @args) &&
|
||||
defined(my $arg_type = shift @arg_types))
|
||||
{
|
||||
if($arg_type == 1 || $arg_type == 2) { # int || word
|
||||
$arg = int($arg);
|
||||
}
|
||||
push @args2, $arg;
|
||||
}
|
||||
} else {
|
||||
@args2 = @args;
|
||||
}
|
||||
|
||||
# Now call call_wine_API(), which will turn around and call
|
||||
# the appropriate wine API function.
|
||||
my ($err,$r) = call_wine_API( $funcptr, $ret_type, $wine::debug-1, @args2 );
|
||||
|
||||
if ($wine::debug > 1)
|
||||
{
|
||||
print STDERR "==== Ret $function()";
|
||||
if (defined($r)) { printf STDERR " ret=0x%x", $r; }
|
||||
if (defined($err)) { printf STDERR " err=%d", $err; }
|
||||
print STDERR "\n";
|
||||
}
|
||||
|
||||
# Pass the return value back
|
||||
$wine::err = $err;
|
||||
return ($r);
|
||||
}
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# | Subroutine: declare
|
||||
# ----------------------------------------------------------------------
|
||||
sub declare($%)
|
||||
{
|
||||
my ($module, %list) = @_;
|
||||
my ($handle, $func);
|
||||
|
||||
if (defined($loaded_modules{$module}))
|
||||
{
|
||||
$handle = $loaded_modules{$module};
|
||||
}
|
||||
else
|
||||
{
|
||||
$handle = load_library($module) or die "Could not load '$module'";
|
||||
$loaded_modules{$module} = $handle;
|
||||
}
|
||||
|
||||
foreach $func (keys %list)
|
||||
{
|
||||
if(ref($list{$func}) eq "ARRAY") {
|
||||
my ($return_type, $argument_types) = @{$list{$func}};
|
||||
|
||||
my $ret_type = $return_types{$return_type};
|
||||
my $arg_types = [map { $return_types{$_} } @$argument_types];
|
||||
|
||||
$prototypes{$func} = [ $module, 0, $ret_type, $arg_types ];
|
||||
} else {
|
||||
my $ret_type = $return_types{$list{$func}};
|
||||
|
||||
$prototypes{$func} = [ $module, 0, $ret_type ];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# | Sub: alloc_callback |
|
||||
# | -------------------------------------------------------------------- |
|
||||
# | Purpose: Allocate a thunk for a Wine API callback function. |
|
||||
# | |
|
||||
# | Basically a thin wrapper over alloc_thunk(); see wine.xs for |
|
||||
# | details ... |
|
||||
# | |
|
||||
# | Usage: alloc_callback SUB_REF, [ ARGS_TYPES ... ] |
|
||||
# | |
|
||||
# | Returns: Pointer to thunk allocated (as an integer value) |
|
||||
# | |
|
||||
# | The returned value is just a raw pointer to a block of memory |
|
||||
# | allocated by the C code (cast into a Perl integer). It isn't |
|
||||
# | really suitable for anything but to be passed to a wine API |
|
||||
# | function ... |
|
||||
# ------------------------------------------------------------------------
|
||||
sub alloc_callback($@)
|
||||
{
|
||||
# ----------------------------------------------
|
||||
# | Locals |
|
||||
# | |
|
||||
# | [todo] Check arg types |
|
||||
# ----------------------------------------------
|
||||
my $sub_ref = shift;
|
||||
my @callback_arg_types = @_;
|
||||
|
||||
# [todo] Check args
|
||||
# [todo] Some way of specifying args passed to callback
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Convert arg types to integers |
|
||||
# --------------------------------------------------------------
|
||||
map { $_ = $return_types{$_} } @callback_arg_types;
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Pass thru to alloc_thunk() |
|
||||
# --------------------------------------------------------------
|
||||
return alloc_thunk ($sub_ref, @callback_arg_types);
|
||||
}
|
||||
|
||||
# Autoload methods go after =cut, and are processed by the autosplit program.
|
||||
1;
|
||||
__END__
|
||||
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# | pod documentation |
|
||||
# | |
|
||||
# | |
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
=head1 NAME
|
||||
|
||||
wine - Perl extension for calling wine API functions
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use wine;
|
||||
|
||||
wine::declare( "kernel32",
|
||||
SetLastError => ["void", ["int"]],
|
||||
GetLastError => ["int", []] );
|
||||
SetLastError( 1234 );
|
||||
printf "%d\n", GetLastError();
|
||||
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This module provides a gateway for calling Win32 API functions from
|
||||
a Perl script.
|
||||
|
||||
=head1 CALLING WIN32 API FUNCTIONS
|
||||
|
||||
The functions you want to call must first be declared by calling
|
||||
the wine::declare method. The first argument is the name of the
|
||||
module containing the APIs, and the next argument is a list of
|
||||
function names and their return and argument types. For instance:
|
||||
|
||||
wine::declare( "kernel32",
|
||||
SetLastError => ["void", ["int"]],
|
||||
GetLastError => ["int", []] );
|
||||
|
||||
declares that the functions SetLastError and GetLastError are
|
||||
contained in the kernel32 dll.
|
||||
|
||||
Once you have done that you can call the functions directly just
|
||||
like native Perl functions:
|
||||
|
||||
SetLastError( $some_error );
|
||||
|
||||
The supported return types are:
|
||||
|
||||
=over 4
|
||||
|
||||
=item void
|
||||
|
||||
=item word
|
||||
|
||||
=item long
|
||||
|
||||
=item ptr
|
||||
|
||||
=item str
|
||||
|
||||
=item wstr
|
||||
|
||||
=back
|
||||
|
||||
=head1 $wine::err VARIABLE
|
||||
|
||||
In the Win32 API, an integer error code is maintained which always
|
||||
contains the status of the last API function called. In C code,
|
||||
it is accessed via the GetLastError() function. From a Perl script,
|
||||
it can be accessed via the package global $wine::err. For example:
|
||||
|
||||
GlobalGetAtomNameA ($atom, \$buf, -1);
|
||||
if ($wine::err == 234)
|
||||
{
|
||||
...
|
||||
}
|
||||
|
||||
Wine returns 234 (ERROR_MORE_DATA) from the GlobalGetAtomNameA()
|
||||
API function in this case because the buffer length passed is -1
|
||||
(hardly enough room to store anything in ...)
|
||||
|
||||
If the called API didn't set the last error code, $wine:;err is
|
||||
undefined.
|
||||
|
||||
=head1 $wine::debug VARIABLE
|
||||
|
||||
This variable can be set to 1 to enable debugging of the API calls,
|
||||
which will print a lot of information about what's going on inside the
|
||||
wine package while calling an API function.
|
||||
|
||||
=head1 OTHER USEFUL FUNCTIONS
|
||||
|
||||
The bundle that includes the wine extension also includes a module of
|
||||
plain ol' Perl subroutines which are useful for interacting with wine
|
||||
API functions. Currently supported functions are:
|
||||
|
||||
=over 4
|
||||
|
||||
=item hd BUF [, LENGTH]
|
||||
|
||||
Dump a formatted hex dump to STDOUT. BUF is a string containing
|
||||
the buffer to dump; LENGTH is the length to dump (length (BUF) if
|
||||
omitted). This is handy because wine often writes a null character
|
||||
into the middle of a buffer, thinking that the next piece of code to
|
||||
look at the buffer will be a piece of C code that will regard it as
|
||||
a string terminator. Little does it know that the buffer is going
|
||||
to be returned to a Perl script, which may not ...
|
||||
|
||||
=item wc STR
|
||||
|
||||
Generate and return a wide-character (Unicode) string from the given
|
||||
ASCII string
|
||||
|
||||
=item wclen WSTR
|
||||
|
||||
Return the length of the given wide-character string
|
||||
|
||||
=item assert CONDITION
|
||||
|
||||
Print a message if the assertion fails (i.e., CONDITION is false),
|
||||
or do nothing quietly if it is true. The message includes the script
|
||||
name and line number of the assertion that failed.
|
||||
|
||||
=back
|
||||
|
||||
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
John F Sturtz, jsturtz@codeweavers.com
|
||||
|
||||
=head1 SEE ALSO
|
||||
|
||||
wine documentation
|
||||
|
||||
=cut
|
|
@ -1,21 +0,0 @@
|
|||
package winearts_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"wodMessage" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("winearts.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,33 +0,0 @@
|
|||
package winedos;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"ASPIHandler" => ["void", ["ptr"]],
|
||||
"AllocRMCB" => ["void", ["ptr"]],
|
||||
"CallRMInt" => ["void", ["ptr"]],
|
||||
"CallRMProc" => ["void", ["ptr"]],
|
||||
"Enter" => ["long", ["ptr"]],
|
||||
"FreeRMCB" => ["void", ["ptr"]],
|
||||
"GetTimer" => ["long", []],
|
||||
"KbdReadScan" => ["long", ["ptr"]],
|
||||
"LoadDosExe" => ["void", ["str", "long"]],
|
||||
"OutPIC" => ["void", ["long", "long"]],
|
||||
"QueueEvent" => ["void", ["long", "long", "undef", "ptr"]],
|
||||
"RawModeSwitch" => ["void", ["ptr"]],
|
||||
"SetTimer" => ["void", ["long"]],
|
||||
"Wait" => ["void", ["long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("winedos",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,26 +0,0 @@
|
|||
package wineoss_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"DriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"auxMessage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"mixMessage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"midMessage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"modMessage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"widMessage" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"wodMessage" => ["long", ["long", "long", "long", "long", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("wineoss.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
File diff suppressed because it is too large
Load Diff
|
@ -1,346 +0,0 @@
|
|||
# --------------------------------------------------------------------
|
||||
# Main routines for the Wine test environment
|
||||
#
|
||||
# Copyright 2001 John F Sturtz for Codeweavers
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
# --------------------------------------------------------------------
|
||||
|
||||
package winetest;
|
||||
|
||||
use strict;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK $todo_level
|
||||
$successes $failures $todo_successes $todo_failures $winetest_report_success);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
|
||||
# Items to export into callers namespace by default. Note: do not export
|
||||
# names by default without a very good reason. Use EXPORT_OK instead.
|
||||
# Do not simply export all your public functions/methods/constants.
|
||||
@EXPORT = qw(
|
||||
assert
|
||||
hd
|
||||
ok
|
||||
todo
|
||||
todo_wine
|
||||
trace
|
||||
wc
|
||||
wclen
|
||||
);
|
||||
|
||||
# Global variables
|
||||
$wine::debug = defined($ENV{WINETEST_DEBUG}) ? $ENV{WINETEST_DEBUG} : 1;
|
||||
$wine::platform = defined($ENV{WINETEST_PLATFORM}) ? $ENV{WINETEST_PLATFORM} : "windows";
|
||||
|
||||
$todo_level = 0;
|
||||
$successes = 0;
|
||||
$failures = 0;
|
||||
$todo_successes = 0;
|
||||
$todo_failures = 0;
|
||||
$winetest_report_success = defined($ENV{WINETEST_REPORT_SUCCESS}) ? $ENV{WINETEST_REPORT_SUCCESS} : 0;
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# | Subroutine: hd |
|
||||
# | |
|
||||
# | Purpose: Display a hex dump of a string |
|
||||
# | |
|
||||
# | Usage: hd STR |
|
||||
# | Usage: hd STR, LENGTH |
|
||||
# | |
|
||||
# | Returns: (none) |
|
||||
# ----------------------------------------------------------------------
|
||||
sub hd($;$)
|
||||
{
|
||||
# Locals
|
||||
my ($buf, $length);
|
||||
my $first;
|
||||
my ($str1, $str2, $str, $t);
|
||||
my ($c, $x);
|
||||
|
||||
# Begin sub hd
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Get args; if no BUF specified, blow |
|
||||
# --------------------------------------------------------------
|
||||
$buf = shift;
|
||||
$length = (shift or length ($buf));
|
||||
return
|
||||
if ((not defined ($buf)) || ($length <= 0));
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Initialize |
|
||||
# --------------------------------------------------------------
|
||||
$first = 1;
|
||||
$str1 = "00000:";
|
||||
$str2 = "";
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | For each character |
|
||||
# --------------------------------------------------------------
|
||||
for (0 .. ($length - 1))
|
||||
{
|
||||
$c = substr ($buf, $_, 1);
|
||||
$x = sprintf ("%02x", ord ($c));
|
||||
$str1 .= (" " . $x);
|
||||
$str2 .= (((ord ($c) >= 33) && (ord ($c) <= 126)) ? $c : ".");
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Every group of 4, add an extra space |
|
||||
# --------------------------------------------------------------
|
||||
if
|
||||
(
|
||||
((($_ + 1) % 16) == 4) ||
|
||||
((($_ + 1) % 16) == 12)
|
||||
)
|
||||
{
|
||||
$str1 .= " ";
|
||||
$str2 .= " ";
|
||||
}
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Every group of 8, add a '-' |
|
||||
# --------------------------------------------------------------
|
||||
elsif
|
||||
(
|
||||
((($_ + 1) % 16) == 8)
|
||||
)
|
||||
{
|
||||
$str1 .= " -";
|
||||
$str2 .= " ";
|
||||
}
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Every group of 16, dump |
|
||||
# --------------------------------------------------------------
|
||||
if
|
||||
(
|
||||
((($_ + 1) % 16) == 0) ||
|
||||
($_ == ($length - 1))
|
||||
)
|
||||
{
|
||||
$str = sprintf ("%-64s%s", $str1, $str2);
|
||||
if ($first)
|
||||
{
|
||||
$t = ("-" x length ($str));
|
||||
print " $t\n";
|
||||
print " | $length bytes\n";
|
||||
print " $t\n";
|
||||
$first = 0;
|
||||
}
|
||||
print " $str\n";
|
||||
$str1 = sprintf ("%05d:", ($_ + 1));
|
||||
$str2 = "";
|
||||
if ($_ == ($length - 1))
|
||||
{
|
||||
print " $t\n";
|
||||
}
|
||||
}
|
||||
|
||||
} # end for
|
||||
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# | Exit point |
|
||||
# --------------------------------------------------------------
|
||||
return;
|
||||
|
||||
} # End sub hd
|
||||
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# | Subroutine: wc |
|
||||
# | |
|
||||
# | Purpose: Generate unicode string |
|
||||
# | |
|
||||
# | Usage: wc ASCII_STRING |
|
||||
# | |
|
||||
# | Returns: string generated |
|
||||
# ----------------------------------------------------------------------
|
||||
sub wc($)
|
||||
{
|
||||
return pack("S*",unpack("C*",shift));
|
||||
} # End sub wc
|
||||
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# | Subroutine: wclen |
|
||||
# | |
|
||||
# | Purpose: Return length of unicode string |
|
||||
# | |
|
||||
# | Usage: wclen UNICODE_STRING |
|
||||
# | |
|
||||
# | Returns: string generated |
|
||||
# ----------------------------------------------------------------------
|
||||
sub wclen($)
|
||||
{
|
||||
# Locals
|
||||
my $str = shift;
|
||||
my ($c1, $c2, $n);
|
||||
|
||||
# Begin sub wclen
|
||||
|
||||
$n = 0;
|
||||
while (length ($str) > 0)
|
||||
{
|
||||
$c1 = substr ($str, 0, 1, "");
|
||||
$c2 = substr ($str, 0, 1, "");
|
||||
(($c1 eq "\x00") && ($c2 eq "\x00")) ? last : $n++;
|
||||
}
|
||||
|
||||
return ($n);
|
||||
|
||||
} # End sub wclen
|
||||
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Subroutine: ok
|
||||
#
|
||||
# Purpose: Print warning if something fails
|
||||
#
|
||||
# Usage: ok CONDITION [DESCRIPTION]
|
||||
#
|
||||
# Returns: (none)
|
||||
# ----------------------------------------------------------------------
|
||||
sub ok($;$)
|
||||
{
|
||||
my $assertion = shift;
|
||||
my $description = shift;
|
||||
my ($filename, $line) = (caller (0))[1,2];
|
||||
if ($todo_level)
|
||||
{
|
||||
if ($assertion)
|
||||
{
|
||||
print STDERR ("$filename:$line: Test succeeded inside todo block" .
|
||||
($description ? ": $description" : "") . "\n");
|
||||
$todo_failures++;
|
||||
}
|
||||
else { $todo_successes++; }
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!$assertion)
|
||||
{
|
||||
print STDERR ("$filename:$line: Test failed" .
|
||||
($description ? ": $description" : "") . "\n");
|
||||
$failures++;
|
||||
}
|
||||
else
|
||||
{
|
||||
print STDERR ("$filename:$line: Test succeeded\n") if ($winetest_report_success);
|
||||
$successes++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Subroutine: assert
|
||||
#
|
||||
# Purpose: Print error and die if something fails
|
||||
#
|
||||
# Usage: assert CONDITION [DESCRIPTION]
|
||||
#
|
||||
# Returns: (none)
|
||||
# ----------------------------------------------------------------------
|
||||
sub assert($;$)
|
||||
{
|
||||
my $assertion = shift;
|
||||
my $description = shift;
|
||||
my ($filename, $line) = (caller (0))[1,2];
|
||||
unless ($assertion)
|
||||
{
|
||||
die ("$filename:$line: Assertion failed" . ($description ? ": $description" : "") . "\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Subroutine: trace
|
||||
#
|
||||
# Purpose: Print debugging traces
|
||||
#
|
||||
# Usage: trace format [arguments]
|
||||
# ----------------------------------------------------------------------
|
||||
sub trace($@)
|
||||
{
|
||||
return unless ($wine::debug > 0);
|
||||
my $format = shift;
|
||||
my $filename = (caller(0))[1];
|
||||
$filename =~ s!.*/!!;
|
||||
printf "trace:$filename $format", @_;
|
||||
}
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Subroutine: todo
|
||||
#
|
||||
# Purpose: Specify a block of code as todo for a given platform
|
||||
#
|
||||
# Usage: todo name coderef
|
||||
# ----------------------------------------------------------------------
|
||||
sub todo($$)
|
||||
{
|
||||
my ($platform,$code) = @_;
|
||||
if ($wine::platform eq $platform)
|
||||
{
|
||||
$todo_level++;
|
||||
eval &$code;
|
||||
$todo_level--;
|
||||
}
|
||||
else
|
||||
{
|
||||
eval &$code;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Subroutine: todo_wine
|
||||
#
|
||||
# Purpose: Specify a block of test as todo for the Wine platform
|
||||
#
|
||||
# Usage: todo_wine { code }
|
||||
# ----------------------------------------------------------------------
|
||||
sub todo_wine(&)
|
||||
{
|
||||
my $code = shift;
|
||||
todo( "wine", $code );
|
||||
}
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# Subroutine: END
|
||||
#
|
||||
# Purpose: Called at the end of execution, print results summary
|
||||
# ----------------------------------------------------------------------
|
||||
END
|
||||
{
|
||||
return if $?; # got some other error already
|
||||
if ($wine::debug > 0)
|
||||
{
|
||||
my $filename = (caller(0))[1];
|
||||
printf STDERR ("%s: %d tests executed, %d marked as todo, %d %s.\n",
|
||||
$filename, $successes + $failures + $todo_successes + $todo_failures,
|
||||
$todo_successes, $failures + $todo_failures,
|
||||
($failures + $todo_failures != 1) ? "failures" : "failure" );
|
||||
}
|
||||
$? = ($failures + $todo_failures < 255) ? $failures + $todo_failures : 255;
|
||||
}
|
||||
|
||||
1;
|
File diff suppressed because it is too large
Load Diff
|
@ -1,56 +0,0 @@
|
|||
package wininet;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"CommitUrlCacheEntryA" => ["long", ["str", "str", "long", "long", "long", "ptr", "long", "str", "long"]],
|
||||
"DllInstall" => ["long", ["long", "wstr"]],
|
||||
"FtpCreateDirectoryA" => ["long", ["long", "str"]],
|
||||
"FtpDeleteFileA" => ["long", ["long", "str"]],
|
||||
"FtpFindFirstFileA" => ["long", ["long", "str", "ptr", "long", "long"]],
|
||||
"FtpGetCurrentDirectoryA" => ["long", ["long", "str", "ptr"]],
|
||||
"FtpGetFileA" => ["long", ["long", "str", "str", "long", "long", "long", "long"]],
|
||||
"FtpOpenFileA" => ["long", ["long", "str", "long", "long", "long"]],
|
||||
"FtpPutFileA" => ["long", ["long", "str", "str", "long", "long"]],
|
||||
"FtpRemoveDirectoryA" => ["long", ["long", "str"]],
|
||||
"FtpRenameFileA" => ["long", ["long", "str", "str"]],
|
||||
"FtpSetCurrentDirectoryA" => ["long", ["long", "str"]],
|
||||
"GetUrlCacheEntryInfoA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"HttpAddRequestHeadersA" => ["long", ["long", "str", "long", "long"]],
|
||||
"HttpOpenRequestA" => ["long", ["long", "str", "str", "str", "str", "ptr", "long", "long"]],
|
||||
"HttpQueryInfoA" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
|
||||
"HttpSendRequestA" => ["long", ["long", "str", "long", "ptr", "long"]],
|
||||
"HttpSendRequestExA" => ["long", ["long", "ptr", "ptr", "long", "long"]],
|
||||
"InternetAttemptConnect" => ["long", ["long"]],
|
||||
"InternetCanonicalizeUrlA" => ["long", ["str", "str", "ptr", "long"]],
|
||||
"InternetCheckConnectionA" => ["long", ["str", "long", "long"]],
|
||||
"InternetCloseHandle" => ["long", ["long"]],
|
||||
"InternetConnectA" => ["long", ["long", "str", "long", "str", "str", "long", "long", "long"]],
|
||||
"InternetCrackUrlA" => ["long", ["str", "long", "long", "ptr"]],
|
||||
"InternetFindNextFileA" => ["long", ["long", "ptr"]],
|
||||
"InternetGetConnectedState" => ["long", ["ptr", "long"]],
|
||||
"InternetGetCookieA" => ["long", ["str", "str", "str", "ptr"]],
|
||||
"InternetGetLastResponseInfoA" => ["long", ["ptr", "str", "ptr"]],
|
||||
"InternetOpenA" => ["long", ["str", "long", "str", "str", "long"]],
|
||||
"InternetOpenUrlA" => ["long", ["long", "str", "str", "long", "long", "long"]],
|
||||
"InternetQueryOptionA" => ["long", ["long", "long", "ptr", "ptr"]],
|
||||
"InternetReadFile" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"InternetSetCookieA" => ["long", ["str", "str", "str"]],
|
||||
"InternetSetOptionA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"InternetSetOptionW" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"InternetSetStatusCallback" => ["ptr", ["long", "ptr"]],
|
||||
"InternetWriteFile" => ["long", ["long", "ptr", "long", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("wininet",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,194 +0,0 @@
|
|||
package winmm;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"CloseDriver" => ["long", ["long", "long", "long"]],
|
||||
"DefDriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"DriverCallback" => ["long", ["long", "long", "long", "long", "long", "long", "long"]],
|
||||
"DrvClose" => ["long", ["long", "long", "long"]],
|
||||
"DrvDefDriverProc" => ["long", ["long", "long", "long", "long", "long"]],
|
||||
"DrvGetModuleHandle" => ["long", ["long"]],
|
||||
"DrvOpen" => ["long", ["wstr", "wstr", "long"]],
|
||||
"DrvOpenA" => ["long", ["str", "str", "long"]],
|
||||
"DrvSendMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"GetDriverFlags" => ["long", ["long"]],
|
||||
"GetDriverModuleHandle" => ["long", ["long"]],
|
||||
"OpenDriver" => ["long", ["wstr", "wstr", "long"]],
|
||||
"OpenDriverA" => ["long", ["str", "str", "long"]],
|
||||
"PlaySoundA" => ["long", ["str", "long", "long"]],
|
||||
"PlaySoundW" => ["long", ["wstr", "long", "long"]],
|
||||
"SendDriverMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"auxGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"auxGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"auxGetNumDevs" => ["long", []],
|
||||
"auxGetVolume" => ["long", ["long", "ptr"]],
|
||||
"auxOutMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"auxSetVolume" => ["long", ["long", "long"]],
|
||||
"joyGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"joyGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"joyGetNumDevs" => ["long", []],
|
||||
"joyGetPos" => ["long", ["long", "ptr"]],
|
||||
"joyGetPosEx" => ["long", ["long", "ptr"]],
|
||||
"joyGetThreshold" => ["long", ["long", "ptr"]],
|
||||
"joyReleaseCapture" => ["long", ["long"]],
|
||||
"joySetCapture" => ["long", ["long", "long", "long", "long"]],
|
||||
"joySetThreshold" => ["long", ["long", "long"]],
|
||||
"mciDriverNotify" => ["long", ["long", "long", "long"]],
|
||||
"mciDriverYield" => ["long", ["long"]],
|
||||
"mciExecute" => ["long", ["str"]],
|
||||
"mciFreeCommandResource" => ["long", ["long"]],
|
||||
"mciGetCreatorTask" => ["long", ["long"]],
|
||||
"mciGetDeviceIDA" => ["long", ["str"]],
|
||||
"mciGetDeviceIDFromElementIDW" => ["long", ["long", "wstr"]],
|
||||
"mciGetDeviceIDW" => ["long", ["wstr"]],
|
||||
"mciGetDriverData" => ["long", ["long"]],
|
||||
"mciGetErrorStringA" => ["long", ["long", "str", "long"]],
|
||||
"mciGetErrorStringW" => ["long", ["long", "wstr", "long"]],
|
||||
"mciGetYieldProc" => ["ptr", ["long", "ptr"]],
|
||||
"mciLoadCommandResource" => ["long", ["long", "wstr", "long"]],
|
||||
"mciSendCommandA" => ["long", ["long", "long", "long", "long"]],
|
||||
"mciSendCommandW" => ["long", ["long", "long", "long", "long"]],
|
||||
"mciSendStringA" => ["long", ["str", "str", "long", "long"]],
|
||||
"mciSendStringW" => ["long", ["wstr", "str", "long", "long"]],
|
||||
"mciSetDriverData" => ["long", ["long", "long"]],
|
||||
"mciSetYieldProc" => ["long", ["long", "ptr", "long"]],
|
||||
"midiInAddBuffer" => ["long", ["long", "ptr", "long"]],
|
||||
"midiInClose" => ["long", ["long"]],
|
||||
"midiInGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"midiInGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"midiInGetErrorTextA" => ["long", ["long", "str", "long"]],
|
||||
"midiInGetErrorTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"midiInGetID" => ["long", ["long", "ptr"]],
|
||||
"midiInGetNumDevs" => ["long", []],
|
||||
"midiInMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"midiInOpen" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"midiInPrepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"midiInReset" => ["long", ["long"]],
|
||||
"midiInStart" => ["long", ["long"]],
|
||||
"midiInStop" => ["long", ["long"]],
|
||||
"midiInUnprepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"midiOutCacheDrumPatches" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"midiOutCachePatches" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"midiOutClose" => ["long", ["long"]],
|
||||
"midiOutGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"midiOutGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"midiOutGetErrorTextA" => ["long", ["long", "str", "long"]],
|
||||
"midiOutGetErrorTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"midiOutGetID" => ["long", ["long", "ptr"]],
|
||||
"midiOutGetNumDevs" => ["long", []],
|
||||
"midiOutGetVolume" => ["long", ["long", "ptr"]],
|
||||
"midiOutLongMsg" => ["long", ["long", "ptr", "long"]],
|
||||
"midiOutMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"midiOutOpen" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"midiOutPrepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"midiOutReset" => ["long", ["long"]],
|
||||
"midiOutSetVolume" => ["long", ["long", "long"]],
|
||||
"midiOutShortMsg" => ["long", ["long", "long"]],
|
||||
"midiOutUnprepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"midiStreamClose" => ["long", ["long"]],
|
||||
"midiStreamOpen" => ["long", ["ptr", "ptr", "long", "long", "long", "long"]],
|
||||
"midiStreamOut" => ["long", ["long", "ptr", "long"]],
|
||||
"midiStreamPause" => ["long", ["long"]],
|
||||
"midiStreamPosition" => ["long", ["long", "ptr", "long"]],
|
||||
"midiStreamProperty" => ["long", ["long", "ptr", "long"]],
|
||||
"midiStreamRestart" => ["long", ["long"]],
|
||||
"midiStreamStop" => ["long", ["long"]],
|
||||
"mixerClose" => ["long", ["long"]],
|
||||
"mixerGetControlDetailsA" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetControlDetailsW" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetID" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetLineControlsA" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetLineControlsW" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetLineInfoA" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetLineInfoW" => ["long", ["long", "ptr", "long"]],
|
||||
"mixerGetNumDevs" => ["long", []],
|
||||
"mixerMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"mixerOpen" => ["long", ["ptr", "long", "long", "long", "long"]],
|
||||
"mixerSetControlDetails" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioAdvance" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioAscend" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioClose" => ["long", ["long", "long"]],
|
||||
"mmioCreateChunk" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioDescend" => ["long", ["long", "ptr", "ptr", "long"]],
|
||||
"mmioFlush" => ["long", ["long", "long"]],
|
||||
"mmioGetInfo" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioInstallIOProcA" => ["ptr", ["long", "ptr", "long"]],
|
||||
"mmioInstallIOProcW" => ["ptr", ["long", "ptr", "long"]],
|
||||
"mmioOpenA" => ["long", ["str", "ptr", "long"]],
|
||||
"mmioOpenW" => ["long", ["wstr", "ptr", "long"]],
|
||||
"mmioRead" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioRenameA" => ["long", ["str", "str", "ptr", "long"]],
|
||||
"mmioRenameW" => ["long", ["wstr", "wstr", "ptr", "long"]],
|
||||
"mmioSeek" => ["long", ["long", "long", "long"]],
|
||||
"mmioSendMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"mmioSetBuffer" => ["long", ["long", "str", "long", "long"]],
|
||||
"mmioSetInfo" => ["long", ["long", "ptr", "long"]],
|
||||
"mmioStringToFOURCCA" => ["long", ["str", "long"]],
|
||||
"mmioStringToFOURCCW" => ["long", ["wstr", "long"]],
|
||||
"mmioWrite" => ["long", ["long", "ptr", "long"]],
|
||||
"mmsystemGetVersion" => ["long", []],
|
||||
"sndPlaySoundA" => ["long", ["str", "long"]],
|
||||
"sndPlaySoundW" => ["long", ["wstr", "long"]],
|
||||
"timeBeginPeriod" => ["long", ["long"]],
|
||||
"timeEndPeriod" => ["long", ["long"]],
|
||||
"timeGetDevCaps" => ["long", ["ptr", "long"]],
|
||||
"timeGetSystemTime" => ["long", ["ptr", "long"]],
|
||||
"timeGetTime" => ["long", []],
|
||||
"timeKillEvent" => ["long", ["long"]],
|
||||
"timeSetEvent" => ["long", ["long", "long", "ptr", "long", "long"]],
|
||||
"waveInAddBuffer" => ["long", ["long", "ptr", "long"]],
|
||||
"waveInClose" => ["long", ["long"]],
|
||||
"waveInGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"waveInGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"waveInGetErrorTextA" => ["long", ["long", "str", "long"]],
|
||||
"waveInGetErrorTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"waveInGetID" => ["long", ["long", "ptr"]],
|
||||
"waveInGetNumDevs" => ["long", []],
|
||||
"waveInGetPosition" => ["long", ["long", "ptr", "long"]],
|
||||
"waveInMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"waveInOpen" => ["long", ["ptr", "long", "ptr", "long", "long", "long"]],
|
||||
"waveInPrepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"waveInReset" => ["long", ["long"]],
|
||||
"waveInStart" => ["long", ["long"]],
|
||||
"waveInStop" => ["long", ["long"]],
|
||||
"waveInUnprepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"waveOutBreakLoop" => ["long", ["long"]],
|
||||
"waveOutClose" => ["long", ["long"]],
|
||||
"waveOutGetDevCapsA" => ["long", ["long", "ptr", "long"]],
|
||||
"waveOutGetDevCapsW" => ["long", ["long", "ptr", "long"]],
|
||||
"waveOutGetErrorTextA" => ["long", ["long", "str", "long"]],
|
||||
"waveOutGetErrorTextW" => ["long", ["long", "wstr", "long"]],
|
||||
"waveOutGetID" => ["long", ["long", "ptr"]],
|
||||
"waveOutGetNumDevs" => ["long", []],
|
||||
"waveOutGetPitch" => ["long", ["long", "ptr"]],
|
||||
"waveOutGetPlaybackRate" => ["long", ["long", "ptr"]],
|
||||
"waveOutGetPosition" => ["long", ["long", "ptr", "long"]],
|
||||
"waveOutGetVolume" => ["long", ["long", "ptr"]],
|
||||
"waveOutMessage" => ["long", ["long", "long", "long", "long"]],
|
||||
"waveOutOpen" => ["long", ["ptr", "long", "ptr", "long", "long", "long"]],
|
||||
"waveOutPause" => ["long", ["long"]],
|
||||
"waveOutPrepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"waveOutReset" => ["long", ["long"]],
|
||||
"waveOutRestart" => ["long", ["long"]],
|
||||
"waveOutSetPitch" => ["long", ["long", "long"]],
|
||||
"waveOutSetPlaybackRate" => ["long", ["long", "long"]],
|
||||
"waveOutSetVolume" => ["long", ["long", "long"]],
|
||||
"waveOutUnprepareHeader" => ["long", ["long", "ptr", "long"]],
|
||||
"waveOutWrite" => ["long", ["long", "ptr", "long"]]
|
||||
};
|
||||
|
||||
&wine::declare("winmm",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,529 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file winnls.h
|
||||
#
|
||||
|
||||
|
||||
package winnls;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
C1_ALPHA
|
||||
C1_BLANK
|
||||
C1_CNTRL
|
||||
C1_DIGIT
|
||||
C1_LOWER
|
||||
C1_PUNCT
|
||||
C1_SPACE
|
||||
C1_UPPER
|
||||
C1_XDIGIT
|
||||
C2_ARABICNUMBER
|
||||
C2_BLOCKSEPARATOR
|
||||
C2_COMMONSEPARATOR
|
||||
C2_EUROPENUMBER
|
||||
C2_EUROPESEPARATOR
|
||||
C2_EUROPETERMINATOR
|
||||
C2_LEFTTORIGHT
|
||||
C2_NOTAPPLICABLE
|
||||
C2_OTHERNEUTRAL
|
||||
C2_RIGHTTOLEFT
|
||||
C2_SEGMENTSEPARATOR
|
||||
C2_WHITESPACE
|
||||
C3_ALPHA
|
||||
C3_DIACRITIC
|
||||
C3_FULLWIDTH
|
||||
C3_HALFWIDTH
|
||||
C3_HIRAGANA
|
||||
C3_IDEOGRAPH
|
||||
C3_KASHIDA
|
||||
C3_KATAKANA
|
||||
C3_LEXICAL
|
||||
C3_NONSPACING
|
||||
C3_NOTAPPLICABLE
|
||||
C3_SYMBOL
|
||||
C3_VOWELMARK
|
||||
CAL_GREGORIAN
|
||||
CAL_GREGORIAN_ARABIC
|
||||
CAL_GREGORIAN_ME_FRENCH
|
||||
CAL_GREGORIAN_US
|
||||
CAL_GREGORIAN_XLIT_ENGLISH
|
||||
CAL_GREGORIAN_XLIT_FRENCH
|
||||
CAL_HEBREW
|
||||
CAL_HIJRI
|
||||
CAL_ICALINTVALUE
|
||||
CAL_IYEAROFFSETRANGE
|
||||
CAL_JAPAN
|
||||
CAL_KOREA
|
||||
CAL_SABBREVDAYNAME1
|
||||
CAL_SABBREVDAYNAME2
|
||||
CAL_SABBREVDAYNAME3
|
||||
CAL_SABBREVDAYNAME4
|
||||
CAL_SABBREVDAYNAME5
|
||||
CAL_SABBREVDAYNAME6
|
||||
CAL_SABBREVDAYNAME7
|
||||
CAL_SABBREVMONTHNAME1
|
||||
CAL_SABBREVMONTHNAME10
|
||||
CAL_SABBREVMONTHNAME11
|
||||
CAL_SABBREVMONTHNAME12
|
||||
CAL_SABBREVMONTHNAME13
|
||||
CAL_SABBREVMONTHNAME2
|
||||
CAL_SABBREVMONTHNAME3
|
||||
CAL_SABBREVMONTHNAME4
|
||||
CAL_SABBREVMONTHNAME5
|
||||
CAL_SABBREVMONTHNAME6
|
||||
CAL_SABBREVMONTHNAME7
|
||||
CAL_SABBREVMONTHNAME8
|
||||
CAL_SABBREVMONTHNAME9
|
||||
CAL_SCALNAME
|
||||
CAL_SDAYNAME1
|
||||
CAL_SDAYNAME2
|
||||
CAL_SDAYNAME3
|
||||
CAL_SDAYNAME4
|
||||
CAL_SDAYNAME5
|
||||
CAL_SDAYNAME6
|
||||
CAL_SDAYNAME7
|
||||
CAL_SERASTRING
|
||||
CAL_SLONGDATE
|
||||
CAL_SMONTHNAME1
|
||||
CAL_SMONTHNAME10
|
||||
CAL_SMONTHNAME11
|
||||
CAL_SMONTHNAME12
|
||||
CAL_SMONTHNAME13
|
||||
CAL_SMONTHNAME2
|
||||
CAL_SMONTHNAME3
|
||||
CAL_SMONTHNAME4
|
||||
CAL_SMONTHNAME5
|
||||
CAL_SMONTHNAME6
|
||||
CAL_SMONTHNAME7
|
||||
CAL_SMONTHNAME8
|
||||
CAL_SMONTHNAME9
|
||||
CAL_SSHORTDATE
|
||||
CAL_SYEARMONTH
|
||||
CAL_TAIWAN
|
||||
CAL_THAI
|
||||
CP_ACP
|
||||
CP_MACCP
|
||||
CP_OEMCP
|
||||
CP_SYMBOL
|
||||
CP_THREAD_ACP
|
||||
CP_UTF7
|
||||
CP_UTF8
|
||||
CT_CTYPE1
|
||||
CT_CTYPE2
|
||||
CT_CTYPE3
|
||||
DATE_DATEVARSONLY
|
||||
DATE_LONGDATE
|
||||
DATE_SHORTDATE
|
||||
DATE_USE_ALT_CALENDAR
|
||||
ITU_IMPLEMENTED_TESTS
|
||||
LCID_INSTALLED
|
||||
LCMAP_BYTEREV
|
||||
LCMAP_FULLWIDTH
|
||||
LCMAP_HALFWIDTH
|
||||
LCMAP_HIRAGANA
|
||||
LCMAP_KATAKANA
|
||||
LCMAP_LOWERCASE
|
||||
LCMAP_SORTKEY
|
||||
LCMAP_UPPERCASE
|
||||
LOCALE_FONTSIGNATURE
|
||||
LOCALE_ICALENDARTYPE
|
||||
LOCALE_ICENTURY
|
||||
LOCALE_ICOUNTRY
|
||||
LOCALE_ICURRDIGITS
|
||||
LOCALE_ICURRENCY
|
||||
LOCALE_IDATE
|
||||
LOCALE_IDAYLZERO
|
||||
LOCALE_IDEFAULTANSICODEPAGE
|
||||
LOCALE_IDEFAULTCODEPAGE
|
||||
LOCALE_IDEFAULTCOUNTRY
|
||||
LOCALE_IDEFAULTEBCDICCODEPAGE
|
||||
LOCALE_IDEFAULTLANGUAGE
|
||||
LOCALE_IDEFAULTMACCODEPAGE
|
||||
LOCALE_IDIGITS
|
||||
LOCALE_IDIGITSUBSTITUTION
|
||||
LOCALE_IFIRSTDAYOFWEEK
|
||||
LOCALE_IFIRSTWEEKOFYEAR
|
||||
LOCALE_IINTLCURRDIGITS
|
||||
LOCALE_ILANGUAGE
|
||||
LOCALE_ILDATE
|
||||
LOCALE_ILZERO
|
||||
LOCALE_IMEASURE
|
||||
LOCALE_IMONLZERO
|
||||
LOCALE_INEGCURR
|
||||
LOCALE_INEGNUMBER
|
||||
LOCALE_INEGSEPBYSPACE
|
||||
LOCALE_INEGSIGNPOSN
|
||||
LOCALE_INEGSYMPRECEDES
|
||||
LOCALE_IOPTIONALCALENDAR
|
||||
LOCALE_IPAPERSIZE
|
||||
LOCALE_IPOSSEPBYSPACE
|
||||
LOCALE_IPOSSIGNPOSN
|
||||
LOCALE_IPOSSYMPRECEDES
|
||||
LOCALE_ITIME
|
||||
LOCALE_ITIMEMARKPOSN
|
||||
LOCALE_ITLZERO
|
||||
LOCALE_LOCALEINFOFLAGSMASK
|
||||
LOCALE_NOUSEROVERRIDE
|
||||
LOCALE_S1159
|
||||
LOCALE_S2359
|
||||
LOCALE_SABBREVCTRYNAME
|
||||
LOCALE_SABBREVDAYNAME1
|
||||
LOCALE_SABBREVDAYNAME2
|
||||
LOCALE_SABBREVDAYNAME3
|
||||
LOCALE_SABBREVDAYNAME4
|
||||
LOCALE_SABBREVDAYNAME5
|
||||
LOCALE_SABBREVDAYNAME6
|
||||
LOCALE_SABBREVDAYNAME7
|
||||
LOCALE_SABBREVLANGNAME
|
||||
LOCALE_SABBREVMONTHNAME1
|
||||
LOCALE_SABBREVMONTHNAME10
|
||||
LOCALE_SABBREVMONTHNAME11
|
||||
LOCALE_SABBREVMONTHNAME12
|
||||
LOCALE_SABBREVMONTHNAME13
|
||||
LOCALE_SABBREVMONTHNAME2
|
||||
LOCALE_SABBREVMONTHNAME3
|
||||
LOCALE_SABBREVMONTHNAME4
|
||||
LOCALE_SABBREVMONTHNAME5
|
||||
LOCALE_SABBREVMONTHNAME6
|
||||
LOCALE_SABBREVMONTHNAME7
|
||||
LOCALE_SABBREVMONTHNAME8
|
||||
LOCALE_SABBREVMONTHNAME9
|
||||
LOCALE_SCOUNTRY
|
||||
LOCALE_SCURRENCY
|
||||
LOCALE_SDATE
|
||||
LOCALE_SDAYNAME1
|
||||
LOCALE_SDAYNAME2
|
||||
LOCALE_SDAYNAME3
|
||||
LOCALE_SDAYNAME4
|
||||
LOCALE_SDAYNAME5
|
||||
LOCALE_SDAYNAME6
|
||||
LOCALE_SDAYNAME7
|
||||
LOCALE_SDECIMAL
|
||||
LOCALE_SENGCOUNTRY
|
||||
LOCALE_SENGCURRNAME
|
||||
LOCALE_SENGLANGUAGE
|
||||
LOCALE_SGROUPING
|
||||
LOCALE_SINTLSYMBOL
|
||||
LOCALE_SISO3166CTRYNAME
|
||||
LOCALE_SISO639LANGNAME
|
||||
LOCALE_SLANGUAGE
|
||||
LOCALE_SLIST
|
||||
LOCALE_SLONGDATE
|
||||
LOCALE_SMONDECIMALSEP
|
||||
LOCALE_SMONGROUPING
|
||||
LOCALE_SMONTHNAME1
|
||||
LOCALE_SMONTHNAME10
|
||||
LOCALE_SMONTHNAME11
|
||||
LOCALE_SMONTHNAME12
|
||||
LOCALE_SMONTHNAME13
|
||||
LOCALE_SMONTHNAME2
|
||||
LOCALE_SMONTHNAME3
|
||||
LOCALE_SMONTHNAME4
|
||||
LOCALE_SMONTHNAME5
|
||||
LOCALE_SMONTHNAME6
|
||||
LOCALE_SMONTHNAME7
|
||||
LOCALE_SMONTHNAME8
|
||||
LOCALE_SMONTHNAME9
|
||||
LOCALE_SMONTHOUSANDSEP
|
||||
LOCALE_SNATIVECTRYNAME
|
||||
LOCALE_SNATIVECURRNAME
|
||||
LOCALE_SNATIVEDIGITS
|
||||
LOCALE_SNATIVELANGNAME
|
||||
LOCALE_SNEGATIVESIGN
|
||||
LOCALE_SPOSITIVESIGN
|
||||
LOCALE_SSHORTDATE
|
||||
LOCALE_SSORTNAME
|
||||
LOCALE_STHOUSAND
|
||||
LOCALE_STIME
|
||||
LOCALE_STIMEFORMAT
|
||||
LOCALE_SYEARMONTH
|
||||
LOCALE_TIMEDATEBOTH
|
||||
LOCALE_USE_CP_ACP
|
||||
MAX_DEFAULTCHAR
|
||||
MAX_LEADBYTES
|
||||
MB_COMPOSITE
|
||||
MB_ERR_INVALID_CHARS
|
||||
MB_PRECOMPOSED
|
||||
MB_USEGLYPHCHARS
|
||||
NORM_IGNORECASE
|
||||
NORM_IGNOREKANATYPE
|
||||
NORM_IGNORENONSPACE
|
||||
NORM_IGNORESYMBOLS
|
||||
NORM_IGNOREWIDTH
|
||||
NORM_STRINGSORT
|
||||
SORT_STRINGSORT
|
||||
TIME_FORCE24HOURFORMAT
|
||||
TIME_NOMINUTESORSECONDS
|
||||
TIME_NOSECONDS
|
||||
TIME_NOTIMEMARKER
|
||||
TIME_TIMEVARSONLY
|
||||
WC_COMPOSITECHECK
|
||||
WC_DEFAULTCHAR
|
||||
WC_DISCARDNS
|
||||
WC_NO_BEST_FIT_CHARS
|
||||
WC_SEPCHARS
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant C1_ALPHA => 256;
|
||||
use constant C1_BLANK => 64;
|
||||
use constant C1_CNTRL => 32;
|
||||
use constant C1_DIGIT => 4;
|
||||
use constant C1_LOWER => 2;
|
||||
use constant C1_PUNCT => 16;
|
||||
use constant C1_SPACE => 8;
|
||||
use constant C1_UPPER => 1;
|
||||
use constant C1_XDIGIT => 128;
|
||||
use constant C2_ARABICNUMBER => 6;
|
||||
use constant C2_BLOCKSEPARATOR => 8;
|
||||
use constant C2_COMMONSEPARATOR => 7;
|
||||
use constant C2_EUROPENUMBER => 3;
|
||||
use constant C2_EUROPESEPARATOR => 4;
|
||||
use constant C2_EUROPETERMINATOR => 5;
|
||||
use constant C2_LEFTTORIGHT => 1;
|
||||
use constant C2_NOTAPPLICABLE => 0;
|
||||
use constant C2_OTHERNEUTRAL => 11;
|
||||
use constant C2_RIGHTTOLEFT => 2;
|
||||
use constant C2_SEGMENTSEPARATOR => 9;
|
||||
use constant C2_WHITESPACE => 10;
|
||||
use constant C3_ALPHA => 32768;
|
||||
use constant C3_DIACRITIC => 2;
|
||||
use constant C3_FULLWIDTH => 128;
|
||||
use constant C3_HALFWIDTH => 64;
|
||||
use constant C3_HIRAGANA => 32;
|
||||
use constant C3_IDEOGRAPH => 256;
|
||||
use constant C3_KASHIDA => 512;
|
||||
use constant C3_KATAKANA => 16;
|
||||
use constant C3_LEXICAL => 1024;
|
||||
use constant C3_NONSPACING => 1;
|
||||
use constant C3_NOTAPPLICABLE => 0;
|
||||
use constant C3_SYMBOL => 8;
|
||||
use constant C3_VOWELMARK => 4;
|
||||
use constant CAL_GREGORIAN => 1;
|
||||
use constant CAL_GREGORIAN_ARABIC => 10;
|
||||
use constant CAL_GREGORIAN_ME_FRENCH => 9;
|
||||
use constant CAL_GREGORIAN_US => 2;
|
||||
use constant CAL_GREGORIAN_XLIT_ENGLISH => 11;
|
||||
use constant CAL_GREGORIAN_XLIT_FRENCH => 12;
|
||||
use constant CAL_HEBREW => 8;
|
||||
use constant CAL_HIJRI => 6;
|
||||
use constant CAL_ICALINTVALUE => 1;
|
||||
use constant CAL_IYEAROFFSETRANGE => 3;
|
||||
use constant CAL_JAPAN => 3;
|
||||
use constant CAL_KOREA => 5;
|
||||
use constant CAL_SABBREVDAYNAME1 => 14;
|
||||
use constant CAL_SABBREVDAYNAME2 => 15;
|
||||
use constant CAL_SABBREVDAYNAME3 => 16;
|
||||
use constant CAL_SABBREVDAYNAME4 => 17;
|
||||
use constant CAL_SABBREVDAYNAME5 => 18;
|
||||
use constant CAL_SABBREVDAYNAME6 => 19;
|
||||
use constant CAL_SABBREVDAYNAME7 => 20;
|
||||
use constant CAL_SABBREVMONTHNAME1 => 34;
|
||||
use constant CAL_SABBREVMONTHNAME10 => 43;
|
||||
use constant CAL_SABBREVMONTHNAME11 => 44;
|
||||
use constant CAL_SABBREVMONTHNAME12 => 45;
|
||||
use constant CAL_SABBREVMONTHNAME13 => 46;
|
||||
use constant CAL_SABBREVMONTHNAME2 => 35;
|
||||
use constant CAL_SABBREVMONTHNAME3 => 36;
|
||||
use constant CAL_SABBREVMONTHNAME4 => 37;
|
||||
use constant CAL_SABBREVMONTHNAME5 => 38;
|
||||
use constant CAL_SABBREVMONTHNAME6 => 39;
|
||||
use constant CAL_SABBREVMONTHNAME7 => 40;
|
||||
use constant CAL_SABBREVMONTHNAME8 => 41;
|
||||
use constant CAL_SABBREVMONTHNAME9 => 42;
|
||||
use constant CAL_SCALNAME => 2;
|
||||
use constant CAL_SDAYNAME1 => 7;
|
||||
use constant CAL_SDAYNAME2 => 8;
|
||||
use constant CAL_SDAYNAME3 => 9;
|
||||
use constant CAL_SDAYNAME4 => 10;
|
||||
use constant CAL_SDAYNAME5 => 11;
|
||||
use constant CAL_SDAYNAME6 => 12;
|
||||
use constant CAL_SDAYNAME7 => 13;
|
||||
use constant CAL_SERASTRING => 4;
|
||||
use constant CAL_SLONGDATE => 6;
|
||||
use constant CAL_SMONTHNAME1 => 21;
|
||||
use constant CAL_SMONTHNAME10 => 30;
|
||||
use constant CAL_SMONTHNAME11 => 31;
|
||||
use constant CAL_SMONTHNAME12 => 32;
|
||||
use constant CAL_SMONTHNAME13 => 33;
|
||||
use constant CAL_SMONTHNAME2 => 22;
|
||||
use constant CAL_SMONTHNAME3 => 23;
|
||||
use constant CAL_SMONTHNAME4 => 24;
|
||||
use constant CAL_SMONTHNAME5 => 25;
|
||||
use constant CAL_SMONTHNAME6 => 26;
|
||||
use constant CAL_SMONTHNAME7 => 27;
|
||||
use constant CAL_SMONTHNAME8 => 28;
|
||||
use constant CAL_SMONTHNAME9 => 29;
|
||||
use constant CAL_SSHORTDATE => 5;
|
||||
use constant CAL_SYEARMONTH => 47;
|
||||
use constant CAL_TAIWAN => 4;
|
||||
use constant CAL_THAI => 7;
|
||||
use constant CP_ACP => 0;
|
||||
use constant CP_MACCP => 2;
|
||||
use constant CP_OEMCP => 1;
|
||||
use constant CP_SYMBOL => 42;
|
||||
use constant CP_THREAD_ACP => 3;
|
||||
use constant CP_UTF7 => 65000;
|
||||
use constant CP_UTF8 => 65001;
|
||||
use constant CT_CTYPE1 => 1;
|
||||
use constant CT_CTYPE2 => 2;
|
||||
use constant CT_CTYPE3 => 4;
|
||||
use constant DATE_DATEVARSONLY => 256;
|
||||
use constant DATE_LONGDATE => 2;
|
||||
use constant DATE_SHORTDATE => 1;
|
||||
use constant DATE_USE_ALT_CALENDAR => 4;
|
||||
use constant ITU_IMPLEMENTED_TESTS => 520;
|
||||
use constant LCID_INSTALLED => 1;
|
||||
use constant LCMAP_BYTEREV => 2048;
|
||||
use constant LCMAP_FULLWIDTH => 8388608;
|
||||
use constant LCMAP_HALFWIDTH => 4194304;
|
||||
use constant LCMAP_HIRAGANA => 1048576;
|
||||
use constant LCMAP_KATAKANA => 2097152;
|
||||
use constant LCMAP_LOWERCASE => 256;
|
||||
use constant LCMAP_SORTKEY => 1024;
|
||||
use constant LCMAP_UPPERCASE => 512;
|
||||
use constant LOCALE_FONTSIGNATURE => 88;
|
||||
use constant LOCALE_ICALENDARTYPE => 4105;
|
||||
use constant LOCALE_ICENTURY => 36;
|
||||
use constant LOCALE_ICOUNTRY => 5;
|
||||
use constant LOCALE_ICURRDIGITS => 25;
|
||||
use constant LOCALE_ICURRENCY => 27;
|
||||
use constant LOCALE_IDATE => 33;
|
||||
use constant LOCALE_IDAYLZERO => 38;
|
||||
use constant LOCALE_IDEFAULTANSICODEPAGE => 4100;
|
||||
use constant LOCALE_IDEFAULTCODEPAGE => 11;
|
||||
use constant LOCALE_IDEFAULTCOUNTRY => 10;
|
||||
use constant LOCALE_IDEFAULTEBCDICCODEPAGE => 4114;
|
||||
use constant LOCALE_IDEFAULTLANGUAGE => 9;
|
||||
use constant LOCALE_IDEFAULTMACCODEPAGE => 4113;
|
||||
use constant LOCALE_IDIGITS => 17;
|
||||
use constant LOCALE_IDIGITSUBSTITUTION => 4116;
|
||||
use constant LOCALE_IFIRSTDAYOFWEEK => 4108;
|
||||
use constant LOCALE_IFIRSTWEEKOFYEAR => 4109;
|
||||
use constant LOCALE_IINTLCURRDIGITS => 26;
|
||||
use constant LOCALE_ILANGUAGE => 1;
|
||||
use constant LOCALE_ILDATE => 34;
|
||||
use constant LOCALE_ILZERO => 18;
|
||||
use constant LOCALE_IMEASURE => 13;
|
||||
use constant LOCALE_IMONLZERO => 39;
|
||||
use constant LOCALE_INEGCURR => 28;
|
||||
use constant LOCALE_INEGNUMBER => 4112;
|
||||
use constant LOCALE_INEGSEPBYSPACE => 87;
|
||||
use constant LOCALE_INEGSIGNPOSN => 83;
|
||||
use constant LOCALE_INEGSYMPRECEDES => 86;
|
||||
use constant LOCALE_IOPTIONALCALENDAR => 4107;
|
||||
use constant LOCALE_IPAPERSIZE => 4106;
|
||||
use constant LOCALE_IPOSSEPBYSPACE => 85;
|
||||
use constant LOCALE_IPOSSIGNPOSN => 82;
|
||||
use constant LOCALE_IPOSSYMPRECEDES => 84;
|
||||
use constant LOCALE_ITIME => 35;
|
||||
use constant LOCALE_ITIMEMARKPOSN => 4101;
|
||||
use constant LOCALE_ITLZERO => 37;
|
||||
use constant LOCALE_LOCALEINFOFLAGSMASK => -1073741824;
|
||||
use constant LOCALE_NOUSEROVERRIDE => -2147483648;
|
||||
use constant LOCALE_S1159 => 40;
|
||||
use constant LOCALE_S2359 => 41;
|
||||
use constant LOCALE_SABBREVCTRYNAME => 7;
|
||||
use constant LOCALE_SABBREVDAYNAME1 => 49;
|
||||
use constant LOCALE_SABBREVDAYNAME2 => 50;
|
||||
use constant LOCALE_SABBREVDAYNAME3 => 51;
|
||||
use constant LOCALE_SABBREVDAYNAME4 => 52;
|
||||
use constant LOCALE_SABBREVDAYNAME5 => 53;
|
||||
use constant LOCALE_SABBREVDAYNAME6 => 54;
|
||||
use constant LOCALE_SABBREVDAYNAME7 => 55;
|
||||
use constant LOCALE_SABBREVLANGNAME => 3;
|
||||
use constant LOCALE_SABBREVMONTHNAME1 => 68;
|
||||
use constant LOCALE_SABBREVMONTHNAME10 => 77;
|
||||
use constant LOCALE_SABBREVMONTHNAME11 => 78;
|
||||
use constant LOCALE_SABBREVMONTHNAME12 => 79;
|
||||
use constant LOCALE_SABBREVMONTHNAME13 => 4111;
|
||||
use constant LOCALE_SABBREVMONTHNAME2 => 69;
|
||||
use constant LOCALE_SABBREVMONTHNAME3 => 70;
|
||||
use constant LOCALE_SABBREVMONTHNAME4 => 71;
|
||||
use constant LOCALE_SABBREVMONTHNAME5 => 72;
|
||||
use constant LOCALE_SABBREVMONTHNAME6 => 73;
|
||||
use constant LOCALE_SABBREVMONTHNAME7 => 74;
|
||||
use constant LOCALE_SABBREVMONTHNAME8 => 75;
|
||||
use constant LOCALE_SABBREVMONTHNAME9 => 76;
|
||||
use constant LOCALE_SCOUNTRY => 6;
|
||||
use constant LOCALE_SCURRENCY => 20;
|
||||
use constant LOCALE_SDATE => 29;
|
||||
use constant LOCALE_SDAYNAME1 => 42;
|
||||
use constant LOCALE_SDAYNAME2 => 43;
|
||||
use constant LOCALE_SDAYNAME3 => 44;
|
||||
use constant LOCALE_SDAYNAME4 => 45;
|
||||
use constant LOCALE_SDAYNAME5 => 46;
|
||||
use constant LOCALE_SDAYNAME6 => 47;
|
||||
use constant LOCALE_SDAYNAME7 => 48;
|
||||
use constant LOCALE_SDECIMAL => 14;
|
||||
use constant LOCALE_SENGCOUNTRY => 4098;
|
||||
use constant LOCALE_SENGCURRNAME => 4103;
|
||||
use constant LOCALE_SENGLANGUAGE => 4097;
|
||||
use constant LOCALE_SGROUPING => 16;
|
||||
use constant LOCALE_SINTLSYMBOL => 21;
|
||||
use constant LOCALE_SISO3166CTRYNAME => 90;
|
||||
use constant LOCALE_SISO639LANGNAME => 89;
|
||||
use constant LOCALE_SLANGUAGE => 2;
|
||||
use constant LOCALE_SLIST => 12;
|
||||
use constant LOCALE_SLONGDATE => 32;
|
||||
use constant LOCALE_SMONDECIMALSEP => 22;
|
||||
use constant LOCALE_SMONGROUPING => 24;
|
||||
use constant LOCALE_SMONTHNAME1 => 56;
|
||||
use constant LOCALE_SMONTHNAME10 => 65;
|
||||
use constant LOCALE_SMONTHNAME11 => 66;
|
||||
use constant LOCALE_SMONTHNAME12 => 67;
|
||||
use constant LOCALE_SMONTHNAME13 => 4110;
|
||||
use constant LOCALE_SMONTHNAME2 => 57;
|
||||
use constant LOCALE_SMONTHNAME3 => 58;
|
||||
use constant LOCALE_SMONTHNAME4 => 59;
|
||||
use constant LOCALE_SMONTHNAME5 => 60;
|
||||
use constant LOCALE_SMONTHNAME6 => 61;
|
||||
use constant LOCALE_SMONTHNAME7 => 62;
|
||||
use constant LOCALE_SMONTHNAME8 => 63;
|
||||
use constant LOCALE_SMONTHNAME9 => 64;
|
||||
use constant LOCALE_SMONTHOUSANDSEP => 23;
|
||||
use constant LOCALE_SNATIVECTRYNAME => 8;
|
||||
use constant LOCALE_SNATIVECURRNAME => 4104;
|
||||
use constant LOCALE_SNATIVEDIGITS => 19;
|
||||
use constant LOCALE_SNATIVELANGNAME => 4;
|
||||
use constant LOCALE_SNEGATIVESIGN => 81;
|
||||
use constant LOCALE_SPOSITIVESIGN => 80;
|
||||
use constant LOCALE_SSHORTDATE => 31;
|
||||
use constant LOCALE_SSORTNAME => 4115;
|
||||
use constant LOCALE_STHOUSAND => 15;
|
||||
use constant LOCALE_STIME => 30;
|
||||
use constant LOCALE_STIMEFORMAT => 4099;
|
||||
use constant LOCALE_SYEARMONTH => 4102;
|
||||
use constant LOCALE_TIMEDATEBOTH => 768;
|
||||
use constant LOCALE_USE_CP_ACP => 1073741824;
|
||||
use constant MAX_DEFAULTCHAR => 2;
|
||||
use constant MAX_LEADBYTES => 12;
|
||||
use constant MB_COMPOSITE => 2;
|
||||
use constant MB_ERR_INVALID_CHARS => 8;
|
||||
use constant MB_PRECOMPOSED => 1;
|
||||
use constant MB_USEGLYPHCHARS => 4;
|
||||
use constant NORM_IGNORECASE => 1;
|
||||
use constant NORM_IGNOREKANATYPE => 65536;
|
||||
use constant NORM_IGNORENONSPACE => 2;
|
||||
use constant NORM_IGNORESYMBOLS => 4;
|
||||
use constant NORM_IGNOREWIDTH => 131072;
|
||||
use constant NORM_STRINGSORT => 4096;
|
||||
use constant SORT_STRINGSORT => 4096;
|
||||
use constant TIME_FORCE24HOURFORMAT => 8;
|
||||
use constant TIME_NOMINUTESORSECONDS => 1;
|
||||
use constant TIME_NOSECONDS => 2;
|
||||
use constant TIME_NOTIMEMARKER => 4;
|
||||
use constant TIME_TIMEVARSONLY => 512;
|
||||
use constant WC_COMPOSITECHECK => 512;
|
||||
use constant WC_DEFAULTCHAR => 64;
|
||||
use constant WC_DISCARDNS => 16;
|
||||
use constant WC_NO_BEST_FIT_CHARS => 1024;
|
||||
use constant WC_SEPCHARS => 32;
|
||||
|
||||
1;
|
File diff suppressed because it is too large
Load Diff
|
@ -1,35 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file winreg.h
|
||||
#
|
||||
|
||||
|
||||
package winreg;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
HKEY_CLASSES_ROOT
|
||||
HKEY_CURRENT_CONFIG
|
||||
HKEY_CURRENT_USER
|
||||
HKEY_DYN_DATA
|
||||
HKEY_LOCAL_MACHINE
|
||||
HKEY_PERFORMANCE_DATA
|
||||
HKEY_USERS
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant HKEY_CLASSES_ROOT => -2147483648;
|
||||
use constant HKEY_CURRENT_CONFIG => -2147483643;
|
||||
use constant HKEY_CURRENT_USER => -2147483647;
|
||||
use constant HKEY_DYN_DATA => -2147483642;
|
||||
use constant HKEY_LOCAL_MACHINE => -2147483646;
|
||||
use constant HKEY_PERFORMANCE_DATA => -2147483644;
|
||||
use constant HKEY_USERS => -2147483645;
|
||||
|
||||
1;
|
|
@ -1,159 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file winsock2.h
|
||||
#
|
||||
|
||||
|
||||
package winsock2;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
BASE_PROTOCOL
|
||||
CF_ACCEPT
|
||||
CF_DEFER
|
||||
CF_REJECT
|
||||
FD_ACCEPT_BIT
|
||||
FD_CLOSE_BIT
|
||||
FD_CONNECT_BIT
|
||||
FD_MAX_EVENTS
|
||||
FD_OOB_BIT
|
||||
FD_READ_BIT
|
||||
FD_WRITE_BIT
|
||||
INCL_WINSOCK_API_PROTOTYPES
|
||||
INCL_WINSOCK_API_TYPEDEFS
|
||||
IOC_PROTOCOL
|
||||
IOC_UNIX
|
||||
IOC_VENDOR
|
||||
IOC_WS2
|
||||
LAYERED_PROTOCOL
|
||||
MAX_PROTOCOL_CHAIN
|
||||
PVD_CONFIG
|
||||
SD_BOTH
|
||||
SD_RECEIVE
|
||||
SD_SEND
|
||||
SG_CONSTRAINED_GROUP
|
||||
SG_UNCONSTRAINED_GROUP
|
||||
SIO_ADDRESS_LIST_CHANGE
|
||||
SIO_ADDRESS_LIST_QUERY
|
||||
SIO_ASSOCIATE_HANDLE
|
||||
SIO_ENABLE_CIRCULAR_QUEUEING
|
||||
SIO_FIND_ROUTE
|
||||
SIO_FLUSH
|
||||
SIO_GET_BROADCAST_ADDRESS
|
||||
SIO_GET_EXTENSION_FUNCTION_POINTER
|
||||
SIO_GET_GROUP_QOS
|
||||
SIO_GET_INTERFACE_LIST
|
||||
SIO_GET_QOS
|
||||
SIO_MULTICAST_SCOPE
|
||||
SIO_MULTIPOINT_LOOPBACK
|
||||
SIO_QUERY_TARGET_PNP_HANDLE
|
||||
SIO_ROUTING_INTERFACE_CHANGE
|
||||
SIO_ROUTING_INTERFACE_QUERY
|
||||
SIO_SET_GROUP_QOS
|
||||
SIO_SET_QOS
|
||||
SIO_TRANSLATE_HANDLE
|
||||
SO_CONDITIONAL_ACCEPT
|
||||
SO_GROUP_ID
|
||||
SO_GROUP_PRIORITY
|
||||
SO_MAX_MSG_SIZE
|
||||
SO_PROTOCOL_INFOA
|
||||
SO_PROTOCOL_INFOW
|
||||
WSAPROTOCOL_LEN
|
||||
WSA_FLAG_MULTIPOINT_C_LEAF
|
||||
WSA_FLAG_MULTIPOINT_C_ROOT
|
||||
WSA_FLAG_MULTIPOINT_D_LEAF
|
||||
WSA_FLAG_MULTIPOINT_D_ROOT
|
||||
WSA_FLAG_OVERLAPPED
|
||||
WSA_INFINITE
|
||||
WSA_INVALID_EVENT
|
||||
WSA_INVALID_HANDLE
|
||||
WSA_INVALID_PARAMETER
|
||||
WSA_IO_INCOMPLETE
|
||||
WSA_IO_PENDING
|
||||
WSA_MAXIMUM_WAIT_EVENTS
|
||||
WSA_NOT_ENOUGH_MEMORY
|
||||
WSA_OPERATION_ABORTED
|
||||
WSA_WAIT_EVENT_0
|
||||
WSA_WAIT_FAILED
|
||||
WSA_WAIT_IO_COMPLETION
|
||||
WSA_WAIT_TIMEOUT
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant BASE_PROTOCOL => 1;
|
||||
use constant CF_ACCEPT => 0;
|
||||
use constant CF_DEFER => 2;
|
||||
use constant CF_REJECT => 1;
|
||||
use constant FD_ACCEPT_BIT => 3;
|
||||
use constant FD_CLOSE_BIT => 5;
|
||||
use constant FD_CONNECT_BIT => 4;
|
||||
use constant FD_MAX_EVENTS => 10;
|
||||
use constant FD_OOB_BIT => 2;
|
||||
use constant FD_READ_BIT => 0;
|
||||
use constant FD_WRITE_BIT => 1;
|
||||
use constant INCL_WINSOCK_API_PROTOTYPES => 1;
|
||||
use constant INCL_WINSOCK_API_TYPEDEFS => 0;
|
||||
use constant IOC_PROTOCOL => 268435456;
|
||||
use constant IOC_UNIX => 0;
|
||||
use constant IOC_VENDOR => 402653184;
|
||||
use constant IOC_WS2 => 134217728;
|
||||
use constant LAYERED_PROTOCOL => 0;
|
||||
use constant MAX_PROTOCOL_CHAIN => 7;
|
||||
use constant PVD_CONFIG => 12289;
|
||||
use constant SD_BOTH => 2;
|
||||
use constant SD_RECEIVE => 0;
|
||||
use constant SD_SEND => 1;
|
||||
use constant SG_CONSTRAINED_GROUP => 2;
|
||||
use constant SG_UNCONSTRAINED_GROUP => 1;
|
||||
use constant SIO_ADDRESS_LIST_CHANGE => 671088663;
|
||||
use constant SIO_ADDRESS_LIST_QUERY => 1207959574;
|
||||
use constant SIO_ASSOCIATE_HANDLE => -2013265919;
|
||||
use constant SIO_ENABLE_CIRCULAR_QUEUEING => 671088642;
|
||||
use constant SIO_FIND_ROUTE => 1207959555;
|
||||
use constant SIO_FLUSH => 671088644;
|
||||
use constant SIO_GET_BROADCAST_ADDRESS => 1207959557;
|
||||
use constant SIO_GET_EXTENSION_FUNCTION_POINTER => -939524090;
|
||||
use constant SIO_GET_GROUP_QOS => -939524088;
|
||||
use constant SIO_GET_INTERFACE_LIST => 1074033791;
|
||||
use constant SIO_GET_QOS => -939524089;
|
||||
use constant SIO_MULTICAST_SCOPE => -2013265910;
|
||||
use constant SIO_MULTIPOINT_LOOPBACK => -2013265911;
|
||||
use constant SIO_QUERY_TARGET_PNP_HANDLE => 1207959576;
|
||||
use constant SIO_ROUTING_INTERFACE_CHANGE => -2013265899;
|
||||
use constant SIO_ROUTING_INTERFACE_QUERY => -939524076;
|
||||
use constant SIO_SET_GROUP_QOS => -2013265908;
|
||||
use constant SIO_SET_QOS => -2013265909;
|
||||
use constant SIO_TRANSLATE_HANDLE => -939524083;
|
||||
use constant SO_CONDITIONAL_ACCEPT => 12290;
|
||||
use constant SO_GROUP_ID => 8193;
|
||||
use constant SO_GROUP_PRIORITY => 8194;
|
||||
use constant SO_MAX_MSG_SIZE => 8195;
|
||||
use constant SO_PROTOCOL_INFOA => 8196;
|
||||
use constant SO_PROTOCOL_INFOW => 8197;
|
||||
use constant WSAPROTOCOL_LEN => 255;
|
||||
use constant WSA_FLAG_MULTIPOINT_C_LEAF => 4;
|
||||
use constant WSA_FLAG_MULTIPOINT_C_ROOT => 2;
|
||||
use constant WSA_FLAG_MULTIPOINT_D_LEAF => 16;
|
||||
use constant WSA_FLAG_MULTIPOINT_D_ROOT => 8;
|
||||
use constant WSA_FLAG_OVERLAPPED => 1;
|
||||
use constant WSA_INFINITE => -1;
|
||||
use constant WSA_INVALID_EVENT => 0;
|
||||
use constant WSA_INVALID_HANDLE => 6;
|
||||
use constant WSA_INVALID_PARAMETER => 87;
|
||||
use constant WSA_IO_INCOMPLETE => 996;
|
||||
use constant WSA_IO_PENDING => 997;
|
||||
use constant WSA_MAXIMUM_WAIT_EVENTS => 64;
|
||||
use constant WSA_NOT_ENOUGH_MEMORY => 8;
|
||||
use constant WSA_OPERATION_ABORTED => 995;
|
||||
use constant WSA_WAIT_EVENT_0 => 0;
|
||||
use constant WSA_WAIT_FAILED => -1;
|
||||
use constant WSA_WAIT_IO_COMPLETION => 192;
|
||||
use constant WSA_WAIT_TIMEOUT => 258;
|
||||
|
||||
1;
|
|
@ -1,409 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file winspool.h
|
||||
#
|
||||
|
||||
|
||||
package winspool;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
DEF_PRIORITY
|
||||
DI_CHANNEL
|
||||
DI_READ_SPOOL_JOB
|
||||
FORM_BUILTIN
|
||||
FORM_PRINTER
|
||||
FORM_USER
|
||||
JOB_CONTROL_CANCEL
|
||||
JOB_CONTROL_DELETE
|
||||
JOB_CONTROL_LAST_PAGE_EJECTED
|
||||
JOB_CONTROL_PAUSE
|
||||
JOB_CONTROL_RESTART
|
||||
JOB_CONTROL_RESUME
|
||||
JOB_CONTROL_SENT_TO_PRINTER
|
||||
JOB_NOTIFY_FIELD_BYTES_PRINTED
|
||||
JOB_NOTIFY_FIELD_DATATYPE
|
||||
JOB_NOTIFY_FIELD_DEVMODE
|
||||
JOB_NOTIFY_FIELD_DOCUMENT
|
||||
JOB_NOTIFY_FIELD_DRIVER_NAME
|
||||
JOB_NOTIFY_FIELD_MACHINE_NAME
|
||||
JOB_NOTIFY_FIELD_NOTIFY_NAME
|
||||
JOB_NOTIFY_FIELD_PAGES_PRINTED
|
||||
JOB_NOTIFY_FIELD_PARAMETERS
|
||||
JOB_NOTIFY_FIELD_PORT_NAME
|
||||
JOB_NOTIFY_FIELD_POSITION
|
||||
JOB_NOTIFY_FIELD_PRINTER_NAME
|
||||
JOB_NOTIFY_FIELD_PRINT_PROCESSOR
|
||||
JOB_NOTIFY_FIELD_PRIORITY
|
||||
JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR
|
||||
JOB_NOTIFY_FIELD_START_TIME
|
||||
JOB_NOTIFY_FIELD_STATUS
|
||||
JOB_NOTIFY_FIELD_STATUS_STRING
|
||||
JOB_NOTIFY_FIELD_SUBMITTED
|
||||
JOB_NOTIFY_FIELD_TIME
|
||||
JOB_NOTIFY_FIELD_TOTAL_BYTES
|
||||
JOB_NOTIFY_FIELD_TOTAL_PAGES
|
||||
JOB_NOTIFY_FIELD_UNTIL_TIME
|
||||
JOB_NOTIFY_FIELD_USER_NAME
|
||||
JOB_NOTIFY_TYPE
|
||||
JOB_POSITION_UNSPECIFIED
|
||||
JOB_STATUS_BLOCKED_DEVQ
|
||||
JOB_STATUS_DELETED
|
||||
JOB_STATUS_DELETING
|
||||
JOB_STATUS_ERROR
|
||||
JOB_STATUS_OFFLINE
|
||||
JOB_STATUS_PAPEROUT
|
||||
JOB_STATUS_PAUSED
|
||||
JOB_STATUS_PRINTED
|
||||
JOB_STATUS_PRINTING
|
||||
JOB_STATUS_SPOOLING
|
||||
JOB_STATUS_USER_INTERVENTION
|
||||
MAX_PRIORITY
|
||||
MIN_PRIORITY
|
||||
NO_PRIORITY
|
||||
PORT_STATUS_DOOR_OPEN
|
||||
PORT_STATUS_NO_TONER
|
||||
PORT_STATUS_OFFLINE
|
||||
PORT_STATUS_OUTPUT_BIN_FULL
|
||||
PORT_STATUS_OUT_OF_MEMORY
|
||||
PORT_STATUS_PAPER_JAM
|
||||
PORT_STATUS_PAPER_OUT
|
||||
PORT_STATUS_PAPER_PROBLEM
|
||||
PORT_STATUS_POWER_SAVE
|
||||
PORT_STATUS_TONER_LOW
|
||||
PORT_STATUS_TYPE_ERROR
|
||||
PORT_STATUS_TYPE_INFO
|
||||
PORT_STATUS_TYPE_WARNING
|
||||
PORT_STATUS_USER_INTERVENTION
|
||||
PORT_STATUS_WARMING_UP
|
||||
PORT_TYPE_NET_ATTACHED
|
||||
PORT_TYPE_READ
|
||||
PORT_TYPE_REDIRECTED
|
||||
PORT_TYPE_WRITE
|
||||
PRINTER_ATTRIBUTE_DEFAULT
|
||||
PRINTER_ATTRIBUTE_DIRECT
|
||||
PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST
|
||||
PRINTER_ATTRIBUTE_ENABLE_BIDI
|
||||
PRINTER_ATTRIBUTE_ENABLE_DEVQ
|
||||
PRINTER_ATTRIBUTE_HIDDEN
|
||||
PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS
|
||||
PRINTER_ATTRIBUTE_LOCAL
|
||||
PRINTER_ATTRIBUTE_NETWORK
|
||||
PRINTER_ATTRIBUTE_QUEUED
|
||||
PRINTER_ATTRIBUTE_SHARED
|
||||
PRINTER_ATTRIBUTE_WORK_OFFLINE
|
||||
PRINTER_CHANGE_ADD_FORM
|
||||
PRINTER_CHANGE_ADD_JOB
|
||||
PRINTER_CHANGE_ADD_PORT
|
||||
PRINTER_CHANGE_ADD_PRINTER
|
||||
PRINTER_CHANGE_ADD_PRINTER_DRIVER
|
||||
PRINTER_CHANGE_ADD_PRINT_PROCESSOR
|
||||
PRINTER_CHANGE_ALL
|
||||
PRINTER_CHANGE_CONFIGURE_PORT
|
||||
PRINTER_CHANGE_DELETE_FORM
|
||||
PRINTER_CHANGE_DELETE_JOB
|
||||
PRINTER_CHANGE_DELETE_PORT
|
||||
PRINTER_CHANGE_DELETE_PRINTER
|
||||
PRINTER_CHANGE_DELETE_PRINTER_DRIVER
|
||||
PRINTER_CHANGE_DELETE_PRINTER_PROCESSOR
|
||||
PRINTER_CHANGE_FAILED_CONNECTION_PRINTER
|
||||
PRINTER_CHANGE_FORM
|
||||
PRINTER_CHANGE_JOB
|
||||
PRINTER_CHANGE_PORT
|
||||
PRINTER_CHANGE_PRINTER
|
||||
PRINTER_CHANGE_PRINTER_DRIVER
|
||||
PRINTER_CHANGE_PRINT_PROCESSOR
|
||||
PRINTER_CHANGE_SET_FORM
|
||||
PRINTER_CHANGE_SET_JOB
|
||||
PRINTER_CHANGE_SET_PRINTER
|
||||
PRINTER_CHANGE_SET_PRINTER_DRIVER
|
||||
PRINTER_CHANGE_TIMEOUT
|
||||
PRINTER_CHANGE_WRITE_JOB
|
||||
PRINTER_CONTROL_PAUSE
|
||||
PRINTER_CONTROL_PURGE
|
||||
PRINTER_CONTROL_RESUME
|
||||
PRINTER_CONTROL_SET_STATUS
|
||||
PRINTER_ENUM_CONNECTIONS
|
||||
PRINTER_ENUM_CONTAINER
|
||||
PRINTER_ENUM_DEFAULT
|
||||
PRINTER_ENUM_EXPAND
|
||||
PRINTER_ENUM_FAVORITE
|
||||
PRINTER_ENUM_ICON1
|
||||
PRINTER_ENUM_ICON2
|
||||
PRINTER_ENUM_ICON3
|
||||
PRINTER_ENUM_ICON4
|
||||
PRINTER_ENUM_ICON5
|
||||
PRINTER_ENUM_ICON6
|
||||
PRINTER_ENUM_ICON7
|
||||
PRINTER_ENUM_ICON8
|
||||
PRINTER_ENUM_ICONMASK
|
||||
PRINTER_ENUM_LOCAL
|
||||
PRINTER_ENUM_NAME
|
||||
PRINTER_ENUM_NETWORK
|
||||
PRINTER_ENUM_REMOTE
|
||||
PRINTER_ENUM_SHARED
|
||||
PRINTER_ERROR_INFORMATION
|
||||
PRINTER_ERROR_JAM
|
||||
PRINTER_ERROR_OUTODPAPER
|
||||
PRINTER_ERROR_OUTOFTONER
|
||||
PRINTER_ERROR_SEVERE
|
||||
PRINTER_ERROR_WARNING
|
||||
PRINTER_NOTIFY_FIELD_ATTRIBUTES
|
||||
PRINTER_NOTIFY_FIELD_AVERAGE_PPM
|
||||
PRINTER_NOTIFY_FIELD_BYTES_PRINTED
|
||||
PRINTER_NOTIFY_FIELD_CJOBS
|
||||
PRINTER_NOTIFY_FIELD_COMMENT
|
||||
PRINTER_NOTIFY_FIELD_DATATYPE
|
||||
PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY
|
||||
PRINTER_NOTIFY_FIELD_DEVMODE
|
||||
PRINTER_NOTIFY_FIELD_DRIVER_NAME
|
||||
PRINTER_NOTIFY_FIELD_LOCATION
|
||||
PRINTER_NOTIFY_FIELD_PAGES_PRINTED
|
||||
PRINTER_NOTIFY_FIELD_PARAMETERS
|
||||
PRINTER_NOTIFY_FIELD_PORT_NAME
|
||||
PRINTER_NOTIFY_FIELD_PRINTER_NAME
|
||||
PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR
|
||||
PRINTER_NOTIFY_FIELD_PRIORITY
|
||||
PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR
|
||||
PRINTER_NOTIFY_FIELD_SEPFILE
|
||||
PRINTER_NOTIFY_FIELD_SERVER_NAME
|
||||
PRINTER_NOTIFY_FIELD_SHARE_NAME
|
||||
PRINTER_NOTIFY_FIELD_START_TIME
|
||||
PRINTER_NOTIFY_FIELD_STATUS
|
||||
PRINTER_NOTIFY_FIELD_STATUS_STRING
|
||||
PRINTER_NOTIFY_FIELD_TOTAL_BYTES
|
||||
PRINTER_NOTIFY_FIELD_TOTAL_PAGES
|
||||
PRINTER_NOTIFY_FIELD_UNTIL_TIME
|
||||
PRINTER_NOTIFY_INFO_DISCARDED
|
||||
PRINTER_NOTIFY_OPTIONS_REFRESH
|
||||
PRINTER_NOTIFY_TYPE
|
||||
PRINTER_STATUS_BUSY
|
||||
PRINTER_STATUS_DOOR_OPEN
|
||||
PRINTER_STATUS_ERROR
|
||||
PRINTER_STATUS_INITIALIZING
|
||||
PRINTER_STATUS_IO_ACTIVE
|
||||
PRINTER_STATUS_MANUAL_FEED
|
||||
PRINTER_STATUS_NOT_AVAILABLE
|
||||
PRINTER_STATUS_NO_TONER
|
||||
PRINTER_STATUS_OFFLINE
|
||||
PRINTER_STATUS_OUTPUT_BIN_FULL
|
||||
PRINTER_STATUS_OUT_OF_MEMORY
|
||||
PRINTER_STATUS_PAGE_PUNT
|
||||
PRINTER_STATUS_PAPER_JAM
|
||||
PRINTER_STATUS_PAPER_OUT
|
||||
PRINTER_STATUS_PAPER_PROBLEM
|
||||
PRINTER_STATUS_PAUSED
|
||||
PRINTER_STATUS_PENDING_DELETION
|
||||
PRINTER_STATUS_POWER_SAVE
|
||||
PRINTER_STATUS_PRINTING
|
||||
PRINTER_STATUS_PROCESSING
|
||||
PRINTER_STATUS_SERVER_UNKNOWN
|
||||
PRINTER_STATUS_TONER_LOW
|
||||
PRINTER_STATUS_USER_INTERVENTION
|
||||
PRINTER_STATUS_WAITING
|
||||
PRINTER_STATUS_WARMING_UP
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant DEF_PRIORITY => 1;
|
||||
use constant DI_CHANNEL => 1;
|
||||
use constant DI_READ_SPOOL_JOB => 3;
|
||||
use constant FORM_BUILTIN => 1;
|
||||
use constant FORM_PRINTER => 2;
|
||||
use constant FORM_USER => 0;
|
||||
use constant JOB_CONTROL_CANCEL => 3;
|
||||
use constant JOB_CONTROL_DELETE => 5;
|
||||
use constant JOB_CONTROL_LAST_PAGE_EJECTED => 7;
|
||||
use constant JOB_CONTROL_PAUSE => 1;
|
||||
use constant JOB_CONTROL_RESTART => 4;
|
||||
use constant JOB_CONTROL_RESUME => 2;
|
||||
use constant JOB_CONTROL_SENT_TO_PRINTER => 6;
|
||||
use constant JOB_NOTIFY_FIELD_BYTES_PRINTED => 23;
|
||||
use constant JOB_NOTIFY_FIELD_DATATYPE => 5;
|
||||
use constant JOB_NOTIFY_FIELD_DEVMODE => 9;
|
||||
use constant JOB_NOTIFY_FIELD_DOCUMENT => 13;
|
||||
use constant JOB_NOTIFY_FIELD_DRIVER_NAME => 8;
|
||||
use constant JOB_NOTIFY_FIELD_MACHINE_NAME => 1;
|
||||
use constant JOB_NOTIFY_FIELD_NOTIFY_NAME => 4;
|
||||
use constant JOB_NOTIFY_FIELD_PAGES_PRINTED => 21;
|
||||
use constant JOB_NOTIFY_FIELD_PARAMETERS => 7;
|
||||
use constant JOB_NOTIFY_FIELD_PORT_NAME => 2;
|
||||
use constant JOB_NOTIFY_FIELD_POSITION => 15;
|
||||
use constant JOB_NOTIFY_FIELD_PRINTER_NAME => 0;
|
||||
use constant JOB_NOTIFY_FIELD_PRINT_PROCESSOR => 6;
|
||||
use constant JOB_NOTIFY_FIELD_PRIORITY => 14;
|
||||
use constant JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR => 12;
|
||||
use constant JOB_NOTIFY_FIELD_START_TIME => 17;
|
||||
use constant JOB_NOTIFY_FIELD_STATUS => 10;
|
||||
use constant JOB_NOTIFY_FIELD_STATUS_STRING => 11;
|
||||
use constant JOB_NOTIFY_FIELD_SUBMITTED => 16;
|
||||
use constant JOB_NOTIFY_FIELD_TIME => 19;
|
||||
use constant JOB_NOTIFY_FIELD_TOTAL_BYTES => 22;
|
||||
use constant JOB_NOTIFY_FIELD_TOTAL_PAGES => 20;
|
||||
use constant JOB_NOTIFY_FIELD_UNTIL_TIME => 18;
|
||||
use constant JOB_NOTIFY_FIELD_USER_NAME => 3;
|
||||
use constant JOB_NOTIFY_TYPE => 1;
|
||||
use constant JOB_POSITION_UNSPECIFIED => 1;
|
||||
use constant JOB_STATUS_BLOCKED_DEVQ => 512;
|
||||
use constant JOB_STATUS_DELETED => 256;
|
||||
use constant JOB_STATUS_DELETING => 4;
|
||||
use constant JOB_STATUS_ERROR => 2;
|
||||
use constant JOB_STATUS_OFFLINE => 32;
|
||||
use constant JOB_STATUS_PAPEROUT => 64;
|
||||
use constant JOB_STATUS_PAUSED => 1;
|
||||
use constant JOB_STATUS_PRINTED => 128;
|
||||
use constant JOB_STATUS_PRINTING => 16;
|
||||
use constant JOB_STATUS_SPOOLING => 8;
|
||||
use constant JOB_STATUS_USER_INTERVENTION => 1024;
|
||||
use constant MAX_PRIORITY => 99;
|
||||
use constant MIN_PRIORITY => 1;
|
||||
use constant NO_PRIORITY => 0;
|
||||
use constant PORT_STATUS_DOOR_OPEN => 7;
|
||||
use constant PORT_STATUS_NO_TONER => 6;
|
||||
use constant PORT_STATUS_OFFLINE => 1;
|
||||
use constant PORT_STATUS_OUTPUT_BIN_FULL => 4;
|
||||
use constant PORT_STATUS_OUT_OF_MEMORY => 9;
|
||||
use constant PORT_STATUS_PAPER_JAM => 2;
|
||||
use constant PORT_STATUS_PAPER_OUT => 3;
|
||||
use constant PORT_STATUS_PAPER_PROBLEM => 5;
|
||||
use constant PORT_STATUS_POWER_SAVE => 12;
|
||||
use constant PORT_STATUS_TONER_LOW => 10;
|
||||
use constant PORT_STATUS_TYPE_ERROR => 1;
|
||||
use constant PORT_STATUS_TYPE_INFO => 3;
|
||||
use constant PORT_STATUS_TYPE_WARNING => 2;
|
||||
use constant PORT_STATUS_USER_INTERVENTION => 8;
|
||||
use constant PORT_STATUS_WARMING_UP => 11;
|
||||
use constant PORT_TYPE_NET_ATTACHED => 8;
|
||||
use constant PORT_TYPE_READ => 2;
|
||||
use constant PORT_TYPE_REDIRECTED => 4;
|
||||
use constant PORT_TYPE_WRITE => 1;
|
||||
use constant PRINTER_ATTRIBUTE_DEFAULT => 4;
|
||||
use constant PRINTER_ATTRIBUTE_DIRECT => 2;
|
||||
use constant PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST => 512;
|
||||
use constant PRINTER_ATTRIBUTE_ENABLE_BIDI => 2048;
|
||||
use constant PRINTER_ATTRIBUTE_ENABLE_DEVQ => 128;
|
||||
use constant PRINTER_ATTRIBUTE_HIDDEN => 32;
|
||||
use constant PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS => 256;
|
||||
use constant PRINTER_ATTRIBUTE_LOCAL => 64;
|
||||
use constant PRINTER_ATTRIBUTE_NETWORK => 16;
|
||||
use constant PRINTER_ATTRIBUTE_QUEUED => 1;
|
||||
use constant PRINTER_ATTRIBUTE_SHARED => 8;
|
||||
use constant PRINTER_ATTRIBUTE_WORK_OFFLINE => 1024;
|
||||
use constant PRINTER_CHANGE_ADD_FORM => 65536;
|
||||
use constant PRINTER_CHANGE_ADD_JOB => 256;
|
||||
use constant PRINTER_CHANGE_ADD_PORT => 1048576;
|
||||
use constant PRINTER_CHANGE_ADD_PRINTER => 1;
|
||||
use constant PRINTER_CHANGE_ADD_PRINTER_DRIVER => 268435456;
|
||||
use constant PRINTER_CHANGE_ADD_PRINT_PROCESSOR => 16777216;
|
||||
use constant PRINTER_CHANGE_ALL => 2004353023;
|
||||
use constant PRINTER_CHANGE_CONFIGURE_PORT => 2097152;
|
||||
use constant PRINTER_CHANGE_DELETE_FORM => 262144;
|
||||
use constant PRINTER_CHANGE_DELETE_JOB => 1024;
|
||||
use constant PRINTER_CHANGE_DELETE_PORT => 4194304;
|
||||
use constant PRINTER_CHANGE_DELETE_PRINTER => 4;
|
||||
use constant PRINTER_CHANGE_DELETE_PRINTER_DRIVER => 1073741824;
|
||||
use constant PRINTER_CHANGE_DELETE_PRINTER_PROCESSOR => 67108864;
|
||||
use constant PRINTER_CHANGE_FAILED_CONNECTION_PRINTER => 8;
|
||||
use constant PRINTER_CHANGE_FORM => 458752;
|
||||
use constant PRINTER_CHANGE_JOB => 65280;
|
||||
use constant PRINTER_CHANGE_PORT => 7340032;
|
||||
use constant PRINTER_CHANGE_PRINTER => 255;
|
||||
use constant PRINTER_CHANGE_PRINTER_DRIVER => 1879048192;
|
||||
use constant PRINTER_CHANGE_PRINT_PROCESSOR => 117440512;
|
||||
use constant PRINTER_CHANGE_SET_FORM => 131072;
|
||||
use constant PRINTER_CHANGE_SET_JOB => 512;
|
||||
use constant PRINTER_CHANGE_SET_PRINTER => 2;
|
||||
use constant PRINTER_CHANGE_SET_PRINTER_DRIVER => 536870912;
|
||||
use constant PRINTER_CHANGE_TIMEOUT => -2147483648;
|
||||
use constant PRINTER_CHANGE_WRITE_JOB => 2048;
|
||||
use constant PRINTER_CONTROL_PAUSE => 1;
|
||||
use constant PRINTER_CONTROL_PURGE => 3;
|
||||
use constant PRINTER_CONTROL_RESUME => 2;
|
||||
use constant PRINTER_CONTROL_SET_STATUS => 4;
|
||||
use constant PRINTER_ENUM_CONNECTIONS => 4;
|
||||
use constant PRINTER_ENUM_CONTAINER => 32768;
|
||||
use constant PRINTER_ENUM_DEFAULT => 1;
|
||||
use constant PRINTER_ENUM_EXPAND => 16384;
|
||||
use constant PRINTER_ENUM_FAVORITE => 4;
|
||||
use constant PRINTER_ENUM_ICON1 => 65536;
|
||||
use constant PRINTER_ENUM_ICON2 => 131072;
|
||||
use constant PRINTER_ENUM_ICON3 => 262144;
|
||||
use constant PRINTER_ENUM_ICON4 => 524288;
|
||||
use constant PRINTER_ENUM_ICON5 => 1048576;
|
||||
use constant PRINTER_ENUM_ICON6 => 2097152;
|
||||
use constant PRINTER_ENUM_ICON7 => 4194304;
|
||||
use constant PRINTER_ENUM_ICON8 => 8388608;
|
||||
use constant PRINTER_ENUM_ICONMASK => 16711680;
|
||||
use constant PRINTER_ENUM_LOCAL => 2;
|
||||
use constant PRINTER_ENUM_NAME => 8;
|
||||
use constant PRINTER_ENUM_NETWORK => 64;
|
||||
use constant PRINTER_ENUM_REMOTE => 16;
|
||||
use constant PRINTER_ENUM_SHARED => 32;
|
||||
use constant PRINTER_ERROR_INFORMATION => -2147483648;
|
||||
use constant PRINTER_ERROR_JAM => 2;
|
||||
use constant PRINTER_ERROR_OUTODPAPER => 1;
|
||||
use constant PRINTER_ERROR_OUTOFTONER => 4;
|
||||
use constant PRINTER_ERROR_SEVERE => 536870912;
|
||||
use constant PRINTER_ERROR_WARNING => 1073741824;
|
||||
use constant PRINTER_NOTIFY_FIELD_ATTRIBUTES => 13;
|
||||
use constant PRINTER_NOTIFY_FIELD_AVERAGE_PPM => 21;
|
||||
use constant PRINTER_NOTIFY_FIELD_BYTES_PRINTED => 25;
|
||||
use constant PRINTER_NOTIFY_FIELD_CJOBS => 20;
|
||||
use constant PRINTER_NOTIFY_FIELD_COMMENT => 5;
|
||||
use constant PRINTER_NOTIFY_FIELD_DATATYPE => 11;
|
||||
use constant PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY => 15;
|
||||
use constant PRINTER_NOTIFY_FIELD_DEVMODE => 7;
|
||||
use constant PRINTER_NOTIFY_FIELD_DRIVER_NAME => 4;
|
||||
use constant PRINTER_NOTIFY_FIELD_LOCATION => 6;
|
||||
use constant PRINTER_NOTIFY_FIELD_PAGES_PRINTED => 23;
|
||||
use constant PRINTER_NOTIFY_FIELD_PARAMETERS => 10;
|
||||
use constant PRINTER_NOTIFY_FIELD_PORT_NAME => 3;
|
||||
use constant PRINTER_NOTIFY_FIELD_PRINTER_NAME => 1;
|
||||
use constant PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR => 9;
|
||||
use constant PRINTER_NOTIFY_FIELD_PRIORITY => 14;
|
||||
use constant PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR => 12;
|
||||
use constant PRINTER_NOTIFY_FIELD_SEPFILE => 8;
|
||||
use constant PRINTER_NOTIFY_FIELD_SERVER_NAME => 0;
|
||||
use constant PRINTER_NOTIFY_FIELD_SHARE_NAME => 2;
|
||||
use constant PRINTER_NOTIFY_FIELD_START_TIME => 16;
|
||||
use constant PRINTER_NOTIFY_FIELD_STATUS => 18;
|
||||
use constant PRINTER_NOTIFY_FIELD_STATUS_STRING => 19;
|
||||
use constant PRINTER_NOTIFY_FIELD_TOTAL_BYTES => 24;
|
||||
use constant PRINTER_NOTIFY_FIELD_TOTAL_PAGES => 22;
|
||||
use constant PRINTER_NOTIFY_FIELD_UNTIL_TIME => 17;
|
||||
use constant PRINTER_NOTIFY_INFO_DISCARDED => 1;
|
||||
use constant PRINTER_NOTIFY_OPTIONS_REFRESH => 1;
|
||||
use constant PRINTER_NOTIFY_TYPE => 0;
|
||||
use constant PRINTER_STATUS_BUSY => 512;
|
||||
use constant PRINTER_STATUS_DOOR_OPEN => 4194304;
|
||||
use constant PRINTER_STATUS_ERROR => 2;
|
||||
use constant PRINTER_STATUS_INITIALIZING => 32768;
|
||||
use constant PRINTER_STATUS_IO_ACTIVE => 256;
|
||||
use constant PRINTER_STATUS_MANUAL_FEED => 32;
|
||||
use constant PRINTER_STATUS_NOT_AVAILABLE => 4096;
|
||||
use constant PRINTER_STATUS_NO_TONER => 262144;
|
||||
use constant PRINTER_STATUS_OFFLINE => 128;
|
||||
use constant PRINTER_STATUS_OUTPUT_BIN_FULL => 2048;
|
||||
use constant PRINTER_STATUS_OUT_OF_MEMORY => 2097152;
|
||||
use constant PRINTER_STATUS_PAGE_PUNT => 524288;
|
||||
use constant PRINTER_STATUS_PAPER_JAM => 8;
|
||||
use constant PRINTER_STATUS_PAPER_OUT => 16;
|
||||
use constant PRINTER_STATUS_PAPER_PROBLEM => 64;
|
||||
use constant PRINTER_STATUS_PAUSED => 1;
|
||||
use constant PRINTER_STATUS_PENDING_DELETION => 4;
|
||||
use constant PRINTER_STATUS_POWER_SAVE => 16777216;
|
||||
use constant PRINTER_STATUS_PRINTING => 1024;
|
||||
use constant PRINTER_STATUS_PROCESSING => 16384;
|
||||
use constant PRINTER_STATUS_SERVER_UNKNOWN => 8388608;
|
||||
use constant PRINTER_STATUS_TONER_LOW => 131072;
|
||||
use constant PRINTER_STATUS_USER_INTERVENTION => 1048576;
|
||||
use constant PRINTER_STATUS_WAITING => 8192;
|
||||
use constant PRINTER_STATUS_WARMING_UP => 65536;
|
||||
|
||||
1;
|
|
@ -1,80 +0,0 @@
|
|||
package winspool_drv;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"AddFormA" => ["long", ["long", "long", "ptr"]],
|
||||
"AddFormW" => ["long", ["long", "long", "ptr"]],
|
||||
"AddJobA" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"AddJobW" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"AddMonitorA" => ["long", ["str", "long", "ptr"]],
|
||||
"AddPrinterA" => ["long", ["str", "long", "ptr"]],
|
||||
"AddPrinterDriverA" => ["long", ["str", "long", "ptr"]],
|
||||
"AddPrinterDriverW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"AddPrinterW" => ["long", ["wstr", "long", "ptr"]],
|
||||
"ClosePrinter" => ["long", ["long"]],
|
||||
"DeleteFormA" => ["long", ["long", "str"]],
|
||||
"DeleteFormW" => ["long", ["long", "wstr"]],
|
||||
"DeleteMonitorA" => ["long", ["str", "str", "str"]],
|
||||
"DeletePortA" => ["long", ["str", "long", "str"]],
|
||||
"DeletePrinter" => ["long", ["long"]],
|
||||
"DeletePrinterDriverA" => ["long", ["str", "str", "str"]],
|
||||
"DeviceCapabilities" => ["long", ["str", "str", "long", "str", "ptr"]],
|
||||
"DeviceCapabilitiesA" => ["long", ["str", "str", "long", "str", "ptr"]],
|
||||
"DeviceCapabilitiesW" => ["long", ["wstr", "wstr", "long", "wstr", "ptr"]],
|
||||
"DocumentPropertiesA" => ["long", ["long", "long", "str", "ptr", "ptr", "long"]],
|
||||
"DocumentPropertiesW" => ["long", ["long", "long", "wstr", "ptr", "ptr", "long"]],
|
||||
"EnumJobsA" => ["long", ["long", "long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumJobsW" => ["long", ["long", "long", "long", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPortsA" => ["long", ["str", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPrinterDataExA" => ["long", ["long", "str", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPrinterDataExW" => ["long", ["long", "wstr", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPrinterDriversA" => ["long", ["str", "str", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPrinterDriversW" => ["long", ["wstr", "wstr", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPrintersA" => ["long", ["long", "str", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"EnumPrintersW" => ["long", ["long", "wstr", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"GetDefaultPrinterA" => ["long", ["str", "ptr"]],
|
||||
"GetDefaultPrinterW" => ["long", ["wstr", "ptr"]],
|
||||
"GetFormA" => ["long", ["long", "str", "long", "ptr", "long", "ptr"]],
|
||||
"GetFormW" => ["long", ["long", "wstr", "long", "ptr", "long", "ptr"]],
|
||||
"GetPrinterA" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDataA" => ["long", ["long", "str", "ptr", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDataExA" => ["long", ["long", "str", "str", "ptr", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDataExW" => ["long", ["long", "wstr", "wstr", "ptr", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDataW" => ["long", ["long", "wstr", "ptr", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDriverA" => ["long", ["long", "str", "long", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDriverDirectoryA" => ["long", ["str", "str", "long", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDriverDirectoryW" => ["long", ["wstr", "wstr", "long", "ptr", "long", "ptr"]],
|
||||
"GetPrinterDriverW" => ["long", ["long", "wstr", "long", "ptr", "long", "ptr"]],
|
||||
"GetPrinterW" => ["long", ["long", "long", "ptr", "long", "ptr"]],
|
||||
"OpenPrinterA" => ["long", ["str", "ptr", "ptr"]],
|
||||
"OpenPrinterW" => ["long", ["wstr", "ptr", "ptr"]],
|
||||
"PrinterProperties" => ["long", ["long", "long"]],
|
||||
"ReadPrinter" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"ResetPrinterA" => ["long", ["long", "ptr"]],
|
||||
"ResetPrinterW" => ["long", ["long", "ptr"]],
|
||||
"SetFormA" => ["long", ["long", "str", "long", "ptr"]],
|
||||
"SetFormW" => ["long", ["long", "wstr", "long", "ptr"]],
|
||||
"SetJobA" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"SetJobW" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"SetPrinterA" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"SetPrinterDataA" => ["long", ["long", "str", "long", "ptr", "long"]],
|
||||
"SetPrinterDataExA" => ["long", ["long", "str", "str", "long", "ptr", "long"]],
|
||||
"SetPrinterDataExW" => ["long", ["long", "wstr", "wstr", "long", "ptr", "long"]],
|
||||
"SetPrinterDataW" => ["long", ["long", "wstr", "long", "ptr", "long"]],
|
||||
"SetPrinterW" => ["long", ["long", "long", "ptr", "long"]],
|
||||
"WritePrinter" => ["long", ["long", "ptr", "long", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("winspool.drv",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,20 +0,0 @@
|
|||
package wintrust;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"WinVerifyTrust" => ["long", ["long", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("wintrust",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
File diff suppressed because it is too large
Load Diff
|
@ -1,169 +0,0 @@
|
|||
# Automatically generated by make_symbols; DO NOT EDIT!!
|
||||
#
|
||||
# Perl definitions for header file winver.h
|
||||
#
|
||||
|
||||
|
||||
package winver;
|
||||
|
||||
use strict;
|
||||
|
||||
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
require Exporter;
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(
|
||||
VFFF_ISSHAREDFILE
|
||||
VFF_BUFFTOOSMALL
|
||||
VFF_CURNEDEST
|
||||
VFF_FILEINUSE
|
||||
VFT2_DRV_COMM
|
||||
VFT2_DRV_DISPLAY
|
||||
VFT2_DRV_INPUTMETHOD
|
||||
VFT2_DRV_INSTALLABLE
|
||||
VFT2_DRV_KEYBOARD
|
||||
VFT2_DRV_LANGUAGE
|
||||
VFT2_DRV_MOUSE
|
||||
VFT2_DRV_NETWORK
|
||||
VFT2_DRV_PRINTER
|
||||
VFT2_DRV_SOUND
|
||||
VFT2_DRV_SYSTEM
|
||||
VFT2_FONT_RASTER
|
||||
VFT2_FONT_TRUETYPE
|
||||
VFT2_FONT_VECTOR
|
||||
VFT2_UNKNOWN
|
||||
VFT_APP
|
||||
VFT_DLL
|
||||
VFT_DRV
|
||||
VFT_FONT
|
||||
VFT_STATIC_LIB
|
||||
VFT_UNKNOWN
|
||||
VFT_VXD
|
||||
VIFF_DONTDELETEOLD
|
||||
VIFF_FORCEINSTALL
|
||||
VIF_ACCESSVIOLATION
|
||||
VIF_BUFFTOOSMALL
|
||||
VIF_CANNOTCREATE
|
||||
VIF_CANNOTDELETE
|
||||
VIF_CANNOTDELETECUR
|
||||
VIF_CANNOTREADDST
|
||||
VIF_CANNOTREADSRC
|
||||
VIF_CANNOTRENAME
|
||||
VIF_DIFFCODEPG
|
||||
VIF_DIFFLANG
|
||||
VIF_DIFFTYPE
|
||||
VIF_FILEINUSE
|
||||
VIF_MISMATCH
|
||||
VIF_OUTOFMEMORY
|
||||
VIF_OUTOFSPACE
|
||||
VIF_SHARINGVIOLATION
|
||||
VIF_SRCOLD
|
||||
VIF_TEMPFILE
|
||||
VIF_WRITEPROT
|
||||
VOS_DOS
|
||||
VOS_DOS_WINDOWS16
|
||||
VOS_DOS_WINDOWS32
|
||||
VOS_NT
|
||||
VOS_NT_WINDOWS32
|
||||
VOS_OS216
|
||||
VOS_OS216_PM16
|
||||
VOS_OS232
|
||||
VOS_OS232_PM32
|
||||
VOS_UNKNOWN
|
||||
VOS__BASE
|
||||
VOS__PM16
|
||||
VOS__PM32
|
||||
VOS__WINDOWS16
|
||||
VOS__WINDOWS32
|
||||
VS_FFI_FILEFLAGSMASK
|
||||
VS_FFI_SIGNATURE
|
||||
VS_FFI_STRUCVERSION
|
||||
VS_FF_DEBUG
|
||||
VS_FF_INFOINFERRED
|
||||
VS_FF_PATCHED
|
||||
VS_FF_PRERELEASE
|
||||
VS_FF_PRIVATEBUILD
|
||||
VS_FF_SPECIALBUILD
|
||||
VS_FILE_INFO
|
||||
VS_USER_DEFINED
|
||||
VS_VERSION_INFO
|
||||
);
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
use constant VFFF_ISSHAREDFILE => 1;
|
||||
use constant VFF_BUFFTOOSMALL => 4;
|
||||
use constant VFF_CURNEDEST => 1;
|
||||
use constant VFF_FILEINUSE => 2;
|
||||
use constant VFT2_DRV_COMM => 10;
|
||||
use constant VFT2_DRV_DISPLAY => 4;
|
||||
use constant VFT2_DRV_INPUTMETHOD => 11;
|
||||
use constant VFT2_DRV_INSTALLABLE => 8;
|
||||
use constant VFT2_DRV_KEYBOARD => 2;
|
||||
use constant VFT2_DRV_LANGUAGE => 3;
|
||||
use constant VFT2_DRV_MOUSE => 5;
|
||||
use constant VFT2_DRV_NETWORK => 6;
|
||||
use constant VFT2_DRV_PRINTER => 1;
|
||||
use constant VFT2_DRV_SOUND => 9;
|
||||
use constant VFT2_DRV_SYSTEM => 7;
|
||||
use constant VFT2_FONT_RASTER => 1;
|
||||
use constant VFT2_FONT_TRUETYPE => 3;
|
||||
use constant VFT2_FONT_VECTOR => 2;
|
||||
use constant VFT2_UNKNOWN => 0;
|
||||
use constant VFT_APP => 1;
|
||||
use constant VFT_DLL => 2;
|
||||
use constant VFT_DRV => 3;
|
||||
use constant VFT_FONT => 4;
|
||||
use constant VFT_STATIC_LIB => 7;
|
||||
use constant VFT_UNKNOWN => 0;
|
||||
use constant VFT_VXD => 5;
|
||||
use constant VIFF_DONTDELETEOLD => 2;
|
||||
use constant VIFF_FORCEINSTALL => 1;
|
||||
use constant VIF_ACCESSVIOLATION => 512;
|
||||
use constant VIF_BUFFTOOSMALL => 262144;
|
||||
use constant VIF_CANNOTCREATE => 2048;
|
||||
use constant VIF_CANNOTDELETE => 4096;
|
||||
use constant VIF_CANNOTDELETECUR => 16384;
|
||||
use constant VIF_CANNOTREADDST => 131072;
|
||||
use constant VIF_CANNOTREADSRC => 65536;
|
||||
use constant VIF_CANNOTRENAME => 8192;
|
||||
use constant VIF_DIFFCODEPG => 16;
|
||||
use constant VIF_DIFFLANG => 8;
|
||||
use constant VIF_DIFFTYPE => 32;
|
||||
use constant VIF_FILEINUSE => 128;
|
||||
use constant VIF_MISMATCH => 2;
|
||||
use constant VIF_OUTOFMEMORY => 32768;
|
||||
use constant VIF_OUTOFSPACE => 256;
|
||||
use constant VIF_SHARINGVIOLATION => 1024;
|
||||
use constant VIF_SRCOLD => 4;
|
||||
use constant VIF_TEMPFILE => 1;
|
||||
use constant VIF_WRITEPROT => 64;
|
||||
use constant VOS_DOS => 65536;
|
||||
use constant VOS_DOS_WINDOWS16 => 65537;
|
||||
use constant VOS_DOS_WINDOWS32 => 65540;
|
||||
use constant VOS_NT => 262144;
|
||||
use constant VOS_NT_WINDOWS32 => 262148;
|
||||
use constant VOS_OS216 => 131072;
|
||||
use constant VOS_OS216_PM16 => 131074;
|
||||
use constant VOS_OS232 => 196608;
|
||||
use constant VOS_OS232_PM32 => 196611;
|
||||
use constant VOS_UNKNOWN => 0;
|
||||
use constant VOS__BASE => 0;
|
||||
use constant VOS__PM16 => 2;
|
||||
use constant VOS__PM32 => 3;
|
||||
use constant VOS__WINDOWS16 => 1;
|
||||
use constant VOS__WINDOWS32 => 4;
|
||||
use constant VS_FFI_FILEFLAGSMASK => 63;
|
||||
use constant VS_FFI_SIGNATURE => -17890115;
|
||||
use constant VS_FFI_STRUCVERSION => 65536;
|
||||
use constant VS_FF_DEBUG => 1;
|
||||
use constant VS_FF_INFOINFERRED => 16;
|
||||
use constant VS_FF_PATCHED => 4;
|
||||
use constant VS_FF_PRERELEASE => 2;
|
||||
use constant VS_FF_PRIVATEBUILD => 8;
|
||||
use constant VS_FF_SPECIALBUILD => 32;
|
||||
use constant VS_FILE_INFO => 16;
|
||||
use constant VS_USER_DEFINED => 100;
|
||||
use constant VS_VERSION_INFO => 1;
|
||||
|
||||
1;
|
|
@ -1,83 +0,0 @@
|
|||
package ws2_32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"accept" => ["long", ["long", "ptr", "ptr"]],
|
||||
"bind" => ["long", ["long", "ptr", "long"]],
|
||||
"closesocket" => ["long", ["long"]],
|
||||
"connect" => ["long", ["long", "ptr", "long"]],
|
||||
"getpeername" => ["long", ["long", "ptr", "ptr"]],
|
||||
"getsockname" => ["long", ["long", "ptr", "ptr"]],
|
||||
"getsockopt" => ["long", ["long", "long", "long", "ptr", "ptr"]],
|
||||
"htonl" => ["long", ["long"]],
|
||||
"htons" => ["long", ["long"]],
|
||||
"ioctlsocket" => ["long", ["long", "long", "ptr"]],
|
||||
"inet_addr" => ["long", ["ptr"]],
|
||||
"inet_ntoa" => ["ptr", ["unknown"]],
|
||||
"listen" => ["long", ["long", "long"]],
|
||||
"ntohl" => ["long", ["long"]],
|
||||
"ntohs" => ["long", ["long"]],
|
||||
"recv" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"recvfrom" => ["long", ["long", "ptr", "long", "long", "ptr", "ptr"]],
|
||||
"select" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"send" => ["long", ["long", "ptr", "long", "long"]],
|
||||
"sendto" => ["long", ["long", "ptr", "long", "long", "ptr", "long"]],
|
||||
"setsockopt" => ["long", ["long", "long", "long", "ptr", "long"]],
|
||||
"shutdown" => ["long", ["long", "long"]],
|
||||
"socket" => ["long", ["long", "long", "long"]],
|
||||
"WSApSetPostRoutine" => ["long", ["ptr"]],
|
||||
"WSAAccept" => ["long", ["long", "ptr", "ptr", "ptr", "long"]],
|
||||
"WSACloseEvent" => ["long", ["long"]],
|
||||
"WSAConnect" => ["long", ["long", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"WSACreateEvent" => ["long", []],
|
||||
"WSADuplicateSocketA" => ["long", ["long", "long", "ptr"]],
|
||||
"WSAEnumNetworkEvents" => ["long", ["long", "long", "ptr"]],
|
||||
"WSAEnumProtocolsA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"WSAEnumProtocolsW" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"WSAEventSelect" => ["long", ["long", "long", "long"]],
|
||||
"WSAGetOverlappedResult" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
|
||||
"gethostbyaddr" => ["ptr", ["ptr", "long", "long"]],
|
||||
"gethostbyname" => ["ptr", ["ptr"]],
|
||||
"getprotobyname" => ["ptr", ["ptr"]],
|
||||
"getprotobynumber" => ["ptr", ["long"]],
|
||||
"getservbyname" => ["ptr", ["ptr", "ptr"]],
|
||||
"getservbyport" => ["ptr", ["long", "ptr"]],
|
||||
"gethostname" => ["long", ["ptr", "long"]],
|
||||
"WSARecv" => ["long", ["long", "ptr", "long", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"WSARecvFrom" => ["long", ["long", "ptr", "long", "ptr", "ptr", "ptr", "ptr", "ptr", "ptr"]],
|
||||
"WSASend" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"WSASendTo" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "long", "ptr", "ptr"]],
|
||||
"WSASocketA" => ["long", ["long", "long", "long", "ptr", "long", "long"]],
|
||||
"WSCDeinstallProvider" => ["long", ["ptr", "ptr"]],
|
||||
"WSCInstallProvider" => ["long", ["ptr", "wstr", "ptr", "long", "ptr"]],
|
||||
"WSAAsyncSelect" => ["long", ["long", "long", "long", "long"]],
|
||||
"WSAAsyncGetHostByAddr" => ["long", ["long", "long", "str", "long", "long", "str", "long"]],
|
||||
"WSAAsyncGetHostByName" => ["long", ["long", "long", "str", "str", "long"]],
|
||||
"WSAAsyncGetProtoByNumber" => ["long", ["long", "long", "long", "str", "long"]],
|
||||
"WSAAsyncGetProtoByName" => ["long", ["long", "long", "str", "str", "long"]],
|
||||
"WSAAsyncGetServByPort" => ["long", ["long", "long", "long", "str", "str", "long"]],
|
||||
"WSAAsyncGetServByName" => ["long", ["long", "long", "str", "str", "str", "long"]],
|
||||
"WSACancelAsyncRequest" => ["long", ["long"]],
|
||||
"WSASetBlockingHook" => ["ptr", ["ptr"]],
|
||||
"WSAGetLastError" => ["long", []],
|
||||
"WSASetLastError" => ["void", ["long"]],
|
||||
"WSACancelBlockingCall" => ["long", []],
|
||||
"WSAIsBlocking" => ["long", []],
|
||||
"WSAStartup" => ["long", ["long", "ptr"]],
|
||||
"WSACleanup" => ["long", []],
|
||||
"__WSAFDIsSet" => ["long", ["long", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("ws2_32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,25 +0,0 @@
|
|||
package wsock32;
|
||||
|
||||
use strict;
|
||||
|
||||
require Exporter;
|
||||
|
||||
use wine;
|
||||
use vars qw(@ISA @EXPORT @EXPORT_OK);
|
||||
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw();
|
||||
@EXPORT_OK = qw();
|
||||
|
||||
my $module_declarations = {
|
||||
"inet_network" => ["long", ["ptr"]],
|
||||
"getnetbyname" => ["ptr", ["ptr"]],
|
||||
"WSARecvEx" => ["long", ["long", "ptr", "long", "ptr"]],
|
||||
"s_perror" => ["void", ["str"]],
|
||||
"EnumProtocolsA" => ["long", ["ptr", "ptr", "ptr"]],
|
||||
"EnumProtocolsW" => ["long", ["ptr", "ptr", "ptr"]]
|
||||
};
|
||||
|
||||
&wine::declare("wsock32",%$module_declarations);
|
||||
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
|
||||
1;
|
|
@ -1,62 +0,0 @@
|
|||
#!/usr/bin/perl
|
||||
#
|
||||
# Script to generate a C file containing a list of tests
|
||||
#
|
||||
# Copyright 2002 Alexandre Julliard
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
use strict;
|
||||
|
||||
print <<EOF;
|
||||
/* Automatically generated file; DO NOT EDIT!! */
|
||||
|
||||
\#include <stdio.h>
|
||||
\#include <stdlib.h>
|
||||
\#include "winbase.h"
|
||||
|
||||
EOF
|
||||
|
||||
my @testlist = @ARGV;
|
||||
foreach (@testlist)
|
||||
{
|
||||
s!(.*/)*([^/]+)\.c$!$2!;
|
||||
printf "extern void func_%s(void);\n", $_;
|
||||
}
|
||||
|
||||
print <<EOF;
|
||||
|
||||
struct test
|
||||
{
|
||||
const char *name;
|
||||
void (*func)(void);
|
||||
};
|
||||
|
||||
static const struct test winetest_testlist[] =
|
||||
{
|
||||
EOF
|
||||
|
||||
foreach (@testlist)
|
||||
{
|
||||
printf " { \"%s\", func_%s },\n", $_, $_;
|
||||
}
|
||||
print <<EOF;
|
||||
{ 0, 0 }
|
||||
};
|
||||
|
||||
\#define WINETEST_WANT_MAIN
|
||||
\#include "wine/test.h"
|
||||
EOF
|
|
@ -1,280 +0,0 @@
|
|||
#!/usr/bin/perl -w
|
||||
#
|
||||
# Script to generate a Cygwin/Mingw makefile for running unit tests.
|
||||
#
|
||||
# Copyright 2002 Geoffrey Hausheer
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
use strict;
|
||||
|
||||
sub usage;
|
||||
sub fix_dir;
|
||||
sub get_testname;
|
||||
sub create_archive($$\@);
|
||||
|
||||
# set this variable to point to your windows headers
|
||||
my ($cygwin_windows_includes) ="/usr/include/w32api";
|
||||
my ($mingw_windows_includes) ="/mingw/include";
|
||||
my ($wine_windows_includes) ="./include";
|
||||
my ($windows_includes)="";
|
||||
|
||||
#set the default headers to use
|
||||
my ($default_headers) =\$cygwin_windows_includes;
|
||||
|
||||
# set this variable to your compiler options
|
||||
my($cc_opts)= "-g -O2 -Wall -mpreferred-stack-boundary=2 -D_REENTRANT";
|
||||
|
||||
my($topobjdir);
|
||||
my(@testdirs);
|
||||
my(@gooddirs);
|
||||
my(@ok_list)=();
|
||||
my($dir);
|
||||
my($file);
|
||||
my($afile)="";
|
||||
my($archive)="";
|
||||
# parse command-line options
|
||||
while ($#ARGV >= 0)
|
||||
{
|
||||
my $arg = shift @ARGV;
|
||||
if ($arg eq "-h") { usage; }
|
||||
if ($arg eq "-T")
|
||||
{
|
||||
$topobjdir = shift @ARGV;
|
||||
usage unless (-d $topobjdir);
|
||||
next;
|
||||
}
|
||||
if ($arg eq "-z") {
|
||||
$afile = shift @ARGV;
|
||||
$archive = "z";
|
||||
}
|
||||
if ($arg eq "-g") {
|
||||
$afile = shift @ARGV;
|
||||
$archive = "g";
|
||||
}
|
||||
if ($arg eq "-i") {
|
||||
$windows_includes = shift @ARGV;
|
||||
$default_headers = \$windows_includes;
|
||||
}
|
||||
if ($arg eq "-s") {
|
||||
my($sys) = shift @ARGV;
|
||||
if ($sys eq "cygwin") {
|
||||
$default_headers = \$cygwin_windows_includes;
|
||||
} elsif ($sys eq "mingw") {
|
||||
$default_headers = \$mingw_windows_includes;
|
||||
} elsif ($sys eq "wine") {
|
||||
$default_headers = \$wine_windows_includes;
|
||||
} else {
|
||||
usage;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# check/detect topobjdir
|
||||
# NOTE: Checking for configure is not ideal, but it seems to work
|
||||
if (defined($topobjdir))
|
||||
{
|
||||
unless (-f $topobjdir . "/configure")
|
||||
{
|
||||
printf STDERR "Wrong -T argument, %s/configure does not exist\n", $topobjdir;
|
||||
usage;
|
||||
}
|
||||
}
|
||||
else # try to detect it automatically
|
||||
{
|
||||
if (-f "./configure") { $topobjdir = "."; }
|
||||
elsif (-f "../configure") { $topobjdir = ".."; }
|
||||
elsif (-f "../../configure") { $topobjdir = "../.."; }
|
||||
elsif (-f "../../../configure") { $topobjdir = "../../.."; }
|
||||
else {
|
||||
printf STDERR "Couldn't locate 'configure', and so no top-level directory\n";
|
||||
usage;
|
||||
}
|
||||
}
|
||||
|
||||
chdir $topobjdir;
|
||||
# Locate all tests
|
||||
open FIND_FH, "find . -type d -name tests -print |";
|
||||
while(<FIND_FH>) {
|
||||
chomp;
|
||||
push @testdirs,$_;
|
||||
}
|
||||
close FIND_FH;
|
||||
|
||||
#start writing the makefile in the root directory
|
||||
open MAKE_FH,">Makefile.win";
|
||||
print MAKE_FH <<EOH ;
|
||||
#Define WINDOWS_HEADERS to point at the directory where windows.h lives
|
||||
#Here are some examples
|
||||
# For Cygwin
|
||||
#WINDOWS_HEADERS = $cygwin_windows_includes
|
||||
# For Mingw
|
||||
#WINDOWS_HEADERS = $mingw_windows_includes
|
||||
# For Wine
|
||||
#WINDOWS_HEADERS = $wine_windows_includes
|
||||
|
||||
WINDOWS_HEADERS = $$default_headers
|
||||
|
||||
CC = gcc
|
||||
RM = rm -f
|
||||
TOUCH = touch
|
||||
|
||||
INCLUDE_DIRS = -I\$(WINDOWS_HEADERS) -I./include
|
||||
CC_OPTS = \$(INCLUDE_DIRS) $cc_opts -include \$(WINDOWS_HEADERS)/windows.h
|
||||
|
||||
EOH
|
||||
|
||||
# iterate over each 'tests' directory
|
||||
print MAKE_FH "TEST_O_FILES_wtmain = ./programs/winetest/wtmain.o\n";
|
||||
foreach $dir (@testdirs) {
|
||||
my($rootdir);
|
||||
my($testname)=get_testname($dir);
|
||||
$rootdir=fix_dir($dir);
|
||||
unlink("$dir/testlist.c");
|
||||
# Locate all '.c' files that arent 'spec'
|
||||
my(@filelist)=grep(!/\.spec/,glob "$dir/*.c");
|
||||
if(scalar(@filelist)) {
|
||||
# Create a global list of all tests
|
||||
foreach $file (@filelist) {
|
||||
my($newfile);
|
||||
($newfile = $file) =~ s/c$/ok/;
|
||||
push(@ok_list,$newfile);
|
||||
}
|
||||
# create the testslist.c file for each directory
|
||||
system("./programs/winetest/make_ctests @filelist > $dir/testlist.c");
|
||||
push @filelist,"$dir/testlist.c";
|
||||
push(@gooddirs,$dir);
|
||||
print MAKE_FH "# $dir\n";
|
||||
# List all object files needed for this test
|
||||
print MAKE_FH "TEST_O_FILES_$rootdir = \\\n";
|
||||
foreach $file (@filelist) {
|
||||
$file =~ s/c$/o/;
|
||||
if($file ne $filelist[$#filelist]) {
|
||||
print MAKE_FH " $file\\\n";
|
||||
} else {
|
||||
print MAKE_FH " $file\n";
|
||||
}
|
||||
}
|
||||
print MAKE_FH "TEST_EXE_$rootdir = $dir/$testname.exe\n";
|
||||
}
|
||||
}
|
||||
die "No C files found\n" if (!scalar(@gooddirs));
|
||||
# The prerequisites for the tests are that the .ok fiels get created
|
||||
print MAKE_FH "\n# .ok result files\n";
|
||||
print MAKE_FH "TEST_OK_FILES = \\\n";
|
||||
foreach $file (@ok_list) {
|
||||
if($file ne $ok_list[$#ok_list]) {
|
||||
print MAKE_FH " $file\\\n";
|
||||
} else {
|
||||
print MAKE_FH " $file\n";
|
||||
}
|
||||
}
|
||||
print MAKE_FH "\n";
|
||||
print MAKE_FH "all: \$(TEST_OK_FILES)\n";
|
||||
print MAKE_FH "\n";
|
||||
|
||||
#define how to clean everything up
|
||||
print MAKE_FH "clean:\n";
|
||||
print MAKE_FH " \$(RM) \$(TEST_OK_FILES)\n";
|
||||
print MAKE_FH "\n";
|
||||
print MAKE_FH "distclean:\n";
|
||||
print MAKE_FH " \$(RM) \$(TEST_OK_FILES)\n";
|
||||
print MAKE_FH " \$(RM) \$(TEST_O_FILES_wtmain)\n";
|
||||
foreach $dir (@gooddirs) {
|
||||
my($rootdir)=fix_dir($dir);
|
||||
print MAKE_FH " \$(RM) \$(TEST_EXE_${rootdir}) \$(TEST_O_FILES_${rootdir})\n";
|
||||
}
|
||||
print MAKE_FH "\n";
|
||||
|
||||
#define how to make the executables
|
||||
foreach $dir (@gooddirs) {
|
||||
my($rootdir)=fix_dir($dir);
|
||||
print MAKE_FH "\$(TEST_EXE_${rootdir}): \$(TEST_O_FILES_${rootdir}) \$(TEST_O_FILES_wtmain)\n";
|
||||
print MAKE_FH " \$(CC) \$(CC_OPTS) \$(TEST_O_FILES_${rootdir}) \$(TEST_O_FILES_wtmain) -o \$@\n";
|
||||
}
|
||||
|
||||
# define how to make to .ok files
|
||||
foreach $file (@ok_list) {
|
||||
my($dir,$test) = ($file =~ /^(.*[\\\/]+tests)[\\\/]+(.*)\.ok$/);
|
||||
|
||||
print MAKE_FH "$file: \$(TEST_EXE_". fix_dir($file) . ")\n";
|
||||
print MAKE_FH " \$< $test && \$(TOUCH) \$@\n";
|
||||
}
|
||||
# define how to make the .o files
|
||||
|
||||
print MAKE_FH "%.o: %.c\n";
|
||||
print MAKE_FH " \$(CC) \$(CC_OPTS) -c -o \$@ \$<\n";
|
||||
close MAKE_FH;
|
||||
if($archive ne "") {
|
||||
create_archive($afile,$archive,@testdirs);
|
||||
}
|
||||
exit 0;
|
||||
|
||||
sub fix_dir {
|
||||
my($dir)=shift @_;
|
||||
my($rootdir)=($dir =~ /^[^\\\/]*[\\\/]+(.+)[\\\/]+tests/);
|
||||
$rootdir =~ s/[\\\/]+/_/g;
|
||||
return($rootdir);
|
||||
}
|
||||
|
||||
sub get_testname {
|
||||
my($dir)=shift @_;
|
||||
my($testname)=($dir =~ /[\\\/]+([^\\\/]+)[\\\/]+tests/i);
|
||||
return $testname;
|
||||
}
|
||||
|
||||
sub create_archive($$\@) {
|
||||
my($file,$arch,$dirlist)=@_;
|
||||
my($dir);
|
||||
my($cmd);
|
||||
if($arch eq "z") {
|
||||
print "Creating zip archive : $file\n";
|
||||
$cmd = "zip -r $file ";
|
||||
} else {
|
||||
print "Creating tar.gz archive : $file\n";
|
||||
$cmd = "tar -cvzf $file ";
|
||||
}
|
||||
foreach $dir (@$dirlist) {
|
||||
my($cfile);
|
||||
foreach $cfile (grep(!/\.spec/,glob "$dir/*.c")) {
|
||||
$cmd .= "$cfile ";
|
||||
}
|
||||
}
|
||||
$cmd .= " ./programs/winetest/wtmain.c";
|
||||
$cmd .= " ./include";
|
||||
$cmd .= " ./Makefile.win";
|
||||
system "$cmd";
|
||||
}
|
||||
|
||||
sub usage
|
||||
{
|
||||
print STDERR <<EOF;
|
||||
|
||||
Usage: $0 [options]
|
||||
|
||||
Options:
|
||||
-v verbose mode (can be specified multiple times)
|
||||
-T dir set Wine tree top directory (autodetected if not specified)
|
||||
-z file archive (zip) all needed files for test
|
||||
-g file archive (tar.gz) all needed files for test
|
||||
-i dir specify directory where windows.h lives
|
||||
-s sys specify system to build on (this sets the default header dir)
|
||||
Valid values for 'sys' are: cygwin, mingw, and wine
|
||||
-h Show this message
|
||||
NOTE: You can specify either -g or -z but not both
|
||||
EOF
|
||||
exit 1;
|
||||
}
|
|
@ -1,148 +0,0 @@
|
|||
#!/usr/bin/perl -w
|
||||
#
|
||||
# Extract #define symbol information from C header files.
|
||||
#
|
||||
# Copyright 2002 Alexandre Julliard
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# list of symbols (regexps) to skip for each header
|
||||
%skip_list =
|
||||
(
|
||||
"winnt.h" => [ "APIENTRY", "APIPRIVATE", "CALLBACK", "CONST", "EXTERN_C", "PASCAL",
|
||||
"VOID", "DUMMY(STRUCT|UNION)NAME.*", "STDAPI.*", "STDMETHOD.*", "WINAPI.*",
|
||||
"WINE_.*", "_*(cdecl|CDECL|pascal|export|fastcall|stdcall)",
|
||||
"MEM_SYSTEM", "_GET_CONTEXT", "_QUAD_.*",
|
||||
"CONTEXT_(ALPHA|R4000|SPARC|X86|i386|i486)" ],
|
||||
"winbase.h" => [ "(Fill|Move|Zero|Copy)Memory" ],
|
||||
"wingdi.h" => [ "PROFILE_LINKED", "PROFILE_EMBEDDED", "GetCharWidth[AW]" ],
|
||||
"winuser.h" => [ "OemToAnsi[AW]", "OemToAnsiBuff[AW]", "AnsiToOem[AW]", "AnsiToOemBuff[AW]",
|
||||
"Ansi(Next|Prev|Lower|Upper|LowerBuff|UpperBuff)[AW]", "GetNextWindow" ],
|
||||
"winsock2.h" => [ "WSAEVENT", "LPWSAEVENT", "WSAOVERLAPPED", "WS_.*" ]
|
||||
);
|
||||
|
||||
%header_list =
|
||||
(
|
||||
"windef.h" => "windef.pm",
|
||||
"winnt.h" => "winnt.pm",
|
||||
"winbase.h" => "winbase.pm",
|
||||
"wingdi.h" => "wingdi.pm",
|
||||
"winuser.h" => "winuser.pm",
|
||||
"winerror.h" => "winerror.pm",
|
||||
"winnls.h" => "winnls.pm",
|
||||
"winreg.h" => "winreg.pm",
|
||||
"winsock2.h" => "winsock2.pm",
|
||||
"winspool.h" => "winspool.pm",
|
||||
"winver.h" => "winver.pm",
|
||||
"wincon.h" => "wincon.pm",
|
||||
"setupapi.h" => "setupapi_h.pm",
|
||||
);
|
||||
|
||||
$include_dir = "../../include";
|
||||
|
||||
@list = ($#ARGV >= 0) ? @ARGV : keys %header_list;
|
||||
|
||||
foreach $basename (@list)
|
||||
{
|
||||
my $skip = $skip_list{$basename};
|
||||
my $result = "include/" . $header_list{$basename};
|
||||
my $package = $header_list{$basename};
|
||||
$package =~ s/\.pm$//;
|
||||
|
||||
open INPUT, "$include_dir/$basename" or die "Cannot open $include_dir/$basename";
|
||||
open OUTPUT, ">sym.c" or die "Cannot create sym.c";
|
||||
print "Building $result\n";
|
||||
|
||||
print OUTPUT <<EOF;
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
#include "windef.h"
|
||||
#include "winnt.h"
|
||||
#include "winbase.h"
|
||||
#include "wingdi.h"
|
||||
#include "winuser.h"
|
||||
#include "winerror.h"
|
||||
#include "winnls.h"
|
||||
#include "winreg.h"
|
||||
#include "winsock2.h"
|
||||
#include "winspool.h"
|
||||
#include "winver.h"
|
||||
#include "wincon.h"
|
||||
#include "setupapi.h"
|
||||
EOF
|
||||
|
||||
print OUTPUT <<EOF;
|
||||
int main()
|
||||
{
|
||||
printf( "# Automatically generated by make_symbols; DO NOT EDIT!! \\n" );
|
||||
printf( "#\\n" );
|
||||
printf( "# Perl definitions for header file $basename\\n" );
|
||||
printf( "#\\n\\n" );
|
||||
printf( "\\n" );
|
||||
printf( "package $package;\\n" );
|
||||
printf( "\\n" );
|
||||
printf( "use strict;\\n" );
|
||||
printf( "\\n" );
|
||||
printf( "use vars qw(\$VERSION \@ISA \@EXPORT \@EXPORT_OK);\\n" );
|
||||
printf( "\\n" );
|
||||
printf( "require Exporter;\\n" );
|
||||
printf( "\\n" );
|
||||
printf( "\@ISA = qw(Exporter);\\n" );
|
||||
printf( "\@EXPORT = qw(\\n" );
|
||||
EOF
|
||||
|
||||
my %symbols = ();
|
||||
while (<INPUT>)
|
||||
{
|
||||
# extract all #defines
|
||||
next unless (/^\s*\#\s*define\s+([A-Za-z0-9_]+)\s+(.*)$/);
|
||||
my ($name,$value) = ($1,$2);
|
||||
# skip empty value
|
||||
next if ($value eq "");
|
||||
# skip the WINELIB defines
|
||||
next if ($value =~ /WINELIB_NAME_AW/);
|
||||
# skip macros containing multiple values
|
||||
next if ($value =~ /{.*}/);
|
||||
# check against regexps to skip
|
||||
next if (grep { $name =~ /^$_$/ } @$skip);
|
||||
$symbols{$name} = $value;
|
||||
}
|
||||
foreach $sym (sort keys %symbols)
|
||||
{
|
||||
printf OUTPUT " printf(\" $sym\\n\");\n";
|
||||
}
|
||||
printf OUTPUT " printf(\");\\n\");\n";
|
||||
printf OUTPUT " printf(\"\@EXPORT_OK = qw();\\n\");\n";
|
||||
printf OUTPUT " printf(\"\\n\");\n";
|
||||
|
||||
foreach $sym (sort keys %symbols)
|
||||
{
|
||||
printf OUTPUT " printf(\"use constant $sym => %%d;\\n\", (int)($sym));\n";
|
||||
}
|
||||
printf OUTPUT " printf(\"\\n\");\n";
|
||||
printf OUTPUT " printf(\"1;\\n\");\n";
|
||||
print OUTPUT " exit(0);\n}\n";
|
||||
close OUTPUT;
|
||||
#print "cc -I../../include -o sym sym.c\n";
|
||||
if (system( "cc -I../../include -o sym sym.c" )) { die "Could not compile sym.c"; }
|
||||
#print "./sym >$result\n";
|
||||
if (system( "./sym >$result" )) { die "Could not run ./sym\n"; }
|
||||
unlink "sym","sym.c";
|
||||
}
|
||||
|
||||
chdir "../..";
|
||||
exec "tools/winapi/winapi_extract", "--no-progress", "--no-verbose";
|
|
@ -1,137 +0,0 @@
|
|||
#!/usr/bin/perl
|
||||
#
|
||||
# Wrapper script to run tests from inside the Wine tree
|
||||
#
|
||||
# Usage: runtest [options] input_file [perl_args...]
|
||||
#
|
||||
# Copyright 2002 Alexandre Julliard
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
use strict;
|
||||
|
||||
sub usage
|
||||
{
|
||||
print STDERR <<EOF;
|
||||
|
||||
Usage: $0 [options] input_file [perl_args...]
|
||||
|
||||
Options:
|
||||
-q quiet mode
|
||||
-v verbose mode (can be specified multiple times)
|
||||
-s announce successful tests
|
||||
-p prog name of the program to run for C tests
|
||||
-I dir prepend dir to Perl include path
|
||||
-P name set the current platform name
|
||||
-M names set the module names to be tested
|
||||
-T dir set Wine tree top directory (autodetected if not specified)
|
||||
|
||||
EOF
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# default values
|
||||
my $platform = $ENV{WINETEST_PLATFORM};
|
||||
$ENV{WINETEST_DEBUG} ||= 1;
|
||||
|
||||
my $topobjdir;
|
||||
my $infile;
|
||||
my $program;
|
||||
my @include_dirs;
|
||||
my @modules;
|
||||
|
||||
# parse command-line options
|
||||
while ($#ARGV >= 0)
|
||||
{
|
||||
my $arg = shift @ARGV;
|
||||
if ($arg eq "-h") { usage; }
|
||||
if ($arg eq "-p") { $program = shift @ARGV; next; }
|
||||
if ($arg eq "-q") { $ENV{WINETEST_DEBUG} = 0; next; }
|
||||
if ($arg eq "-v") { $ENV{WINETEST_DEBUG}++; next; }
|
||||
if ($arg eq "-s") { $ENV{WINETEST_REPORT_SUCCESS} = 1; next;}
|
||||
if ($arg eq "-P") { $platform = shift @ARGV; next; }
|
||||
if ($arg eq "-M") { push @modules, split /,/, shift @ARGV; next; }
|
||||
if ($arg eq "-I") { push @include_dirs, shift @ARGV; next; }
|
||||
if ($arg eq "-T")
|
||||
{
|
||||
$topobjdir = shift @ARGV;
|
||||
usage unless (-d $topobjdir);
|
||||
next;
|
||||
}
|
||||
$infile = $arg;
|
||||
last;
|
||||
}
|
||||
|
||||
# we must have found an input file
|
||||
usage unless defined($infile);
|
||||
|
||||
if ($infile =~ /\.c$/ && !defined($program))
|
||||
{
|
||||
# set program to the .c file base name if not specified otherwise
|
||||
($program = $infile) =~ s/\.c$//;
|
||||
}
|
||||
|
||||
# check/detect topobjdir
|
||||
if (defined($topobjdir))
|
||||
{
|
||||
unless (-f $topobjdir . "/server/wineserver")
|
||||
{
|
||||
printf STDERR "Wrong -T argument, %s/server/wineserver does not exist\n", $topobjdir;
|
||||
usage;
|
||||
}
|
||||
}
|
||||
else # try to detect it automatically
|
||||
{
|
||||
if (-f "./server/wineserver") { $topobjdir = "."; }
|
||||
elsif (-f "../server/wineserver") { $topobjdir = ".."; }
|
||||
elsif (-f "../../server/wineserver") { $topobjdir = "../.."; }
|
||||
elsif (-f "../../../server/wineserver") { $topobjdir = "../../.."; }
|
||||
}
|
||||
|
||||
# check for include/ dir in script source directory and append it to search path
|
||||
my $basedir = $0;
|
||||
if ($basedir =~ /\//) { $basedir =~ s!/[^/]+$!!; }
|
||||
else { $basedir = "."; }
|
||||
if (-d $basedir . "/include") { push @include_dirs, $basedir . "/include"; }
|
||||
|
||||
$ENV{PERL5LIB} = join( ":", @include_dirs, split( ":", $ENV{PERL5LIB} ) );
|
||||
if (@modules)
|
||||
{
|
||||
if (defined($ENV{WINEOPTIONS})) { $ENV{WINEOPTIONS} .= " "; }
|
||||
$ENV{WINEOPTIONS} .= "--dll " . join(',',@modules) . "=b";
|
||||
}
|
||||
|
||||
# set environment variables needed for Wine
|
||||
if (defined($topobjdir) && defined($program))
|
||||
{
|
||||
chop($topobjdir = `cd $topobjdir && pwd`);
|
||||
$ENV{LD_LIBRARY_PATH} = $topobjdir . ":" . $ENV{LD_LIBRARY_PATH};
|
||||
$ENV{WINEDLLPATH} = $topobjdir . "/dlls:" . $topobjdir . "/programs";
|
||||
$ENV{WINESERVER} = $topobjdir . "/server/wineserver";
|
||||
$ENV{WINELOADER} = $topobjdir . "/wine";
|
||||
$ENV{WINETEST_PLATFORM} = $platform || "wine";
|
||||
exec $ENV{WINELOADER}, $program, $infile, @ARGV;
|
||||
}
|
||||
else
|
||||
{
|
||||
$ENV{WINETEST_PLATFORM} = $platform || "windows";
|
||||
}
|
||||
|
||||
# and now exec the program
|
||||
$program ||= "perl";
|
||||
exec $program, $infile, @ARGV;
|
||||
print STDERR "Could not exec $program\n";
|
||||
exit 1;
|
|
@ -1 +0,0 @@
|
|||
wine.ok
|
|
@ -1,102 +0,0 @@
|
|||
################################################################
|
||||
# Tests for wine.pm module functions
|
||||
#
|
||||
# Copyright 2001 Alexandre Julliard
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library 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. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
use wine;
|
||||
use winetest;
|
||||
|
||||
use kernel32;
|
||||
|
||||
################################################################
|
||||
# Test some simple function calls
|
||||
|
||||
# Test string arguments
|
||||
$atom = GlobalAddAtomA("foo");
|
||||
ok( $atom >= 0xc000 && $atom <= 0xffff );
|
||||
ok( !defined($wine::err) );
|
||||
|
||||
# Test integer and string reference arguments
|
||||
$buffer = "xxxxxx";
|
||||
$ret = GlobalGetAtomNameA( $atom, \$buffer, length(buffer) );
|
||||
ok( !defined($wine::err) );
|
||||
ok( $ret == 3 );
|
||||
ok( lc $buffer eq "foo\000xx" );
|
||||
|
||||
# Test integer reference
|
||||
$code = 0;
|
||||
$ret = GetExitCodeThread( GetCurrentThread(), \$code );
|
||||
ok( !defined($wine::err) );
|
||||
ok( $ret );
|
||||
ok( $code == 0x103 );
|
||||
|
||||
# Test string return value
|
||||
$str = lstrcatA( "foo\0foo", "bar" );
|
||||
ok( !defined($wine::err) );
|
||||
ok( $str eq "foobar" );
|
||||
|
||||
################################################################
|
||||
# Test last error handling
|
||||
|
||||
SetLastError( 123 );
|
||||
$ret = GetLastError();
|
||||
ok( $ret == 123 );
|
||||
|
||||
################################################################
|
||||
# Test various error cases
|
||||
|
||||
eval { SetLastError(1,2); };
|
||||
ok( $@ =~ /Wrong number of arguments, expected 1, got 2/ );
|
||||
|
||||
wine::declare("kernel32", "SetLastError" => "int" ); # disable prototype
|
||||
eval { SetLastError(1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7); };
|
||||
ok( $@ =~ /Too many arguments/ );
|
||||
|
||||
wine::declare("kernel32", "non_existent_func" => ["int",["int"]]);
|
||||
eval { non_existent_func(1); };
|
||||
ok( $@ =~ /Could not get address for kernel32\.non_existent_func/ );
|
||||
|
||||
my $funcptr = GetProcAddress( GetModuleHandleA("kernel32"), "SetLastError" );
|
||||
ok( $funcptr );
|
||||
eval { wine::call_wine_API( $funcptr, 10, $wine::debug-1, 0); };
|
||||
ok( $@ =~ /Bad return type 10 at/ );
|
||||
|
||||
eval { foobar(1,2,3); };
|
||||
ok( $@ =~ /Function 'foobar' not declared at/ );
|
||||
|
||||
################################################################
|
||||
# Test assert
|
||||
|
||||
assert( 1, "cannot fail" );
|
||||
|
||||
eval { assert( 0, "this must fail" ); };
|
||||
ok( $@ =~ /Assertion failed/ );
|
||||
ok( $@ =~ /this must fail/ );
|
||||
|
||||
################################################################
|
||||
# Test todo blocks
|
||||
|
||||
todo_wine
|
||||
{
|
||||
ok( $wine::platform ne "wine", "Must fail only on Wine" );
|
||||
};
|
||||
|
||||
todo( $wine::platform,
|
||||
sub { ok( 0, "Failure must be ignored inside todo" ); } );
|
||||
todo( $wine::platform . "xxx",
|
||||
sub { ok( 1, "Success must not cause error inside todo for other platform" ); } );
|
|
@ -1,543 +0,0 @@
|
|||
/* -*-C-*-
|
||||
* Perl gateway to wine API calls
|
||||
*
|
||||
* Copyright 2001 John F Sturtz for Codeweavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "windef.h"
|
||||
|
||||
#include <EXTERN.h>
|
||||
#include <perl.h>
|
||||
#include <XSUB.h>
|
||||
|
||||
#undef WORD
|
||||
#include "winbase.h"
|
||||
|
||||
/* API return type constants */
|
||||
enum ret_type
|
||||
{
|
||||
RET_VOID = 0,
|
||||
RET_INT = 1,
|
||||
RET_WORD = 2,
|
||||
RET_PTR = 3,
|
||||
RET_STR = 4
|
||||
};
|
||||
|
||||
/* max arguments for a function call */
|
||||
#define MAX_ARGS 16
|
||||
|
||||
extern unsigned long perl_call_wine
|
||||
(
|
||||
FARPROC function,
|
||||
int n_args,
|
||||
unsigned long *args,
|
||||
unsigned int *last_error,
|
||||
int debug
|
||||
);
|
||||
|
||||
/* Thunk type definitions */
|
||||
|
||||
#ifdef __i386__
|
||||
#pragma pack(1)
|
||||
struct thunk
|
||||
{
|
||||
BYTE pushl;
|
||||
BYTE movl[2];
|
||||
BYTE leal_args[3];
|
||||
BYTE pushl_args;
|
||||
BYTE pushl_addr;
|
||||
BYTE *args_ptr;
|
||||
BYTE pushl_nb_args;
|
||||
BYTE nb_args;
|
||||
BYTE pushl_ref;
|
||||
SV *code_ref;
|
||||
BYTE call;
|
||||
void *func;
|
||||
BYTE leave;
|
||||
BYTE ret;
|
||||
short arg_size;
|
||||
BYTE arg_types[MAX_ARGS];
|
||||
};
|
||||
#pragma pack(4)
|
||||
#else
|
||||
#error You must implement the callback thunk for your CPU
|
||||
#endif
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| This contains most of the machine instructions necessary to
|
||||
| implement the thunk. All the thunk does is turn around and
|
||||
| call function callback_bridge(), which is defined in
|
||||
| winetest.c.
|
||||
|
|
||||
| The data from this static thunk can just be copied directly
|
||||
| into the thunk allocated dynamically below. That fills in
|
||||
| most of it, but a couple values need to be filled in after
|
||||
| the allocation, at run time:
|
||||
|
|
||||
| 1) The pointer to the thunk's data area, which we
|
||||
| don't know yet, because we haven't allocated it
|
||||
| yet ...
|
||||
|
|
||||
| 2) The address of the function to call. We know the
|
||||
| address of the function [callback_bridge()], but
|
||||
| the value filled into the thunk is an address
|
||||
| relative to the thunk itself, so we can't fill it
|
||||
| in until we've allocated the actual thunk.
|
||||
--------------------------------------------------------------*/
|
||||
static const struct thunk thunk_template =
|
||||
{
|
||||
/* pushl %ebp */ 0x55,
|
||||
/* movl %esp,%ebp */ { 0x89, 0xe5 },
|
||||
/* leal 8(%ebp),%edx */ { 0x8d, 0x55, 0x08 },
|
||||
/* pushl %edx */ 0x52,
|
||||
/* pushl (data addr) */ 0x68, NULL,
|
||||
/* pushl (nb_args) */ 0x6a, 0,
|
||||
/* pushl (code ref) */ 0x68, NULL,
|
||||
/* call (func) */ 0xe8, NULL,
|
||||
/* leave */ 0xc9,
|
||||
/* ret $arg_size */ 0xc2, 0,
|
||||
/* arg_types */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
|
||||
};
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
| Function: convert_value |
|
||||
| -------------------------------------------------------------------- |
|
||||
| Purpose: Convert a C value to a Perl value |
|
||||
| |
|
||||
| Parameters: type -- constant specifying type of value |
|
||||
| val -- value to convert |
|
||||
| |
|
||||
| Returns: Perl SV * |
|
||||
----------------------------------------------------------------------*/
|
||||
static SV *convert_value( enum ret_type type, unsigned long val )
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case RET_VOID: return &PL_sv_undef;
|
||||
case RET_INT: return sv_2mortal( newSViv ((int) val ));
|
||||
case RET_WORD: return sv_2mortal( newSViv ((int) val & 0xffff ));
|
||||
case RET_PTR: return sv_2mortal( newSViv ((int) val ));
|
||||
case RET_STR: return sv_2mortal( newSVpv ((char *) val, 0 ));
|
||||
}
|
||||
croak ("Bad return type %d", type);
|
||||
return &PL_sv_undef;
|
||||
}
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
| Function: callback_bridge |
|
||||
| -------------------------------------------------------------------- |
|
||||
| Purpose: Central pass-through point for Wine API callbacks |
|
||||
| |
|
||||
| Wine API callback thunks are set up so that they call this |
|
||||
| function, which turns around and calls the user's declared |
|
||||
| Perl callback sub. |
|
||||
| |
|
||||
| Parameters: data -- pointer to thunk data area |
|
||||
| args -- array of args passed from Wine API to callback |
|
||||
| |
|
||||
| Returns: Whatever the Perl sub returns |
|
||||
----------------------------------------------------------------------*/
|
||||
static int callback_bridge( SV *callback_ref, int nb_args, BYTE arg_types[], unsigned long args[] )
|
||||
{
|
||||
/* Locals */
|
||||
int i, n;
|
||||
SV *sv;
|
||||
|
||||
int r = 0;
|
||||
|
||||
/* Perl/C interface voodoo */
|
||||
dSP;
|
||||
ENTER;
|
||||
SAVETMPS;
|
||||
PUSHMARK(sp);
|
||||
|
||||
/* Push args on stack, according to type */
|
||||
for (i = 0; i < nb_args; i++)
|
||||
{
|
||||
sv = convert_value (arg_types[i], args[i]);
|
||||
PUSHs (sv);
|
||||
}
|
||||
PUTBACK;
|
||||
|
||||
/* Call Perl sub */
|
||||
n = perl_call_sv (callback_ref, G_SCALAR);
|
||||
|
||||
/* Nab return value */
|
||||
SPAGAIN;
|
||||
if (n == 1)
|
||||
{
|
||||
r = POPi;
|
||||
}
|
||||
PUTBACK;
|
||||
FREETMPS;
|
||||
LEAVE;
|
||||
|
||||
/* [todo] Pass through Perl sub return value */
|
||||
return (r);
|
||||
}
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
| XS module |
|
||||
| |
|
||||
| |
|
||||
----------------------------------------------------------------------*/
|
||||
MODULE = wine PACKAGE = wine
|
||||
|
||||
|
||||
# --------------------------------------------------------------------
|
||||
# Function: call_wine_API
|
||||
# --------------------------------------------------------------------
|
||||
# Purpose: Call perl_call_wine(), which calls a wine API function
|
||||
#
|
||||
# Parameters: function -- API function to call
|
||||
# ret_type -- return type
|
||||
# debug -- debug flag
|
||||
# ... -- args to pass to API function
|
||||
#
|
||||
# Returns: list containing 2 elements: the last error code and the
|
||||
# value returned by the API function
|
||||
# --------------------------------------------------------------------
|
||||
void
|
||||
call_wine_API(function, ret_type, debug, ...)
|
||||
unsigned long function;
|
||||
int ret_type;
|
||||
int debug;
|
||||
|
||||
PROTOTYPE: $$$@
|
||||
|
||||
PPCODE:
|
||||
/*--------------------------------------------------------------
|
||||
| Begin call_wine_API
|
||||
--------------------------------------------------------------*/
|
||||
|
||||
/* Local types */
|
||||
struct arg
|
||||
{
|
||||
int ival;
|
||||
void *pval;
|
||||
};
|
||||
|
||||
/* Locals */
|
||||
int n_fixed = 3;
|
||||
int n_args = (items - n_fixed);
|
||||
struct arg args[MAX_ARGS+1];
|
||||
unsigned long f_args[MAX_ARGS+1];
|
||||
unsigned int i, n;
|
||||
unsigned int last_error = 0xdeadbeef;
|
||||
char *p;
|
||||
SV *sv;
|
||||
unsigned long r;
|
||||
|
||||
if (n_args > MAX_ARGS) croak("Too many arguments");
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Prepare function args
|
||||
--------------------------------------------------------------*/
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [wine.xs/call_wine_API()]\n");
|
||||
}
|
||||
for (i = 0; (i < n_args); i++)
|
||||
{
|
||||
sv = ST (n_fixed + i);
|
||||
args[i].pval = NULL;
|
||||
|
||||
if (! SvOK (sv))
|
||||
continue;
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Ref
|
||||
--------------------------------------------------------------*/
|
||||
if (SvROK (sv))
|
||||
{
|
||||
sv = SvRV (sv);
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Integer ref -- pass address of value
|
||||
--------------------------------------------------------------*/
|
||||
if (SvIOK (sv))
|
||||
{
|
||||
args[i].ival = SvIV (sv);
|
||||
f_args[i] = (unsigned long) &(args[i].ival);
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [RV->IV] 0x%lx\n", f_args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Number ref -- convert and pass address of value
|
||||
--------------------------------------------------------------*/
|
||||
else if (SvNOK (sv))
|
||||
{
|
||||
args[i].ival = (unsigned long) SvNV (sv);
|
||||
f_args[i] = (unsigned long) &(args[i].ival);
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [RV->NV] 0x%lx\n", f_args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| String ref -- pass pointer
|
||||
--------------------------------------------------------------*/
|
||||
else if (SvPOK (sv))
|
||||
{
|
||||
f_args[i] = (unsigned long) ((char *) SvPV (sv, PL_na));
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [RV->PV] 0x%lx\n", f_args[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Scalar
|
||||
--------------------------------------------------------------*/
|
||||
else
|
||||
{
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Integer -- pass value
|
||||
--------------------------------------------------------------*/
|
||||
if (SvIOK (sv))
|
||||
{
|
||||
f_args[i] = (unsigned long) SvIV (sv);
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [IV] %ld (0x%lx)\n", f_args[i], f_args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Number -- convert and pass value
|
||||
--------------------------------------------------------------*/
|
||||
else if (SvNOK (sv))
|
||||
{
|
||||
f_args[i] = (unsigned long) SvNV (sv);
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [NV] %ld (0x%lx)\n", f_args[i], f_args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| String -- pass pointer to copy
|
||||
--------------------------------------------------------------*/
|
||||
else if (SvPOK (sv))
|
||||
{
|
||||
p = SvPV (sv, n);
|
||||
if ((args[i].pval = malloc( n+2 )))
|
||||
{
|
||||
memcpy (args[i].pval, p, n);
|
||||
((char *)(args[i].pval))[n] = 0; /* add final NULL */
|
||||
((char *)(args[i].pval))[n+1] = 0; /* and another one for Unicode too */
|
||||
f_args[i] = (unsigned long) args[i].pval;
|
||||
if (debug > 1)
|
||||
{
|
||||
fprintf( stderr, " [PV] 0x%lx\n", f_args[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} /* end for */
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Here we go
|
||||
--------------------------------------------------------------*/
|
||||
r = perl_call_wine( (FARPROC)function, n_args, f_args, &last_error, debug );
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Handle modified parameter values
|
||||
|
|
||||
| There are four possibilities for parameter values:
|
||||
|
|
||||
| 1) integer value
|
||||
| 2) string value
|
||||
| 3) ref to integer value
|
||||
| 4) ref to string value
|
||||
|
|
||||
| In cases 1 and 2, the intent is that the values won't be
|
||||
| modified, because they're not passed by ref. So we leave
|
||||
| them alone here.
|
||||
|
|
||||
| In case 4, the address of the actual string buffer has
|
||||
| already been passed to the wine API function, which had
|
||||
| opportunity to modify it if it wanted to. So again, we
|
||||
| don't have anything to do here.
|
||||
|
|
||||
| The case we need to handle is case 3. For integers passed
|
||||
| by ref, we created a local containing the initial value,
|
||||
| and passed its address to the wine API function, which
|
||||
| (potentially) modified it. Now we have to copy the
|
||||
| (potentially) new value back to the Perl variable passed
|
||||
| in, using sv_setiv(). (Which will take fewer lines of code
|
||||
| to do than it took lines of comment to describe ...)
|
||||
--------------------------------------------------------------*/
|
||||
for (i = 0; (i < n_args); i++)
|
||||
{
|
||||
sv = ST (n_fixed + i);
|
||||
if (! SvOK (sv))
|
||||
continue;
|
||||
if (SvROK (sv) && (sv = SvRV (sv)) && SvIOK (sv))
|
||||
{
|
||||
sv_setiv (sv, args[i].ival);
|
||||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Put appropriate return value on the stack for Perl to pick
|
||||
| up
|
||||
--------------------------------------------------------------*/
|
||||
EXTEND(SP,2);
|
||||
if (last_error != 0xdeadbeef) PUSHs(sv_2mortal(newSViv(last_error)));
|
||||
else PUSHs( &PL_sv_undef );
|
||||
PUSHs (convert_value (ret_type, r));
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Free up allocated memory
|
||||
--------------------------------------------------------------*/
|
||||
for (i = 0; (i < n_args); i++)
|
||||
{
|
||||
if (args[i].pval) free(args[i].pval);
|
||||
}
|
||||
|
||||
|
||||
# --------------------------------------------------------------------
|
||||
# Function: load_library
|
||||
# --------------------------------------------------------------------
|
||||
# Purpose: Load a Wine library
|
||||
#
|
||||
# Parameters: module -- module (dll) to load
|
||||
#
|
||||
# Returns: module handle
|
||||
# --------------------------------------------------------------------
|
||||
void
|
||||
load_library(module)
|
||||
char *module;
|
||||
PROTOTYPE: $
|
||||
|
||||
PPCODE:
|
||||
ST(0) = newSViv( (I32)LoadLibraryA(module) );
|
||||
XSRETURN(1);
|
||||
|
||||
|
||||
# --------------------------------------------------------------------
|
||||
# Function: get_proc_address
|
||||
# --------------------------------------------------------------------
|
||||
# Purpose: Retrive a function address
|
||||
#
|
||||
# Parameters: module -- module handle
|
||||
# --------------------------------------------------------------------
|
||||
void
|
||||
get_proc_address(module,func)
|
||||
unsigned long module;
|
||||
char *func;
|
||||
PROTOTYPE: $$
|
||||
|
||||
PPCODE:
|
||||
ST(0) = newSViv( (I32)GetProcAddress( (HMODULE)module, func ) );
|
||||
XSRETURN(1);
|
||||
|
||||
|
||||
# --------------------------------------------------------------------
|
||||
# Function: alloc_thunk
|
||||
# --------------------------------------------------------------------
|
||||
# Purpose: Allocate a thunk for a wine API callback
|
||||
#
|
||||
# This is used when a Wine API function is called from Perl, and
|
||||
# that API function takes a callback as one of its parameters.
|
||||
#
|
||||
# The Wine API function, of course, must be passed the address of
|
||||
# a C function as the callback. But if the API is called from Perl,
|
||||
# we want the user to be able to specify a Perl sub as the callback,
|
||||
# and have control returned there each time the callback is called.
|
||||
#
|
||||
# This function takes a code ref to a Perl sub as one of its
|
||||
# arguments. It then creates a unique C function (a thunk) on the
|
||||
# fly, which can be passed to the Wine API function as its callback.
|
||||
#
|
||||
# The thunk has its own data area (as thunks are wont to do); one
|
||||
# of the things stashed there is aforementioned Perl code ref. So
|
||||
# the sequence of events is as follows:
|
||||
#
|
||||
# 1) From Perl, user calls alloc_callback(), passing a ref
|
||||
# to a Perl sub to use as the callback.
|
||||
#
|
||||
# 2) alloc_callback() calls this routine. This routine
|
||||
# creates a thunk, and stashes the above code ref in
|
||||
# it. This function then returns a pointer to the thunk
|
||||
# to Perl.
|
||||
#
|
||||
# 3) From Perl, user calls Wine API function. As the parameter
|
||||
# which is supposed to be the address of the callback, the
|
||||
# user passes the pointer to the thunk allocated above.
|
||||
#
|
||||
# 4) The Wine API function gets called. It periodically calls
|
||||
# the callback, which executes the thunk.
|
||||
#
|
||||
# 5) Each time the thunk is executed, it calls callback_bridge()
|
||||
# (defined in winetest.c).
|
||||
#
|
||||
# 6) callback_bridge() fishes the Perl code ref out of the
|
||||
# thunk data area and calls the Perl callback.
|
||||
#
|
||||
# Voila. The Perl callback gets called each time the Wine API
|
||||
# function calls its callback.
|
||||
#
|
||||
# Parameters: [todo] Parameters ...
|
||||
#
|
||||
# Returns: Pointer to thunk
|
||||
# --------------------------------------------------------------------
|
||||
void
|
||||
alloc_thunk(...)
|
||||
|
||||
PPCODE:
|
||||
|
||||
/* Locals */
|
||||
struct thunk *thunk;
|
||||
int i;
|
||||
|
||||
/* Allocate the thunk */
|
||||
if (!(thunk = malloc( sizeof(*thunk) ))) croak( "Out of memory" );
|
||||
|
||||
(*thunk) = thunk_template;
|
||||
thunk->args_ptr = thunk->arg_types;
|
||||
thunk->nb_args = items - 1;
|
||||
thunk->code_ref = SvRV (ST (0));
|
||||
thunk->func = (void *)((char *) callback_bridge - (char *) &thunk->leave);
|
||||
thunk->arg_size = thunk->nb_args * sizeof(int);
|
||||
|
||||
/* Stash callback arg types */
|
||||
for (i = 1; i < items; i++) thunk->arg_types[i - 1] = SvIV (ST (i));
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Push the address of the thunk on the stack for return
|
||||
|
|
||||
| [todo] We need to free up the memory allocated somehow ...
|
||||
--------------------------------------------------------------*/
|
||||
ST (0) = newSViv ((I32) thunk);
|
||||
XSRETURN (1);
|
|
@ -1,183 +0,0 @@
|
|||
/*
|
||||
* Perl interpreter for running Wine tests
|
||||
*
|
||||
* Copyright 2001 John F Sturtz for Codeweavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
|
||||
#include <EXTERN.h>
|
||||
#include <perl.h>
|
||||
|
||||
static FARPROC pGetLastError;
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
| Function: call_wine_func |
|
||||
| -------------------------------------------------------------------- |
|
||||
| Purpose: Call a wine API function, passing in appropriate number |
|
||||
| of args |
|
||||
| |
|
||||
| Parameters: proc -- function to call |
|
||||
| n_args -- array of args |
|
||||
| a -- array of args |
|
||||
| |
|
||||
| Returns: return value from API function called |
|
||||
----------------------------------------------------------------------*/
|
||||
static unsigned long call_wine_func
|
||||
(
|
||||
FARPROC proc,
|
||||
int n_args,
|
||||
unsigned long *a
|
||||
)
|
||||
{
|
||||
/* Locals */
|
||||
unsigned long rc;
|
||||
|
||||
/* Begin call_wine_func */
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Now we need to call the function with the appropriate number
|
||||
| of arguments
|
||||
|
|
||||
| Anyone who can think of a better way to do this is welcome to
|
||||
| come forth with it ...
|
||||
--------------------------------------------------------------*/
|
||||
switch (n_args)
|
||||
{
|
||||
|
||||
case 0: rc = proc (); break;
|
||||
case 1: rc = proc (a[0]); break;
|
||||
case 2: rc = proc (a[0], a[1]); break;
|
||||
case 3: rc = proc (a[0], a[1], a[2]); break;
|
||||
case 4: rc = proc (a[0], a[1], a[2], a[3]); break;
|
||||
case 5: rc = proc (a[0], a[1], a[2], a[3], a[4]); break;
|
||||
case 6: rc = proc (a[0], a[1], a[2], a[3], a[4], a[5]); break;
|
||||
case 7: rc = proc (a[0], a[1], a[2], a[3], a[4], a[5], a[6]); break;
|
||||
case 8: rc = proc (a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]); break;
|
||||
case 9: rc = proc (a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]); break;
|
||||
case 10: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9] ); break;
|
||||
case 11: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9], a[10] ); break;
|
||||
case 12: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9], a[10], a[11] ); break;
|
||||
case 13: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9], a[10], a[11], a[12] ); break;
|
||||
case 14: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9], a[10], a[11], a[12], a[13] ); break;
|
||||
case 15: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9], a[10], a[11], a[12], a[13], a[14] ); break;
|
||||
case 16: rc = proc( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8],
|
||||
a[9], a[10], a[11], a[12], a[13], a[14], a[15] ); break;
|
||||
default:
|
||||
fprintf( stderr, "%d args not supported\n", n_args );
|
||||
rc = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------
|
||||
| Return value from func
|
||||
--------------------------------------------------------------*/
|
||||
return (rc);
|
||||
}
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
| Function: perl_call_wine
|
||||
| --------------------------------------------------------------------
|
||||
| Purpose: Fetch and call a wine API function from a library
|
||||
|
|
||||
| Parameters:
|
||||
|
|
||||
| proc -- function address
|
||||
| n_args -- number of args
|
||||
| args -- args
|
||||
| last_error -- returns the last error code
|
||||
| debug -- debug flag
|
||||
|
|
||||
| Returns: Return value from API function called
|
||||
----------------------------------------------------------------------*/
|
||||
unsigned long perl_call_wine
|
||||
(
|
||||
FARPROC proc,
|
||||
int n_args,
|
||||
unsigned long *args,
|
||||
unsigned int *last_error,
|
||||
int debug
|
||||
)
|
||||
{
|
||||
unsigned long ret;
|
||||
DWORD error, old_error;
|
||||
|
||||
if (debug > 1)
|
||||
{
|
||||
int i;
|
||||
fprintf(stderr," perl_call_wine(func=%p", proc);
|
||||
for (i = 0; i < n_args; i++) fprintf( stderr, ",0x%lx", args[i] );
|
||||
fprintf( stderr, ")\n" );
|
||||
}
|
||||
|
||||
/* special case to allow testing GetLastError without messing up the last error code */
|
||||
if (proc == pGetLastError)
|
||||
ret = call_wine_func (proc, n_args, args);
|
||||
else
|
||||
{
|
||||
old_error = GetLastError();
|
||||
SetLastError( 0xdeadbeef );
|
||||
ret = call_wine_func (proc, n_args, args);
|
||||
error = GetLastError();
|
||||
if (error != 0xdeadbeef) *last_error = error;
|
||||
else SetLastError( old_error );
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/* perl extension initialisation */
|
||||
static void xs_init(pTHX)
|
||||
{
|
||||
extern void boot_wine(CV *cv);
|
||||
newXS("wine::bootstrap", boot_wine,__FILE__);
|
||||
}
|
||||
|
||||
/* main function */
|
||||
int main( int argc, char **argv, char **envp )
|
||||
{
|
||||
PerlInterpreter *perl;
|
||||
int status;
|
||||
|
||||
envp = environ; /* envp is not valid (yet) in Winelib */
|
||||
|
||||
pGetLastError = GetProcAddress( GetModuleHandleA("kernel32"), "GetLastError" );
|
||||
assert( pGetLastError );
|
||||
|
||||
if (!(perl = perl_alloc ()))
|
||||
{
|
||||
fprintf( stderr, "Could not allocate perl interpreter\n" );
|
||||
exit(1);
|
||||
}
|
||||
perl_construct (perl);
|
||||
status = perl_parse( perl, xs_init, argc, argv, envp );
|
||||
if (!status) status = perl_run(perl);
|
||||
perl_destruct (perl);
|
||||
perl_free (perl);
|
||||
exit( status );
|
||||
}
|
Loading…
Reference in New Issue