Merge branch 'master' of git://factorcode.org/git/factor
commit
5d83236d47
|
@ -1,6 +1,6 @@
|
|||
USING: definitions kernel parser words sequences math.parser
|
||||
namespaces editors io.launcher windows.shell32 io.files
|
||||
io.paths.windows strings unicode.case make ;
|
||||
io.directories.search.windows strings unicode.case make ;
|
||||
IN: editors.editpadlite
|
||||
|
||||
: editpadlite-path ( -- path )
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
USING: definitions kernel parser words sequences math.parser
|
||||
namespaces editors io.launcher windows.shell32 io.files
|
||||
io.paths.windows strings unicode.case make ;
|
||||
io.directories.search.windows strings unicode.case make ;
|
||||
IN: editors.editpadpro
|
||||
|
||||
: editpadpro-path ( -- path )
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences windows.shell32 make io.paths.windows ;
|
||||
namespaces sequences windows.shell32 make
|
||||
io.directories.search.windows ;
|
||||
IN: editors.editplus
|
||||
|
||||
: editplus-path ( -- path )
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences windows.shell32 make io.paths.windows ;
|
||||
namespaces sequences windows.shell32 make
|
||||
io.directories.search.windows ;
|
||||
IN: editors.emeditor
|
||||
|
||||
: emeditor-path ( -- path )
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
! Copyright (C) 2008 Kibleur Christophe.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences windows.shell32 io.paths.windows make ;
|
||||
USING: editors io.files io.launcher kernel math.parser make
|
||||
namespaces sequences windows.shell32 io.directories.search.windows ;
|
||||
IN: editors.etexteditor
|
||||
|
||||
: etexteditor-path ( -- str )
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
USING: editors.gvim io.files kernel namespaces sequences
|
||||
windows.shell32 io.paths.windows system ;
|
||||
windows.shell32 io.directories.search.windows system
|
||||
io.pathnames ;
|
||||
IN: editors.gvim.windows
|
||||
|
||||
M: windows gvim-path
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences windows.shell32 make ;
|
||||
namespaces sequences windows.shell32 make io.pathnames ;
|
||||
IN: editors.notepad2
|
||||
|
||||
: notepad2-path ( -- path )
|
||||
\ notepad2-path get-global [
|
||||
"C:\\Windows\\system32\\notepad.exe"
|
||||
windows-directory "system32\\notepad.exe" append-path
|
||||
] unless* ;
|
||||
|
||||
: notepad2 ( file line -- )
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences io.paths.windows make ;
|
||||
namespaces sequences io.directories.search.windows make ;
|
||||
IN: editors.notepadpp
|
||||
|
||||
: notepadpp-path ( -- path )
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
! Copyright (C) 2007 Clemens F. Hofreither.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
! clemens.hofreither@gmx.net
|
||||
USING: io.files io.launcher kernel namespaces io.paths.windows
|
||||
USING: io.files io.launcher kernel namespaces io.directories.search.windows
|
||||
math math.parser editors sequences make unicode.case ;
|
||||
IN: editors.scite
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences io.paths.windows make ;
|
||||
namespaces sequences io.directories.search.windows make ;
|
||||
IN: editors.ted-notepad
|
||||
|
||||
: ted-notepad-path ( -- path )
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Doug Coleman
|
|
@ -0,0 +1 @@
|
|||
TextPad editor integration
|
|
@ -0,0 +1,16 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences make io.directories.search
|
||||
io.directories.search.windows ;
|
||||
IN: editors.textpad
|
||||
|
||||
: textpad-path ( -- path )
|
||||
\ textpad-path get-global [
|
||||
"TextPad 5" t [ "TextPad.exe" tail? ] find-in-program-files
|
||||
] unless* ;
|
||||
|
||||
: textpad ( file line -- )
|
||||
[
|
||||
textpad-path , [ , ] [ number>string "(" ",0)" surround , ] bi*
|
||||
] { } make run-detached drop ;
|
||||
|
||||
[ textpad ] edit-hook set-global
|
|
@ -1,5 +1,5 @@
|
|||
USING: editors io.files io.launcher kernel math.parser
|
||||
namespaces sequences io.paths.windows make ;
|
||||
namespaces sequences io.directories.search.windows make ;
|
||||
IN: editors.ultraedit
|
||||
|
||||
: ultraedit-path ( -- path )
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
USING: editors io.launcher kernel io.paths.windows
|
||||
USING: editors io.launcher kernel io.directories.search.windows
|
||||
math.parser namespaces sequences io.files arrays ;
|
||||
IN: editors.wordpad
|
||||
|
||||
|
|
|
@ -56,4 +56,4 @@ PRIVATE>
|
|||
: find-in-directories ( directories bfs? quot -- path' )
|
||||
'[ _ _ find-file ] attempt-all ; inline
|
||||
|
||||
os windows? [ "io.paths.windows" require ] when
|
||||
os windows? [ "io.directories.search.windows" require ] when
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
! Copyright (C) 2008 Doug Coleman.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: arrays fry io.pathnames kernel sequences windows.shell32 ;
|
||||
IN: io.paths
|
||||
USING: arrays fry io.pathnames kernel sequences windows.shell32
|
||||
io.directories.search ;
|
||||
IN: io.directories.search.windows
|
||||
|
||||
: program-files-directories ( -- array )
|
||||
program-files program-files-x86 2array ; inline
|
||||
|
|
|
@ -1,65 +1,65 @@
|
|||
USING: alias alien.syntax kernel math windows.types math.bitwise ;
|
||||
USING: alias alien.syntax kernel math windows.types math.bitwise
|
||||
constants ;
|
||||
IN: windows.advapi32
|
||||
LIBRARY: advapi32
|
||||
|
||||
: PROV_RSA_FULL 1 ; inline
|
||||
: PROV_RSA_SIG 2 ; inline
|
||||
: PROV_DSS 3 ; inline
|
||||
: PROV_FORTEZZA 4 ; inline
|
||||
: PROV_MS_EXCHANGE 5 ; inline
|
||||
: PROV_SSL 6 ; inline
|
||||
: PROV_RSA_SCHANNEL 12 ; inline
|
||||
: PROV_DSS_DH 13 ; inline
|
||||
: PROV_EC_ECDSA_SIG 14 ; inline
|
||||
: PROV_EC_ECNRA_SIG 15 ; inline
|
||||
: PROV_EC_ECDSA_FULL 16 ; inline
|
||||
: PROV_EC_ECNRA_FULL 17 ; inline
|
||||
: PROV_DH_SCHANNEL 18 ; inline
|
||||
: PROV_SPYRUS_LYNKS 20 ; inline
|
||||
: PROV_RNG 21 ; inline
|
||||
: PROV_INTEL_SEC 22 ; inline
|
||||
: PROV_REPLACE_OWF 23 ; inline
|
||||
: PROV_RSA_AES 24 ; inline
|
||||
CONSTANT: PROV_RSA_FULL 1
|
||||
CONSTANT: PROV_RSA_SIG 2
|
||||
CONSTANT: PROV_DSS 3
|
||||
CONSTANT: PROV_FORTEZZA 4
|
||||
CONSTANT: PROV_MS_EXCHANGE 5
|
||||
CONSTANT: PROV_SSL 6
|
||||
CONSTANT: PROV_RSA_SCHANNEL 12
|
||||
CONSTANT: PROV_DSS_DH 13
|
||||
CONSTANT: PROV_EC_ECDSA_SIG 14
|
||||
CONSTANT: PROV_EC_ECNRA_SIG 15
|
||||
CONSTANT: PROV_EC_ECDSA_FULL 16
|
||||
CONSTANT: PROV_EC_ECNRA_FULL 17
|
||||
CONSTANT: PROV_DH_SCHANNEL 18
|
||||
CONSTANT: PROV_SPYRUS_LYNKS 20
|
||||
CONSTANT: PROV_RNG 21
|
||||
CONSTANT: PROV_INTEL_SEC 22
|
||||
CONSTANT: PROV_REPLACE_OWF 23
|
||||
CONSTANT: PROV_RSA_AES 24
|
||||
|
||||
: MS_DEF_DH_SCHANNEL_PROV
|
||||
"Microsoft DH Schannel Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_DEF_DH_SCHANNEL_PROV "Microsoft DH Schannel Cryptographic Provider"
|
||||
|
||||
: MS_DEF_DSS_DH_PROV
|
||||
"Microsoft Base DSS and Diffie-Hellman Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_DEF_DSS_DH_PROV
|
||||
"Microsoft Base DSS and Diffie-Hellman Cryptographic Provider"
|
||||
|
||||
: MS_DEF_DSS_PROV
|
||||
"Microsoft Base DSS Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_DEF_DSS_PROV
|
||||
"Microsoft Base DSS Cryptographic Provider"
|
||||
|
||||
: MS_DEF_PROV
|
||||
"Microsoft Base Cryptographic Provider v1.0" ; inline
|
||||
CONSTANT: MS_DEF_PROV
|
||||
"Microsoft Base Cryptographic Provider v1.0"
|
||||
|
||||
: MS_DEF_RSA_SCHANNEL_PROV
|
||||
"Microsoft RSA Schannel Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_DEF_RSA_SCHANNEL_PROV
|
||||
"Microsoft RSA Schannel Cryptographic Provider"
|
||||
|
||||
! Unsupported (!)
|
||||
: MS_DEF_RSA_SIG_PROV
|
||||
"Microsoft RSA Signature Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_DEF_RSA_SIG_PROV
|
||||
"Microsoft RSA Signature Cryptographic Provider"
|
||||
|
||||
: MS_ENH_DSS_DH_PROV
|
||||
"Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_ENH_DSS_DH_PROV
|
||||
"Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider"
|
||||
|
||||
: MS_ENH_RSA_AES_PROV
|
||||
"Microsoft Enhanced RSA and AES Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_ENH_RSA_AES_PROV
|
||||
"Microsoft Enhanced RSA and AES Cryptographic Provider"
|
||||
|
||||
: MS_ENHANCED_PROV
|
||||
"Microsoft Enhanced Cryptographic Provider v1.0" ; inline
|
||||
CONSTANT: MS_ENHANCED_PROV
|
||||
"Microsoft Enhanced Cryptographic Provider v1.0"
|
||||
|
||||
: MS_SCARD_PROV
|
||||
"Microsoft Base Smart Card Crypto Provider" ; inline
|
||||
CONSTANT: MS_SCARD_PROV
|
||||
"Microsoft Base Smart Card Crypto Provider"
|
||||
|
||||
: MS_STRONG_PROV
|
||||
"Microsoft Strong Cryptographic Provider" ; inline
|
||||
CONSTANT: MS_STRONG_PROV
|
||||
"Microsoft Strong Cryptographic Provider"
|
||||
|
||||
: CRYPT_VERIFYCONTEXT HEX: F0000000 ; inline
|
||||
: CRYPT_NEWKEYSET HEX: 8 ; inline
|
||||
: CRYPT_DELETEKEYSET HEX: 10 ; inline
|
||||
: CRYPT_MACHINE_KEYSET HEX: 20 ; inline
|
||||
: CRYPT_SILENT HEX: 40 ; inline
|
||||
CONSTANT: CRYPT_VERIFYCONTEXT HEX: F0000000
|
||||
CONSTANT: CRYPT_NEWKEYSET HEX: 8
|
||||
CONSTANT: CRYPT_DELETEKEYSET HEX: 10
|
||||
CONSTANT: CRYPT_MACHINE_KEYSET HEX: 20
|
||||
CONSTANT: CRYPT_SILENT HEX: 40
|
||||
|
||||
C-STRUCT: ACL
|
||||
{ "BYTE" "AclRevision" }
|
||||
|
@ -70,16 +70,16 @@ C-STRUCT: ACL
|
|||
|
||||
TYPEDEF: ACL* PACL
|
||||
|
||||
: ACCESS_ALLOWED_ACE_TYPE 0 ; inline
|
||||
: ACCESS_DENIED_ACE_TYPE 1 ; inline
|
||||
: SYSTEM_AUDIT_ACE_TYPE 2 ; inline
|
||||
: SYSTEM_ALARM_ACE_TYPE 3 ; inline
|
||||
CONSTANT: ACCESS_ALLOWED_ACE_TYPE 0
|
||||
CONSTANT: ACCESS_DENIED_ACE_TYPE 1
|
||||
CONSTANT: SYSTEM_AUDIT_ACE_TYPE 2
|
||||
CONSTANT: SYSTEM_ALARM_ACE_TYPE 3
|
||||
|
||||
: OBJECT_INHERIT_ACE HEX: 1 ; inline
|
||||
: CONTAINER_INHERIT_ACE HEX: 2 ; inline
|
||||
: NO_PROPAGATE_INHERIT_ACE HEX: 4 ; inline
|
||||
: INHERIT_ONLY_ACE HEX: 8 ; inline
|
||||
: VALID_INHERIT_FLAGS HEX: f ; inline
|
||||
CONSTANT: OBJECT_INHERIT_ACE HEX: 1
|
||||
CONSTANT: CONTAINER_INHERIT_ACE HEX: 2
|
||||
CONSTANT: NO_PROPAGATE_INHERIT_ACE HEX: 4
|
||||
CONSTANT: INHERIT_ONLY_ACE HEX: 8
|
||||
CONSTANT: VALID_INHERIT_FLAGS HEX: f
|
||||
|
||||
C-STRUCT: ACE_HEADER
|
||||
{ "BYTE" "AceType" }
|
||||
|
@ -125,46 +125,46 @@ TYPEDEF: ACCESS_ALLOWED_CALLBACK_ACE* PACCESS_ALLOWED_CALLBACK_ACE
|
|||
|
||||
|
||||
! typedef enum _TOKEN_INFORMATION_CLASS {
|
||||
: TokenUser 1 ; inline
|
||||
: TokenGroups 2 ; inline
|
||||
: TokenPrivileges 3 ; inline
|
||||
: TokenOwner 4 ; inline
|
||||
: TokenPrimaryGroup 5 ; inline
|
||||
: TokenDefaultDacl 6 ; inline
|
||||
: TokenSource 7 ; inline
|
||||
: TokenType 8 ; inline
|
||||
: TokenImpersonationLevel 9 ; inline
|
||||
: TokenStatistics 10 ; inline
|
||||
: TokenRestrictedSids 11 ; inline
|
||||
: TokenSessionId 12 ; inline
|
||||
: TokenGroupsAndPrivileges 13 ; inline
|
||||
: TokenSessionReference 14 ; inline
|
||||
: TokenSandBoxInert 15 ; inline
|
||||
CONSTANT: TokenUser 1
|
||||
CONSTANT: TokenGroups 2
|
||||
CONSTANT: TokenPrivileges 3
|
||||
CONSTANT: TokenOwner 4
|
||||
CONSTANT: TokenPrimaryGroup 5
|
||||
CONSTANT: TokenDefaultDacl 6
|
||||
CONSTANT: TokenSource 7
|
||||
CONSTANT: TokenType 8
|
||||
CONSTANT: TokenImpersonationLevel 9
|
||||
CONSTANT: TokenStatistics 10
|
||||
CONSTANT: TokenRestrictedSids 11
|
||||
CONSTANT: TokenSessionId 12
|
||||
CONSTANT: TokenGroupsAndPrivileges 13
|
||||
CONSTANT: TokenSessionReference 14
|
||||
CONSTANT: TokenSandBoxInert 15
|
||||
! } TOKEN_INFORMATION_CLASS;
|
||||
|
||||
: DELETE HEX: 00010000 ; inline
|
||||
: READ_CONTROL HEX: 00020000 ; inline
|
||||
: WRITE_DAC HEX: 00040000 ; inline
|
||||
: WRITE_OWNER HEX: 00080000 ; inline
|
||||
: SYNCHRONIZE HEX: 00100000 ; inline
|
||||
: STANDARD_RIGHTS_REQUIRED HEX: 000f0000 ; inline
|
||||
CONSTANT: DELETE HEX: 00010000
|
||||
CONSTANT: READ_CONTROL HEX: 00020000
|
||||
CONSTANT: WRITE_DAC HEX: 00040000
|
||||
CONSTANT: WRITE_OWNER HEX: 00080000
|
||||
CONSTANT: SYNCHRONIZE HEX: 00100000
|
||||
CONSTANT: STANDARD_RIGHTS_REQUIRED HEX: 000f0000
|
||||
|
||||
: STANDARD_RIGHTS_READ READ_CONTROL ; inline
|
||||
: STANDARD_RIGHTS_WRITE READ_CONTROL ; inline
|
||||
: STANDARD_RIGHTS_EXECUTE READ_CONTROL ; inline
|
||||
ALIAS: STANDARD_RIGHTS_READ READ_CONTROL
|
||||
ALIAS: STANDARD_RIGHTS_WRITE READ_CONTROL
|
||||
ALIAS: STANDARD_RIGHTS_EXECUTE READ_CONTROL
|
||||
|
||||
: TOKEN_TOKEN_ADJUST_DEFAULT HEX: 0080 ; inline
|
||||
: TOKEN_ADJUST_GROUPS HEX: 0040 ; inline
|
||||
: TOKEN_ADJUST_PRIVILEGES HEX: 0020 ; inline
|
||||
: TOKEN_ADJUST_SESSIONID HEX: 0100 ; inline
|
||||
: TOKEN_ASSIGN_PRIMARY HEX: 0001 ; inline
|
||||
: TOKEN_DUPLICATE HEX: 0002 ; inline
|
||||
: TOKEN_EXECUTE STANDARD_RIGHTS_EXECUTE ; inline
|
||||
: TOKEN_IMPERSONATE HEX: 0004 ; inline
|
||||
: TOKEN_QUERY HEX: 0008 ; inline
|
||||
: TOKEN_QUERY_SOURCE HEX: 0010 ; inline
|
||||
: TOKEN_ADJUST_DEFAULT HEX: 0080 ; inline
|
||||
: TOKEN_READ ( -- n ) STANDARD_RIGHTS_READ TOKEN_QUERY bitor ;
|
||||
CONSTANT: TOKEN_TOKEN_ADJUST_DEFAULT HEX: 0080
|
||||
CONSTANT: TOKEN_ADJUST_GROUPS HEX: 0040
|
||||
CONSTANT: TOKEN_ADJUST_PRIVILEGES HEX: 0020
|
||||
CONSTANT: TOKEN_ADJUST_SESSIONID HEX: 0100
|
||||
CONSTANT: TOKEN_ASSIGN_PRIMARY HEX: 0001
|
||||
CONSTANT: TOKEN_DUPLICATE HEX: 0002
|
||||
ALIAS: TOKEN_EXECUTE STANDARD_RIGHTS_EXECUTE
|
||||
CONSTANT: TOKEN_IMPERSONATE HEX: 0004
|
||||
CONSTANT: TOKEN_QUERY HEX: 0008
|
||||
CONSTANT: TOKEN_QUERY_SOURCE HEX: 0010
|
||||
CONSTANT: TOKEN_ADJUST_DEFAULT HEX: 0080
|
||||
: TOKEN_READ ( -- n ) { STANDARD_RIGHTS_READ TOKEN_QUERY } flags ;
|
||||
|
||||
: TOKEN_WRITE ( -- n )
|
||||
{
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
USING: windows.kernel32 windows.ole32 windows.com windows.com.syntax
|
||||
alien alien.c-types alien.syntax kernel system namespaces math ;
|
||||
alien alien.c-types alien.syntax kernel system namespaces math constants
|
||||
alias ;
|
||||
IN: windows.dinput
|
||||
|
||||
<<
|
||||
|
@ -384,314 +385,314 @@ COM-INTERFACE: IDirectInput8W IUnknown {BF798031-483A-4DA2-AA99-5D64ED369700}
|
|||
|
||||
FUNCTION: HRESULT DirectInput8Create ( HINSTANCE hinst, DWORD dwVersion, REFIID riidtlf, LPVOID* ppvOut, LPUNKNOWN punkOuter ) ;
|
||||
|
||||
: DIRECTINPUT_VERSION HEX: 0800 ; inline
|
||||
CONSTANT: DIRECTINPUT_VERSION HEX: 0800
|
||||
|
||||
CONSTANT: DI8DEVCLASS_ALL 0
|
||||
CONSTANT: DI8DEVCLASS_DEVICE 1
|
||||
CONSTANT: DI8DEVCLASS_POINTER 2
|
||||
CONSTANT: DI8DEVCLASS_KEYBOARD 3
|
||||
CONSTANT: DI8DEVCLASS_GAMECTRL 4
|
||||
|
||||
: DI8DEVCLASS_ALL 0 ; inline
|
||||
: DI8DEVCLASS_DEVICE 1 ; inline
|
||||
: DI8DEVCLASS_POINTER 2 ; inline
|
||||
: DI8DEVCLASS_KEYBOARD 3 ; inline
|
||||
: DI8DEVCLASS_GAMECTRL 4 ; inline
|
||||
CONSTANT: DIEDFL_ALLDEVICES HEX: 00000000
|
||||
CONSTANT: DIEDFL_ATTACHEDONLY HEX: 00000001
|
||||
CONSTANT: DIEDFL_FORCEFEEDBACK HEX: 00000100
|
||||
CONSTANT: DIEDFL_INCLUDEALIASES HEX: 00010000
|
||||
CONSTANT: DIEDFL_INCLUDEPHANTOMS HEX: 00020000
|
||||
CONSTANT: DIEDFL_INCLUDEHIDDEN HEX: 00040000
|
||||
|
||||
CONSTANT: DIENUM_STOP 0
|
||||
CONSTANT: DIENUM_CONTINUE 1
|
||||
|
||||
: DIEDFL_ALLDEVICES HEX: 00000000 ; inline
|
||||
: DIEDFL_ATTACHEDONLY HEX: 00000001 ; inline
|
||||
: DIEDFL_FORCEFEEDBACK HEX: 00000100 ; inline
|
||||
: DIEDFL_INCLUDEALIASES HEX: 00010000 ; inline
|
||||
: DIEDFL_INCLUDEPHANTOMS HEX: 00020000 ; inline
|
||||
: DIEDFL_INCLUDEHIDDEN HEX: 00040000 ; inline
|
||||
CONSTANT: DIDF_ABSAXIS 1
|
||||
CONSTANT: DIDF_RELAXIS 2
|
||||
|
||||
: DIENUM_STOP 0 ; inline
|
||||
: DIENUM_CONTINUE 1 ; inline
|
||||
|
||||
: DIDF_ABSAXIS 1 ;
|
||||
: DIDF_RELAXIS 2 ;
|
||||
|
||||
: DIDFT_ALL HEX: 00000000 ; inline
|
||||
|
||||
: DIDFT_RELAXIS HEX: 00000001 ; inline
|
||||
: DIDFT_ABSAXIS HEX: 00000002 ; inline
|
||||
: DIDFT_AXIS HEX: 00000003 ; inline
|
||||
|
||||
: DIDFT_PSHBUTTON HEX: 00000004 ; inline
|
||||
: DIDFT_TGLBUTTON HEX: 00000008 ; inline
|
||||
: DIDFT_BUTTON HEX: 0000000C ; inline
|
||||
|
||||
: DIDFT_POV HEX: 00000010 ; inline
|
||||
: DIDFT_COLLECTION HEX: 00000040 ; inline
|
||||
: DIDFT_NODATA HEX: 00000080 ; inline
|
||||
|
||||
: DIDFT_ANYINSTANCE HEX: 00FFFF00 ; inline
|
||||
: DIDFT_INSTANCEMASK DIDFT_ANYINSTANCE ; inline
|
||||
CONSTANT: DIDFT_ALL HEX: 00000000
|
||||
|
||||
CONSTANT: DIDFT_RELAXIS HEX: 00000001
|
||||
CONSTANT: DIDFT_ABSAXIS HEX: 00000002
|
||||
CONSTANT: DIDFT_AXIS HEX: 00000003
|
||||
|
||||
CONSTANT: DIDFT_PSHBUTTON HEX: 00000004
|
||||
CONSTANT: DIDFT_TGLBUTTON HEX: 00000008
|
||||
CONSTANT: DIDFT_BUTTON HEX: 0000000C
|
||||
|
||||
CONSTANT: DIDFT_POV HEX: 00000010
|
||||
CONSTANT: DIDFT_COLLECTION HEX: 00000040
|
||||
CONSTANT: DIDFT_NODATA HEX: 00000080
|
||||
|
||||
CONSTANT: DIDFT_ANYINSTANCE HEX: 00FFFF00
|
||||
ALIAS: DIDFT_INSTANCEMASK DIDFT_ANYINSTANCE
|
||||
: DIDFT_MAKEINSTANCE ( n -- instance ) 8 shift ; inline
|
||||
: DIDFT_GETTYPE ( n -- type ) HEX: FF bitand ; inline
|
||||
: DIDFT_GETINSTANCE ( n -- instance ) -8 shift HEX: FFFF bitand ; inline
|
||||
: DIDFT_FFACTUATOR HEX: 01000000 ; inline
|
||||
: DIDFT_FFEFFECTTRIGGER HEX: 02000000 ; inline
|
||||
: DIDFT_OUTPUT HEX: 10000000 ; inline
|
||||
: DIDFT_VENDORDEFINED HEX: 04000000 ; inline
|
||||
: DIDFT_ALIAS HEX: 08000000 ; inline
|
||||
: DIDFT_OPTIONAL HEX: 80000000 ; inline
|
||||
CONSTANT: DIDFT_FFACTUATOR HEX: 01000000
|
||||
CONSTANT: DIDFT_FFEFFECTTRIGGER HEX: 02000000
|
||||
CONSTANT: DIDFT_OUTPUT HEX: 10000000
|
||||
CONSTANT: DIDFT_VENDORDEFINED HEX: 04000000
|
||||
CONSTANT: DIDFT_ALIAS HEX: 08000000
|
||||
CONSTANT: DIDFT_OPTIONAL HEX: 80000000
|
||||
|
||||
: DIDFT_ENUMCOLLECTION ( n -- instance ) 8 shift HEX: FFFF bitand ; inline
|
||||
: DIDFT_NOCOLLECTION HEX: 00FFFF00 ; inline
|
||||
CONSTANT: DIDFT_NOCOLLECTION HEX: 00FFFF00
|
||||
|
||||
: DIDOI_FFACTUATOR HEX: 00000001 ; inline
|
||||
: DIDOI_FFEFFECTTRIGGER HEX: 00000002 ; inline
|
||||
: DIDOI_POLLED HEX: 00008000 ; inline
|
||||
: DIDOI_ASPECTPOSITION HEX: 00000100 ; inline
|
||||
: DIDOI_ASPECTVELOCITY HEX: 00000200 ; inline
|
||||
: DIDOI_ASPECTACCEL HEX: 00000300 ; inline
|
||||
: DIDOI_ASPECTFORCE HEX: 00000400 ; inline
|
||||
: DIDOI_ASPECTMASK HEX: 00000F00 ; inline
|
||||
: DIDOI_GUIDISUSAGE HEX: 00010000 ; inline
|
||||
CONSTANT: DIDOI_FFACTUATOR HEX: 00000001
|
||||
CONSTANT: DIDOI_FFEFFECTTRIGGER HEX: 00000002
|
||||
CONSTANT: DIDOI_POLLED HEX: 00008000
|
||||
CONSTANT: DIDOI_ASPECTPOSITION HEX: 00000100
|
||||
CONSTANT: DIDOI_ASPECTVELOCITY HEX: 00000200
|
||||
CONSTANT: DIDOI_ASPECTACCEL HEX: 00000300
|
||||
CONSTANT: DIDOI_ASPECTFORCE HEX: 00000400
|
||||
CONSTANT: DIDOI_ASPECTMASK HEX: 00000F00
|
||||
CONSTANT: DIDOI_GUIDISUSAGE HEX: 00010000
|
||||
|
||||
: DISCL_EXCLUSIVE HEX: 00000001 ; inline
|
||||
: DISCL_NONEXCLUSIVE HEX: 00000002 ; inline
|
||||
: DISCL_FOREGROUND HEX: 00000004 ; inline
|
||||
: DISCL_BACKGROUND HEX: 00000008 ; inline
|
||||
: DISCL_NOWINKEY HEX: 00000010 ; inline
|
||||
CONSTANT: DISCL_EXCLUSIVE HEX: 00000001
|
||||
CONSTANT: DISCL_NONEXCLUSIVE HEX: 00000002
|
||||
CONSTANT: DISCL_FOREGROUND HEX: 00000004
|
||||
CONSTANT: DISCL_BACKGROUND HEX: 00000008
|
||||
CONSTANT: DISCL_NOWINKEY HEX: 00000010
|
||||
|
||||
: DIK_ESCAPE HEX: 01 ; inline
|
||||
: DIK_1 HEX: 02 ; inline
|
||||
: DIK_2 HEX: 03 ; inline
|
||||
: DIK_3 HEX: 04 ; inline
|
||||
: DIK_4 HEX: 05 ; inline
|
||||
: DIK_5 HEX: 06 ; inline
|
||||
: DIK_6 HEX: 07 ; inline
|
||||
: DIK_7 HEX: 08 ; inline
|
||||
: DIK_8 HEX: 09 ; inline
|
||||
: DIK_9 HEX: 0A ; inline
|
||||
: DIK_0 HEX: 0B ; inline
|
||||
: DIK_MINUS HEX: 0C ; inline
|
||||
: DIK_EQUALS HEX: 0D ; inline
|
||||
: DIK_BACK HEX: 0E ; inline
|
||||
: DIK_TAB HEX: 0F ; inline
|
||||
: DIK_Q HEX: 10 ; inline
|
||||
: DIK_W HEX: 11 ; inline
|
||||
: DIK_E HEX: 12 ; inline
|
||||
: DIK_R HEX: 13 ; inline
|
||||
: DIK_T HEX: 14 ; inline
|
||||
: DIK_Y HEX: 15 ; inline
|
||||
: DIK_U HEX: 16 ; inline
|
||||
: DIK_I HEX: 17 ; inline
|
||||
: DIK_O HEX: 18 ; inline
|
||||
: DIK_P HEX: 19 ; inline
|
||||
: DIK_LBRACKET HEX: 1A ; inline
|
||||
: DIK_RBRACKET HEX: 1B ; inline
|
||||
: DIK_RETURN HEX: 1C ; inline
|
||||
: DIK_LCONTROL HEX: 1D ; inline
|
||||
: DIK_A HEX: 1E ; inline
|
||||
: DIK_S HEX: 1F ; inline
|
||||
: DIK_D HEX: 20 ; inline
|
||||
: DIK_F HEX: 21 ; inline
|
||||
: DIK_G HEX: 22 ; inline
|
||||
: DIK_H HEX: 23 ; inline
|
||||
: DIK_J HEX: 24 ; inline
|
||||
: DIK_K HEX: 25 ; inline
|
||||
: DIK_L HEX: 26 ; inline
|
||||
: DIK_SEMICOLON HEX: 27 ; inline
|
||||
: DIK_APOSTROPHE HEX: 28 ; inline
|
||||
: DIK_GRAVE HEX: 29 ; inline
|
||||
: DIK_LSHIFT HEX: 2A ; inline
|
||||
: DIK_BACKSLASH HEX: 2B ; inline
|
||||
: DIK_Z HEX: 2C ; inline
|
||||
: DIK_X HEX: 2D ; inline
|
||||
: DIK_C HEX: 2E ; inline
|
||||
: DIK_V HEX: 2F ; inline
|
||||
: DIK_B HEX: 30 ; inline
|
||||
: DIK_N HEX: 31 ; inline
|
||||
: DIK_M HEX: 32 ; inline
|
||||
: DIK_COMMA HEX: 33 ; inline
|
||||
: DIK_PERIOD HEX: 34 ; inline
|
||||
: DIK_SLASH HEX: 35 ; inline
|
||||
: DIK_RSHIFT HEX: 36 ; inline
|
||||
: DIK_MULTIPLY HEX: 37 ; inline
|
||||
: DIK_LMENU HEX: 38 ; inline
|
||||
: DIK_SPACE HEX: 39 ; inline
|
||||
: DIK_CAPITAL HEX: 3A ; inline
|
||||
: DIK_F1 HEX: 3B ; inline
|
||||
: DIK_F2 HEX: 3C ; inline
|
||||
: DIK_F3 HEX: 3D ; inline
|
||||
: DIK_F4 HEX: 3E ; inline
|
||||
: DIK_F5 HEX: 3F ; inline
|
||||
: DIK_F6 HEX: 40 ; inline
|
||||
: DIK_F7 HEX: 41 ; inline
|
||||
: DIK_F8 HEX: 42 ; inline
|
||||
: DIK_F9 HEX: 43 ; inline
|
||||
: DIK_F10 HEX: 44 ; inline
|
||||
: DIK_NUMLOCK HEX: 45 ; inline
|
||||
: DIK_SCROLL HEX: 46 ; inline
|
||||
: DIK_NUMPAD7 HEX: 47 ; inline
|
||||
: DIK_NUMPAD8 HEX: 48 ; inline
|
||||
: DIK_NUMPAD9 HEX: 49 ; inline
|
||||
: DIK_SUBTRACT HEX: 4A ; inline
|
||||
: DIK_NUMPAD4 HEX: 4B ; inline
|
||||
: DIK_NUMPAD5 HEX: 4C ; inline
|
||||
: DIK_NUMPAD6 HEX: 4D ; inline
|
||||
: DIK_ADD HEX: 4E ; inline
|
||||
: DIK_NUMPAD1 HEX: 4F ; inline
|
||||
: DIK_NUMPAD2 HEX: 50 ; inline
|
||||
: DIK_NUMPAD3 HEX: 51 ; inline
|
||||
: DIK_NUMPAD0 HEX: 52 ; inline
|
||||
: DIK_DECIMAL HEX: 53 ; inline
|
||||
: DIK_OEM_102 HEX: 56 ; inline
|
||||
: DIK_F11 HEX: 57 ; inline
|
||||
: DIK_F12 HEX: 58 ; inline
|
||||
: DIK_F13 HEX: 64 ; inline
|
||||
: DIK_F14 HEX: 65 ; inline
|
||||
: DIK_F15 HEX: 66 ; inline
|
||||
: DIK_KANA HEX: 70 ; inline
|
||||
: DIK_ABNT_C1 HEX: 73 ; inline
|
||||
: DIK_CONVERT HEX: 79 ; inline
|
||||
: DIK_NOCONVERT HEX: 7B ; inline
|
||||
: DIK_YEN HEX: 7D ; inline
|
||||
: DIK_ABNT_C2 HEX: 7E ; inline
|
||||
: DIK_NUMPADEQUALS HEX: 8D ; inline
|
||||
: DIK_PREVTRACK HEX: 90 ; inline
|
||||
: DIK_AT HEX: 91 ; inline
|
||||
: DIK_COLON HEX: 92 ; inline
|
||||
: DIK_UNDERLINE HEX: 93 ; inline
|
||||
: DIK_KANJI HEX: 94 ; inline
|
||||
: DIK_STOP HEX: 95 ; inline
|
||||
: DIK_AX HEX: 96 ; inline
|
||||
: DIK_UNLABELED HEX: 97 ; inline
|
||||
: DIK_NEXTTRACK HEX: 99 ; inline
|
||||
: DIK_NUMPADENTER HEX: 9C ; inline
|
||||
: DIK_RCONTROL HEX: 9D ; inline
|
||||
: DIK_MUTE HEX: A0 ; inline
|
||||
: DIK_CALCULATOR HEX: A1 ; inline
|
||||
: DIK_PLAYPAUSE HEX: A2 ; inline
|
||||
: DIK_MEDIASTOP HEX: A4 ; inline
|
||||
: DIK_VOLUMEDOWN HEX: AE ; inline
|
||||
: DIK_VOLUMEUP HEX: B0 ; inline
|
||||
: DIK_WEBHOME HEX: B2 ; inline
|
||||
: DIK_NUMPADCOMMA HEX: B3 ; inline
|
||||
: DIK_DIVIDE HEX: B5 ; inline
|
||||
: DIK_SYSRQ HEX: B7 ; inline
|
||||
: DIK_RMENU HEX: B8 ; inline
|
||||
: DIK_PAUSE HEX: C5 ; inline
|
||||
: DIK_HOME HEX: C7 ; inline
|
||||
: DIK_UP HEX: C8 ; inline
|
||||
: DIK_PRIOR HEX: C9 ; inline
|
||||
: DIK_LEFT HEX: CB ; inline
|
||||
: DIK_RIGHT HEX: CD ; inline
|
||||
: DIK_END HEX: CF ; inline
|
||||
: DIK_DOWN HEX: D0 ; inline
|
||||
: DIK_NEXT HEX: D1 ; inline
|
||||
: DIK_INSERT HEX: D2 ; inline
|
||||
: DIK_DELETE HEX: D3 ; inline
|
||||
: DIK_LWIN HEX: DB ; inline
|
||||
: DIK_RWIN HEX: DC ; inline
|
||||
: DIK_APPS HEX: DD ; inline
|
||||
: DIK_POWER HEX: DE ; inline
|
||||
: DIK_SLEEP HEX: DF ; inline
|
||||
: DIK_WAKE HEX: E3 ; inline
|
||||
: DIK_WEBSEARCH HEX: E5 ; inline
|
||||
: DIK_WEBFAVORITES HEX: E6 ; inline
|
||||
: DIK_WEBREFRESH HEX: E7 ; inline
|
||||
: DIK_WEBSTOP HEX: E8 ; inline
|
||||
: DIK_WEBFORWARD HEX: E9 ; inline
|
||||
: DIK_WEBBACK HEX: EA ; inline
|
||||
: DIK_MYCOMPUTER HEX: EB ; inline
|
||||
: DIK_MAIL HEX: EC ; inline
|
||||
: DIK_MEDIASELECT HEX: ED ; inline
|
||||
CONSTANT: DIK_ESCAPE HEX: 01
|
||||
CONSTANT: DIK_1 HEX: 02
|
||||
CONSTANT: DIK_2 HEX: 03
|
||||
CONSTANT: DIK_3 HEX: 04
|
||||
CONSTANT: DIK_4 HEX: 05
|
||||
CONSTANT: DIK_5 HEX: 06
|
||||
CONSTANT: DIK_6 HEX: 07
|
||||
CONSTANT: DIK_7 HEX: 08
|
||||
CONSTANT: DIK_8 HEX: 09
|
||||
CONSTANT: DIK_9 HEX: 0A
|
||||
CONSTANT: DIK_0 HEX: 0B
|
||||
CONSTANT: DIK_MINUS HEX: 0C
|
||||
CONSTANT: DIK_EQUALS HEX: 0D
|
||||
CONSTANT: DIK_BACK HEX: 0E
|
||||
CONSTANT: DIK_TAB HEX: 0F
|
||||
CONSTANT: DIK_Q HEX: 10
|
||||
CONSTANT: DIK_W HEX: 11
|
||||
CONSTANT: DIK_E HEX: 12
|
||||
CONSTANT: DIK_R HEX: 13
|
||||
CONSTANT: DIK_T HEX: 14
|
||||
CONSTANT: DIK_Y HEX: 15
|
||||
CONSTANT: DIK_U HEX: 16
|
||||
CONSTANT: DIK_I HEX: 17
|
||||
CONSTANT: DIK_O HEX: 18
|
||||
CONSTANT: DIK_P HEX: 19
|
||||
CONSTANT: DIK_LBRACKET HEX: 1A
|
||||
CONSTANT: DIK_RBRACKET HEX: 1B
|
||||
CONSTANT: DIK_RETURN HEX: 1C
|
||||
CONSTANT: DIK_LCONTROL HEX: 1D
|
||||
CONSTANT: DIK_A HEX: 1E
|
||||
CONSTANT: DIK_S HEX: 1F
|
||||
CONSTANT: DIK_D HEX: 20
|
||||
CONSTANT: DIK_F HEX: 21
|
||||
CONSTANT: DIK_G HEX: 22
|
||||
CONSTANT: DIK_H HEX: 23
|
||||
CONSTANT: DIK_J HEX: 24
|
||||
CONSTANT: DIK_K HEX: 25
|
||||
CONSTANT: DIK_L HEX: 26
|
||||
CONSTANT: DIK_SEMICOLON HEX: 27
|
||||
CONSTANT: DIK_APOSTROPHE HEX: 28
|
||||
CONSTANT: DIK_GRAVE HEX: 29
|
||||
CONSTANT: DIK_LSHIFT HEX: 2A
|
||||
CONSTANT: DIK_BACKSLASH HEX: 2B
|
||||
CONSTANT: DIK_Z HEX: 2C
|
||||
CONSTANT: DIK_X HEX: 2D
|
||||
CONSTANT: DIK_C HEX: 2E
|
||||
CONSTANT: DIK_V HEX: 2F
|
||||
CONSTANT: DIK_B HEX: 30
|
||||
CONSTANT: DIK_N HEX: 31
|
||||
CONSTANT: DIK_M HEX: 32
|
||||
CONSTANT: DIK_COMMA HEX: 33
|
||||
CONSTANT: DIK_PERIOD HEX: 34
|
||||
CONSTANT: DIK_SLASH HEX: 35
|
||||
CONSTANT: DIK_RSHIFT HEX: 36
|
||||
CONSTANT: DIK_MULTIPLY HEX: 37
|
||||
CONSTANT: DIK_LMENU HEX: 38
|
||||
CONSTANT: DIK_SPACE HEX: 39
|
||||
CONSTANT: DIK_CAPITAL HEX: 3A
|
||||
CONSTANT: DIK_F1 HEX: 3B
|
||||
CONSTANT: DIK_F2 HEX: 3C
|
||||
CONSTANT: DIK_F3 HEX: 3D
|
||||
CONSTANT: DIK_F4 HEX: 3E
|
||||
CONSTANT: DIK_F5 HEX: 3F
|
||||
CONSTANT: DIK_F6 HEX: 40
|
||||
CONSTANT: DIK_F7 HEX: 41
|
||||
CONSTANT: DIK_F8 HEX: 42
|
||||
CONSTANT: DIK_F9 HEX: 43
|
||||
CONSTANT: DIK_F10 HEX: 44
|
||||
CONSTANT: DIK_NUMLOCK HEX: 45
|
||||
CONSTANT: DIK_SCROLL HEX: 46
|
||||
CONSTANT: DIK_NUMPAD7 HEX: 47
|
||||
CONSTANT: DIK_NUMPAD8 HEX: 48
|
||||
CONSTANT: DIK_NUMPAD9 HEX: 49
|
||||
CONSTANT: DIK_SUBTRACT HEX: 4A
|
||||
CONSTANT: DIK_NUMPAD4 HEX: 4B
|
||||
CONSTANT: DIK_NUMPAD5 HEX: 4C
|
||||
CONSTANT: DIK_NUMPAD6 HEX: 4D
|
||||
CONSTANT: DIK_ADD HEX: 4E
|
||||
CONSTANT: DIK_NUMPAD1 HEX: 4F
|
||||
CONSTANT: DIK_NUMPAD2 HEX: 50
|
||||
CONSTANT: DIK_NUMPAD3 HEX: 51
|
||||
CONSTANT: DIK_NUMPAD0 HEX: 52
|
||||
CONSTANT: DIK_DECIMAL HEX: 53
|
||||
CONSTANT: DIK_OEM_102 HEX: 56
|
||||
CONSTANT: DIK_F11 HEX: 57
|
||||
CONSTANT: DIK_F12 HEX: 58
|
||||
CONSTANT: DIK_F13 HEX: 64
|
||||
CONSTANT: DIK_F14 HEX: 65
|
||||
CONSTANT: DIK_F15 HEX: 66
|
||||
CONSTANT: DIK_KANA HEX: 70
|
||||
CONSTANT: DIK_ABNT_C1 HEX: 73
|
||||
CONSTANT: DIK_CONVERT HEX: 79
|
||||
CONSTANT: DIK_NOCONVERT HEX: 7B
|
||||
CONSTANT: DIK_YEN HEX: 7D
|
||||
CONSTANT: DIK_ABNT_C2 HEX: 7E
|
||||
CONSTANT: DIK_NUMPADEQUALS HEX: 8D
|
||||
CONSTANT: DIK_PREVTRACK HEX: 90
|
||||
CONSTANT: DIK_AT HEX: 91
|
||||
CONSTANT: DIK_COLON HEX: 92
|
||||
CONSTANT: DIK_UNDERLINE HEX: 93
|
||||
CONSTANT: DIK_KANJI HEX: 94
|
||||
CONSTANT: DIK_STOP HEX: 95
|
||||
CONSTANT: DIK_AX HEX: 96
|
||||
CONSTANT: DIK_UNLABELED HEX: 97
|
||||
CONSTANT: DIK_NEXTTRACK HEX: 99
|
||||
CONSTANT: DIK_NUMPADENTER HEX: 9C
|
||||
CONSTANT: DIK_RCONTROL HEX: 9D
|
||||
CONSTANT: DIK_MUTE HEX: A0
|
||||
CONSTANT: DIK_CALCULATOR HEX: A1
|
||||
CONSTANT: DIK_PLAYPAUSE HEX: A2
|
||||
CONSTANT: DIK_MEDIASTOP HEX: A4
|
||||
CONSTANT: DIK_VOLUMEDOWN HEX: AE
|
||||
CONSTANT: DIK_VOLUMEUP HEX: B0
|
||||
CONSTANT: DIK_WEBHOME HEX: B2
|
||||
CONSTANT: DIK_NUMPADCOMMA HEX: B3
|
||||
CONSTANT: DIK_DIVIDE HEX: B5
|
||||
CONSTANT: DIK_SYSRQ HEX: B7
|
||||
CONSTANT: DIK_RMENU HEX: B8
|
||||
CONSTANT: DIK_PAUSE HEX: C5
|
||||
CONSTANT: DIK_HOME HEX: C7
|
||||
CONSTANT: DIK_UP HEX: C8
|
||||
CONSTANT: DIK_PRIOR HEX: C9
|
||||
CONSTANT: DIK_LEFT HEX: CB
|
||||
CONSTANT: DIK_RIGHT HEX: CD
|
||||
CONSTANT: DIK_END HEX: CF
|
||||
CONSTANT: DIK_DOWN HEX: D0
|
||||
CONSTANT: DIK_NEXT HEX: D1
|
||||
CONSTANT: DIK_INSERT HEX: D2
|
||||
CONSTANT: DIK_DELETE HEX: D3
|
||||
CONSTANT: DIK_LWIN HEX: DB
|
||||
CONSTANT: DIK_RWIN HEX: DC
|
||||
CONSTANT: DIK_APPS HEX: DD
|
||||
CONSTANT: DIK_POWER HEX: DE
|
||||
CONSTANT: DIK_SLEEP HEX: DF
|
||||
CONSTANT: DIK_WAKE HEX: E3
|
||||
CONSTANT: DIK_WEBSEARCH HEX: E5
|
||||
CONSTANT: DIK_WEBFAVORITES HEX: E6
|
||||
CONSTANT: DIK_WEBREFRESH HEX: E7
|
||||
CONSTANT: DIK_WEBSTOP HEX: E8
|
||||
CONSTANT: DIK_WEBFORWARD HEX: E9
|
||||
CONSTANT: DIK_WEBBACK HEX: EA
|
||||
CONSTANT: DIK_MYCOMPUTER HEX: EB
|
||||
CONSTANT: DIK_MAIL HEX: EC
|
||||
CONSTANT: DIK_MEDIASELECT HEX: ED
|
||||
|
||||
: DIK_BACKSPACE DIK_BACK ; inline
|
||||
: DIK_NUMPADSTAR DIK_MULTIPLY ; inline
|
||||
: DIK_LALT DIK_LMENU ; inline
|
||||
: DIK_CAPSLOCK DIK_CAPITAL ; inline
|
||||
: DIK_NUMPADMINUS DIK_SUBTRACT ; inline
|
||||
: DIK_NUMPADPLUS DIK_ADD ; inline
|
||||
: DIK_NUMPADPERIOD DIK_DECIMAL ; inline
|
||||
: DIK_NUMPADSLASH DIK_DIVIDE ; inline
|
||||
: DIK_RALT DIK_RMENU ; inline
|
||||
: DIK_UPARROW DIK_UP ; inline
|
||||
: DIK_PGUP DIK_PRIOR ; inline
|
||||
: DIK_LEFTARROW DIK_LEFT ; inline
|
||||
: DIK_RIGHTARROW DIK_RIGHT ; inline
|
||||
: DIK_DOWNARROW DIK_DOWN ; inline
|
||||
: DIK_PGDN DIK_NEXT ; inline
|
||||
ALIAS: DIK_BACKSPACE DIK_BACK
|
||||
ALIAS: DIK_NUMPADSTAR DIK_MULTIPLY
|
||||
ALIAS: DIK_LALT DIK_LMENU
|
||||
ALIAS: DIK_CAPSLOCK DIK_CAPITAL
|
||||
ALIAS: DIK_NUMPADMINUS DIK_SUBTRACT
|
||||
ALIAS: DIK_NUMPADPLUS DIK_ADD
|
||||
ALIAS: DIK_NUMPADPERIOD DIK_DECIMAL
|
||||
ALIAS: DIK_NUMPADSLASH DIK_DIVIDE
|
||||
ALIAS: DIK_RALT DIK_RMENU
|
||||
ALIAS: DIK_UPARROW DIK_UP
|
||||
ALIAS: DIK_PGUP DIK_PRIOR
|
||||
ALIAS: DIK_LEFTARROW DIK_LEFT
|
||||
ALIAS: DIK_RIGHTARROW DIK_RIGHT
|
||||
ALIAS: DIK_DOWNARROW DIK_DOWN
|
||||
ALIAS: DIK_PGDN DIK_NEXT
|
||||
|
||||
: DIK_CIRCUMFLEX DIK_PREVTRACK ; inline
|
||||
ALIAS: DIK_CIRCUMFLEX DIK_PREVTRACK
|
||||
|
||||
: DI8DEVTYPE_DEVICE HEX: 11 ; inline
|
||||
: DI8DEVTYPE_MOUSE HEX: 12 ; inline
|
||||
: DI8DEVTYPE_KEYBOARD HEX: 13 ; inline
|
||||
: DI8DEVTYPE_JOYSTICK HEX: 14 ; inline
|
||||
: DI8DEVTYPE_GAMEPAD HEX: 15 ; inline
|
||||
: DI8DEVTYPE_DRIVING HEX: 16 ; inline
|
||||
: DI8DEVTYPE_FLIGHT HEX: 17 ; inline
|
||||
: DI8DEVTYPE_1STPERSON HEX: 18 ; inline
|
||||
: DI8DEVTYPE_DEVICECTRL HEX: 19 ; inline
|
||||
: DI8DEVTYPE_SCREENPOINTER HEX: 1A ; inline
|
||||
: DI8DEVTYPE_REMOTE HEX: 1B ; inline
|
||||
: DI8DEVTYPE_SUPPLEMENTAL HEX: 1C ; inline
|
||||
CONSTANT: DI8DEVTYPE_DEVICE HEX: 11
|
||||
CONSTANT: DI8DEVTYPE_MOUSE HEX: 12
|
||||
CONSTANT: DI8DEVTYPE_KEYBOARD HEX: 13
|
||||
CONSTANT: DI8DEVTYPE_JOYSTICK HEX: 14
|
||||
CONSTANT: DI8DEVTYPE_GAMEPAD HEX: 15
|
||||
CONSTANT: DI8DEVTYPE_DRIVING HEX: 16
|
||||
CONSTANT: DI8DEVTYPE_FLIGHT HEX: 17
|
||||
CONSTANT: DI8DEVTYPE_1STPERSON HEX: 18
|
||||
CONSTANT: DI8DEVTYPE_DEVICECTRL HEX: 19
|
||||
CONSTANT: DI8DEVTYPE_SCREENPOINTER HEX: 1A
|
||||
CONSTANT: DI8DEVTYPE_REMOTE HEX: 1B
|
||||
CONSTANT: DI8DEVTYPE_SUPPLEMENTAL HEX: 1C
|
||||
|
||||
: GET_DIDEVICE_TYPE ( dwType -- type ) HEX: FF bitand ; inline
|
||||
|
||||
: DIPROPRANGE_NOMIN HEX: 80000000 ; inline
|
||||
: DIPROPRANGE_NOMAX HEX: 7FFFFFFF ; inline
|
||||
: MAXCPOINTSNUM 8 ; inline
|
||||
|
||||
: DIPH_DEVICE 0 ; inline
|
||||
: DIPH_BYOFFSET 1 ; inline
|
||||
: DIPH_BYID 2 ; inline
|
||||
: DIPH_BYUSAGE 3 ; inline
|
||||
CONSTANT: DIPROPRANGE_NOMIN HEX: 80000000
|
||||
CONSTANT: DIPROPRANGE_NOMAX HEX: 7FFFFFFF
|
||||
CONSTANT: MAXCPOINTSNUM 8
|
||||
|
||||
CONSTANT: DIPH_DEVICE 0
|
||||
CONSTANT: DIPH_BYOFFSET 1
|
||||
CONSTANT: DIPH_BYID 2
|
||||
CONSTANT: DIPH_BYUSAGE 3
|
||||
|
||||
: DIMAKEUSAGEDWORD ( UsagePage Usage -- DWORD ) 16 shift bitor ; inline
|
||||
|
||||
: DIPROP_BUFFERSIZE 1 <alien> ; inline
|
||||
: DIPROP_AXISMODE 2 <alien> ; inline
|
||||
: DIPROP_BUFFERSIZE ( -- alien ) 1 <alien> ; inline
|
||||
: DIPROP_AXISMODE ( -- alien ) 2 <alien> ; inline
|
||||
|
||||
: DIPROPAXISMODE_ABS 0 ; inline
|
||||
: DIPROPAXISMODE_REL 1 ; inline
|
||||
CONSTANT: DIPROPAXISMODE_ABS 0
|
||||
CONSTANT: DIPROPAXISMODE_REL 1
|
||||
|
||||
: DIPROP_GRANULARITY ( -- alien ) 3 <alien> ; inline
|
||||
: DIPROP_RANGE ( -- alien ) 4 <alien> ; inline
|
||||
: DIPROP_DEADZONE ( -- alien ) 5 <alien> ; inline
|
||||
: DIPROP_SATURATION ( -- alien ) 6 <alien> ; inline
|
||||
: DIPROP_FFGAIN ( -- alien ) 7 <alien> ; inline
|
||||
: DIPROP_FFLOAD ( -- alien ) 8 <alien> ; inline
|
||||
: DIPROP_AUTOCENTER ( -- alien ) 9 <alien> ; inline
|
||||
|
||||
: DIPROP_GRANULARITY 3 <alien> ; inline
|
||||
: DIPROP_RANGE 4 <alien> ; inline
|
||||
: DIPROP_DEADZONE 5 <alien> ; inline
|
||||
: DIPROP_SATURATION 6 <alien> ; inline
|
||||
: DIPROP_FFGAIN 7 <alien> ; inline
|
||||
: DIPROP_FFLOAD 8 <alien> ; inline
|
||||
: DIPROP_AUTOCENTER 9 <alien> ; inline
|
||||
CONSTANT: DIPROPAUTOCENTER_OFF 0
|
||||
CONSTANT: DIPROPAUTOCENTER_ON 1
|
||||
|
||||
: DIPROPAUTOCENTER_OFF 0 ; inline
|
||||
: DIPROPAUTOCENTER_ON 1 ; inline
|
||||
: DIPROP_CALIBRATIONMODE ( -- alien ) 10 <alien> ; inline
|
||||
|
||||
: DIPROP_CALIBRATIONMODE 10 <alien> ; inline
|
||||
CONSTANT: DIPROPCALIBRATIONMODE_COOKED 0
|
||||
CONSTANT: DIPROPCALIBRATIONMODE_RAW 1
|
||||
|
||||
: DIPROPCALIBRATIONMODE_COOKED 0 ; inline
|
||||
: DIPROPCALIBRATIONMODE_RAW 1 ; inline
|
||||
: DIPROP_CALIBRATION ( -- alien ) 11 <alien> ; inline
|
||||
: DIPROP_GUIDANDPATH ( -- alien ) 12 <alien> ; inline
|
||||
: DIPROP_INSTANCENAME ( -- alien ) 13 <alien> ; inline
|
||||
: DIPROP_PRODUCTNAME ( -- alien ) 14 <alien> ; inline
|
||||
: DIPROP_JOYSTICKID ( -- alien ) 15 <alien> ; inline
|
||||
: DIPROP_GETPORTDISPLAYNAME ( -- alien ) 16 <alien> ; inline
|
||||
: DIPROP_PHYSICALRANGE ( -- alien ) 18 <alien> ; inline
|
||||
: DIPROP_LOGICALRANGE ( -- alien ) 19 <alien> ; inline
|
||||
: DIPROP_KEYNAME ( -- alien ) 20 <alien> ; inline
|
||||
: DIPROP_CPOINTS ( -- alien ) 21 <alien> ; inline
|
||||
: DIPROP_APPDATA ( -- alien ) 22 <alien> ; inline
|
||||
: DIPROP_SCANCODE ( -- alien ) 23 <alien> ; inline
|
||||
: DIPROP_VIDPID ( -- alien ) 24 <alien> ; inline
|
||||
: DIPROP_USERNAME ( -- alien ) 25 <alien> ; inline
|
||||
: DIPROP_TYPENAME ( -- alien ) 26 <alien> ; inline
|
||||
|
||||
: DIPROP_CALIBRATION 11 <alien> ; inline
|
||||
: DIPROP_GUIDANDPATH 12 <alien> ; inline
|
||||
: DIPROP_INSTANCENAME 13 <alien> ; inline
|
||||
: DIPROP_PRODUCTNAME 14 <alien> ; inline
|
||||
: DIPROP_JOYSTICKID 15 <alien> ; inline
|
||||
: DIPROP_GETPORTDISPLAYNAME 16 <alien> ; inline
|
||||
: DIPROP_PHYSICALRANGE 18 <alien> ; inline
|
||||
: DIPROP_LOGICALRANGE 19 <alien> ; inline
|
||||
: DIPROP_KEYNAME 20 <alien> ; inline
|
||||
: DIPROP_CPOINTS 21 <alien> ; inline
|
||||
: DIPROP_APPDATA 22 <alien> ; inline
|
||||
: DIPROP_SCANCODE 23 <alien> ; inline
|
||||
: DIPROP_VIDPID 24 <alien> ; inline
|
||||
: DIPROP_USERNAME 25 <alien> ; inline
|
||||
: DIPROP_TYPENAME 26 <alien> ; inline
|
||||
|
||||
: GUID_XAxis GUID: {A36D02E0-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_YAxis GUID: {A36D02E1-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_ZAxis GUID: {A36D02E2-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_RxAxis GUID: {A36D02F4-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_RyAxis GUID: {A36D02F5-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_RzAxis GUID: {A36D02E3-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_Slider GUID: {A36D02E4-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_Button GUID: {A36D02F0-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_Key GUID: {55728220-D33C-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_POV GUID: {A36D02F2-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_Unknown GUID: {A36D02F3-C9F3-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_SysMouse GUID: {6F1D2B60-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_SysKeyboard GUID: {6F1D2B61-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_Joystick GUID: {6F1D2B70-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_SysMouseEm GUID: {6F1D2B80-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_SysMouseEm2 GUID: {6F1D2B81-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_SysKeyboardEm GUID: {6F1D2B82-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
: GUID_SysKeyboardEm2 GUID: {6F1D2B83-D5A0-11CF-BFC7-444553540000} ; inline
|
||||
CONSTANT: GUID_XAxis GUID: {A36D02E0-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_YAxis GUID: {A36D02E1-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_ZAxis GUID: {A36D02E2-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_RxAxis GUID: {A36D02F4-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_RyAxis GUID: {A36D02F5-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_RzAxis GUID: {A36D02E3-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_Slider GUID: {A36D02E4-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_Button GUID: {A36D02F0-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_Key GUID: {55728220-D33C-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_POV GUID: {A36D02F2-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_Unknown GUID: {A36D02F3-C9F3-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_SysMouse GUID: {6F1D2B60-D5A0-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_SysKeyboard GUID: {6F1D2B61-D5A0-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_Joystick GUID: {6F1D2B70-D5A0-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_SysMouseEm GUID: {6F1D2B80-D5A0-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_SysMouseEm2 GUID: {6F1D2B81-D5A0-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_SysKeyboardEm GUID: {6F1D2B82-D5A0-11CF-BFC7-444553540000}
|
||||
CONSTANT: GUID_SysKeyboardEm2 GUID: {6F1D2B83-D5A0-11CF-BFC7-444553540000}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
USING: kernel ;
|
||||
USING: kernel constants ;
|
||||
IN: windows.errors
|
||||
|
||||
: ERROR_SUCCESS 0 ; inline
|
||||
: ERROR_NO_MORE_FILES 18 ; inline
|
||||
: ERROR_HANDLE_EOF 38 ; inline
|
||||
: ERROR_BROKEN_PIPE 109 ; inline
|
||||
: ERROR_ENVVAR_NOT_FOUND 203 ; inline
|
||||
: ERROR_IO_INCOMPLETE 996 ; inline
|
||||
: ERROR_IO_PENDING 997 ; inline
|
||||
CONSTANT: ERROR_SUCCESS 0
|
||||
CONSTANT: ERROR_NO_MORE_FILES 18
|
||||
CONSTANT: ERROR_HANDLE_EOF 38
|
||||
CONSTANT: ERROR_BROKEN_PIPE 109
|
||||
CONSTANT: ERROR_ENVVAR_NOT_FOUND 203
|
||||
CONSTANT: ERROR_IO_INCOMPLETE 996
|
||||
CONSTANT: ERROR_IO_PENDING 997
|
||||
|
|
|
@ -1,38 +1,38 @@
|
|||
! FUNCTION: AbortDoc
|
||||
! Copyright (C) 2005, 2006 Doug Coleman.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: alien alien.syntax kernel windows.types alias ;
|
||||
USING: alien alien.syntax kernel windows.types alias constants ;
|
||||
IN: windows.gdi32
|
||||
|
||||
! Stock Logical Objects
|
||||
: WHITE_BRUSH 0 ; inline
|
||||
: LTGRAY_BRUSH 1 ; inline
|
||||
: GRAY_BRUSH 2 ; inline
|
||||
: DKGRAY_BRUSH 3 ; inline
|
||||
: BLACK_BRUSH 4 ; inline
|
||||
: NULL_BRUSH 5 ; inline
|
||||
: HOLLOW_BRUSH NULL_BRUSH ; inline
|
||||
: WHITE_PEN 6 ; inline
|
||||
: BLACK_PEN 7 ; inline
|
||||
: NULL_PEN 8 ; inline
|
||||
: OEM_FIXED_FONT 10 ; inline
|
||||
: ANSI_FIXED_FONT 11 ; inline
|
||||
: ANSI_VAR_FONT 12 ; inline
|
||||
: SYSTEM_FONT 13 ; inline
|
||||
: DEVICE_DEFAULT_FONT 14 ; inline
|
||||
: DEFAULT_PALETTE 15 ; inline
|
||||
: SYSTEM_FIXED_FONT 16 ; inline
|
||||
: DEFAULT_GUI_FONT 17 ; inline
|
||||
: DC_BRUSH 18 ; inline
|
||||
: DC_PEN 19 ; inline
|
||||
CONSTANT: WHITE_BRUSH 0
|
||||
CONSTANT: LTGRAY_BRUSH 1
|
||||
CONSTANT: GRAY_BRUSH 2
|
||||
CONSTANT: DKGRAY_BRUSH 3
|
||||
CONSTANT: BLACK_BRUSH 4
|
||||
CONSTANT: NULL_BRUSH 5
|
||||
ALIAS: HOLLOW_BRUSH NULL_BRUSH
|
||||
CONSTANT: WHITE_PEN 6
|
||||
CONSTANT: BLACK_PEN 7
|
||||
CONSTANT: NULL_PEN 8
|
||||
CONSTANT: OEM_FIXED_FONT 10
|
||||
CONSTANT: ANSI_FIXED_FONT 11
|
||||
CONSTANT: ANSI_VAR_FONT 12
|
||||
CONSTANT: SYSTEM_FONT 13
|
||||
CONSTANT: DEVICE_DEFAULT_FONT 14
|
||||
CONSTANT: DEFAULT_PALETTE 15
|
||||
CONSTANT: SYSTEM_FIXED_FONT 16
|
||||
CONSTANT: DEFAULT_GUI_FONT 17
|
||||
CONSTANT: DC_BRUSH 18
|
||||
CONSTANT: DC_PEN 19
|
||||
|
||||
CONSTANT: BI_RGB 0
|
||||
CONSTANT: BI_RLE8 1
|
||||
CONSTANT: BI_RLE4 2
|
||||
CONSTANT: BI_BITFIELDS 3
|
||||
|
||||
: BI_RGB 0 ; inline
|
||||
: BI_RLE8 1 ; inline
|
||||
: BI_RLE4 2 ; inline
|
||||
: BI_BITFIELDS 3 ; inline
|
||||
|
||||
: DIB_RGB_COLORS 0 ; inline
|
||||
: DIB_PAL_COLORS 1 ; inline
|
||||
CONSTANT: DIB_RGB_COLORS 0
|
||||
CONSTANT: DIB_PAL_COLORS 1
|
||||
|
||||
LIBRARY: gdi32
|
||||
|
||||
|
|
|
@ -1,93 +1,93 @@
|
|||
! Copyright (C) 2005, 2006 Doug Coleman.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: alien alien.syntax kernel windows.types alias ;
|
||||
USING: alien alien.syntax kernel windows.types alias constants ;
|
||||
IN: windows.kernel32
|
||||
|
||||
: MAX_PATH 260 ; inline
|
||||
CONSTANT: MAX_PATH 260
|
||||
|
||||
: GHND HEX: 40 ; inline
|
||||
: GMEM_FIXED 0 ; inline
|
||||
: GMEM_MOVEABLE 2 ; inline
|
||||
: GMEM_ZEROINIT HEX: 40 ; inline
|
||||
: GPTR HEX: 40 ; inline
|
||||
CONSTANT: GHND HEX: 40
|
||||
CONSTANT: GMEM_FIXED 0
|
||||
CONSTANT: GMEM_MOVEABLE 2
|
||||
CONSTANT: GMEM_ZEROINIT HEX: 40
|
||||
CONSTANT: GPTR HEX: 40
|
||||
|
||||
: GENERIC_READ HEX: 80000000 ; inline
|
||||
: GENERIC_WRITE HEX: 40000000 ; inline
|
||||
: GENERIC_EXECUTE HEX: 20000000 ; inline
|
||||
: GENERIC_ALL HEX: 10000000 ; inline
|
||||
CONSTANT: GENERIC_READ HEX: 80000000
|
||||
CONSTANT: GENERIC_WRITE HEX: 40000000
|
||||
CONSTANT: GENERIC_EXECUTE HEX: 20000000
|
||||
CONSTANT: GENERIC_ALL HEX: 10000000
|
||||
|
||||
: CREATE_NEW 1 ; inline
|
||||
: CREATE_ALWAYS 2 ; inline
|
||||
: OPEN_EXISTING 3 ; inline
|
||||
: OPEN_ALWAYS 4 ; inline
|
||||
: TRUNCATE_EXISTING 5 ; inline
|
||||
CONSTANT: CREATE_NEW 1
|
||||
CONSTANT: CREATE_ALWAYS 2
|
||||
CONSTANT: OPEN_EXISTING 3
|
||||
CONSTANT: OPEN_ALWAYS 4
|
||||
CONSTANT: TRUNCATE_EXISTING 5
|
||||
|
||||
: FILE_LIST_DIRECTORY HEX: 00000001 ; inline
|
||||
: FILE_READ_DAT HEX: 00000001 ; inline
|
||||
: FILE_ADD_FILE HEX: 00000002 ; inline
|
||||
: FILE_WRITE_DATA HEX: 00000002 ; inline
|
||||
: FILE_ADD_SUBDIRECTORY HEX: 00000004 ; inline
|
||||
: FILE_APPEND_DATA HEX: 00000004 ; inline
|
||||
: FILE_CREATE_PIPE_INSTANCE HEX: 00000004 ; inline
|
||||
: FILE_READ_EA HEX: 00000008 ; inline
|
||||
: FILE_READ_PROPERTIES HEX: 00000008 ; inline
|
||||
: FILE_WRITE_EA HEX: 00000010 ; inline
|
||||
: FILE_WRITE_PROPERTIES HEX: 00000010 ; inline
|
||||
: FILE_EXECUTE HEX: 00000020 ; inline
|
||||
: FILE_TRAVERSE HEX: 00000020 ; inline
|
||||
: FILE_DELETE_CHILD HEX: 00000040 ; inline
|
||||
: FILE_READ_ATTRIBUTES HEX: 00000080 ; inline
|
||||
: FILE_WRITE_ATTRIBUTES HEX: 00000100 ; inline
|
||||
CONSTANT: FILE_LIST_DIRECTORY HEX: 00000001
|
||||
CONSTANT: FILE_READ_DAT HEX: 00000001
|
||||
CONSTANT: FILE_ADD_FILE HEX: 00000002
|
||||
CONSTANT: FILE_WRITE_DATA HEX: 00000002
|
||||
CONSTANT: FILE_ADD_SUBDIRECTORY HEX: 00000004
|
||||
CONSTANT: FILE_APPEND_DATA HEX: 00000004
|
||||
CONSTANT: FILE_CREATE_PIPE_INSTANCE HEX: 00000004
|
||||
CONSTANT: FILE_READ_EA HEX: 00000008
|
||||
CONSTANT: FILE_READ_PROPERTIES HEX: 00000008
|
||||
CONSTANT: FILE_WRITE_EA HEX: 00000010
|
||||
CONSTANT: FILE_WRITE_PROPERTIES HEX: 00000010
|
||||
CONSTANT: FILE_EXECUTE HEX: 00000020
|
||||
CONSTANT: FILE_TRAVERSE HEX: 00000020
|
||||
CONSTANT: FILE_DELETE_CHILD HEX: 00000040
|
||||
CONSTANT: FILE_READ_ATTRIBUTES HEX: 00000080
|
||||
CONSTANT: FILE_WRITE_ATTRIBUTES HEX: 00000100
|
||||
|
||||
: FILE_SHARE_READ 1 ; inline
|
||||
: FILE_SHARE_WRITE 2 ; inline
|
||||
: FILE_SHARE_DELETE 4 ; inline
|
||||
: FILE_SHARE_VALID_FLAGS 7 ; inline
|
||||
CONSTANT: FILE_SHARE_READ 1
|
||||
CONSTANT: FILE_SHARE_WRITE 2
|
||||
CONSTANT: FILE_SHARE_DELETE 4
|
||||
CONSTANT: FILE_SHARE_VALID_FLAGS 7
|
||||
|
||||
: FILE_FLAG_WRITE_THROUGH HEX: 80000000 ; inline
|
||||
: FILE_FLAG_OVERLAPPED HEX: 40000000 ; inline
|
||||
: FILE_FLAG_NO_BUFFERING HEX: 20000000 ; inline
|
||||
: FILE_FLAG_RANDOM_ACCESS HEX: 10000000 ; inline
|
||||
: FILE_FLAG_SEQUENTIAL_SCAN HEX: 08000000 ; inline
|
||||
: FILE_FLAG_DELETE_ON_CLOSE HEX: 04000000 ; inline
|
||||
: FILE_FLAG_BACKUP_SEMANTICS HEX: 02000000 ; inline
|
||||
: FILE_FLAG_POSIX_SEMANTICS HEX: 01000000 ; inline
|
||||
: FILE_FLAG_OPEN_REPARSE_POINT HEX: 00200000 ; inline
|
||||
: FILE_FLAG_OPEN_NO_RECALL HEX: 00100000 ; inline
|
||||
: FILE_FLAG_FIRST_PIPE_INSTANCE HEX: 00080000 ; inline
|
||||
CONSTANT: FILE_FLAG_WRITE_THROUGH HEX: 80000000
|
||||
CONSTANT: FILE_FLAG_OVERLAPPED HEX: 40000000
|
||||
CONSTANT: FILE_FLAG_NO_BUFFERING HEX: 20000000
|
||||
CONSTANT: FILE_FLAG_RANDOM_ACCESS HEX: 10000000
|
||||
CONSTANT: FILE_FLAG_SEQUENTIAL_SCAN HEX: 08000000
|
||||
CONSTANT: FILE_FLAG_DELETE_ON_CLOSE HEX: 04000000
|
||||
CONSTANT: FILE_FLAG_BACKUP_SEMANTICS HEX: 02000000
|
||||
CONSTANT: FILE_FLAG_POSIX_SEMANTICS HEX: 01000000
|
||||
CONSTANT: FILE_FLAG_OPEN_REPARSE_POINT HEX: 00200000
|
||||
CONSTANT: FILE_FLAG_OPEN_NO_RECALL HEX: 00100000
|
||||
CONSTANT: FILE_FLAG_FIRST_PIPE_INSTANCE HEX: 00080000
|
||||
|
||||
: FILE_ATTRIBUTE_READONLY HEX: 00000001 ; inline
|
||||
: FILE_ATTRIBUTE_HIDDEN HEX: 00000002 ; inline
|
||||
: FILE_ATTRIBUTE_SYSTEM HEX: 00000004 ; inline
|
||||
: FILE_ATTRIBUTE_DIRECTORY HEX: 00000010 ; inline
|
||||
: FILE_ATTRIBUTE_ARCHIVE HEX: 00000020 ; inline
|
||||
: FILE_ATTRIBUTE_DEVICE HEX: 00000040 ; inline
|
||||
: FILE_ATTRIBUTE_NORMAL HEX: 00000080 ; inline
|
||||
: FILE_ATTRIBUTE_TEMPORARY HEX: 00000100 ; inline
|
||||
: FILE_ATTRIBUTE_SPARSE_FILE HEX: 00000200 ; inline
|
||||
: FILE_ATTRIBUTE_REPARSE_POINT HEX: 00000400 ; inline
|
||||
: FILE_ATTRIBUTE_COMPRESSED HEX: 00000800 ; inline
|
||||
: FILE_ATTRIBUTE_OFFLINE HEX: 00001000 ; inline
|
||||
: FILE_ATTRIBUTE_NOT_CONTENT_INDEXED HEX: 00002000 ; inline
|
||||
: FILE_ATTRIBUTE_ENCRYPTED HEX: 00004000 ; inline
|
||||
CONSTANT: FILE_ATTRIBUTE_READONLY HEX: 00000001
|
||||
CONSTANT: FILE_ATTRIBUTE_HIDDEN HEX: 00000002
|
||||
CONSTANT: FILE_ATTRIBUTE_SYSTEM HEX: 00000004
|
||||
CONSTANT: FILE_ATTRIBUTE_DIRECTORY HEX: 00000010
|
||||
CONSTANT: FILE_ATTRIBUTE_ARCHIVE HEX: 00000020
|
||||
CONSTANT: FILE_ATTRIBUTE_DEVICE HEX: 00000040
|
||||
CONSTANT: FILE_ATTRIBUTE_NORMAL HEX: 00000080
|
||||
CONSTANT: FILE_ATTRIBUTE_TEMPORARY HEX: 00000100
|
||||
CONSTANT: FILE_ATTRIBUTE_SPARSE_FILE HEX: 00000200
|
||||
CONSTANT: FILE_ATTRIBUTE_REPARSE_POINT HEX: 00000400
|
||||
CONSTANT: FILE_ATTRIBUTE_COMPRESSED HEX: 00000800
|
||||
CONSTANT: FILE_ATTRIBUTE_OFFLINE HEX: 00001000
|
||||
CONSTANT: FILE_ATTRIBUTE_NOT_CONTENT_INDEXED HEX: 00002000
|
||||
CONSTANT: FILE_ATTRIBUTE_ENCRYPTED HEX: 00004000
|
||||
|
||||
: FILE_NOTIFY_CHANGE_FILE HEX: 001 ; inline
|
||||
: FILE_NOTIFY_CHANGE_DIR_NAME HEX: 002 ; inline
|
||||
: FILE_NOTIFY_CHANGE_ATTRIBUTES HEX: 004 ; inline
|
||||
: FILE_NOTIFY_CHANGE_SIZE HEX: 008 ; inline
|
||||
: FILE_NOTIFY_CHANGE_LAST_WRITE HEX: 010 ; inline
|
||||
: FILE_NOTIFY_CHANGE_LAST_ACCESS HEX: 020 ; inline
|
||||
: FILE_NOTIFY_CHANGE_CREATION HEX: 040 ; inline
|
||||
: FILE_NOTIFY_CHANGE_EA HEX: 080 ; inline
|
||||
: FILE_NOTIFY_CHANGE_SECURITY HEX: 100 ; inline
|
||||
: FILE_NOTIFY_CHANGE_FILE_NAME HEX: 200 ; inline
|
||||
: FILE_NOTIFY_CHANGE_ALL HEX: 3ff ; inline
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_FILE HEX: 001
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_DIR_NAME HEX: 002
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_ATTRIBUTES HEX: 004
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_SIZE HEX: 008
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_LAST_WRITE HEX: 010
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_LAST_ACCESS HEX: 020
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_CREATION HEX: 040
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_EA HEX: 080
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_SECURITY HEX: 100
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_FILE_NAME HEX: 200
|
||||
CONSTANT: FILE_NOTIFY_CHANGE_ALL HEX: 3ff
|
||||
|
||||
: FILE_ACTION_ADDED 1 ; inline
|
||||
: FILE_ACTION_REMOVED 2 ; inline
|
||||
: FILE_ACTION_MODIFIED 3 ; inline
|
||||
: FILE_ACTION_RENAMED_OLD_NAME 4 ; inline
|
||||
: FILE_ACTION_RENAMED_NEW_NAME 5 ; inline
|
||||
CONSTANT: FILE_ACTION_ADDED 1
|
||||
CONSTANT: FILE_ACTION_REMOVED 2
|
||||
CONSTANT: FILE_ACTION_MODIFIED 3
|
||||
CONSTANT: FILE_ACTION_RENAMED_OLD_NAME 4
|
||||
CONSTANT: FILE_ACTION_RENAMED_NEW_NAME 5
|
||||
|
||||
C-STRUCT: FILE_NOTIFY_INFORMATION
|
||||
{ "DWORD" "NextEntryOffset" }
|
||||
|
@ -96,107 +96,106 @@ C-STRUCT: FILE_NOTIFY_INFORMATION
|
|||
{ "WCHAR[1]" "FileName" } ;
|
||||
TYPEDEF: FILE_NOTIFY_INFORMATION* PFILE_NOTIFY_INFORMATION
|
||||
|
||||
: STD_INPUT_HANDLE -10 ; inline
|
||||
: STD_OUTPUT_HANDLE -11 ; inline
|
||||
: STD_ERROR_HANDLE -12 ; inline
|
||||
CONSTANT: STD_INPUT_HANDLE -10
|
||||
CONSTANT: STD_OUTPUT_HANDLE -11
|
||||
CONSTANT: STD_ERROR_HANDLE -12
|
||||
|
||||
: INVALID_HANDLE_VALUE -1 <alien> ; inline
|
||||
: INVALID_FILE_SIZE HEX: FFFFFFFF ; inline
|
||||
: INVALID_SET_FILE_POINTER HEX: ffffffff ; inline
|
||||
: INVALID_HANDLE_VALUE ( -- alien ) -1 <alien> ; inline
|
||||
CONSTANT: INVALID_FILE_SIZE HEX: FFFFFFFF
|
||||
CONSTANT: INVALID_SET_FILE_POINTER HEX: ffffffff
|
||||
|
||||
: FILE_BEGIN 0 ; inline
|
||||
: FILE_CURRENT 1 ; inline
|
||||
: FILE_END 2 ; inline
|
||||
CONSTANT: FILE_BEGIN 0
|
||||
CONSTANT: FILE_CURRENT 1
|
||||
CONSTANT: FILE_END 2
|
||||
|
||||
: OF_READ 0 ;
|
||||
: OF_READWRITE 2 ;
|
||||
: OF_WRITE 1 ;
|
||||
: OF_SHARE_COMPAT 0 ;
|
||||
: OF_SHARE_DENY_NONE 64 ;
|
||||
: OF_SHARE_DENY_READ 48 ;
|
||||
: OF_SHARE_DENY_WRITE 32 ;
|
||||
: OF_SHARE_EXCLUSIVE 16 ;
|
||||
: OF_CANCEL 2048 ;
|
||||
: OF_CREATE 4096 ;
|
||||
: OF_DELETE 512 ;
|
||||
: OF_EXIST 16384 ;
|
||||
: OF_PARSE 256 ;
|
||||
: OF_PROMPT 8192 ;
|
||||
: OF_REOPEN 32768 ;
|
||||
: OF_VERIFY 1024 ;
|
||||
CONSTANT: OF_READ 0
|
||||
CONSTANT: OF_READWRITE 2
|
||||
CONSTANT: OF_WRITE 1
|
||||
CONSTANT: OF_SHARE_COMPAT 0
|
||||
CONSTANT: OF_SHARE_DENY_NONE 64
|
||||
CONSTANT: OF_SHARE_DENY_READ 48
|
||||
CONSTANT: OF_SHARE_DENY_WRITE 32
|
||||
CONSTANT: OF_SHARE_EXCLUSIVE 16
|
||||
CONSTANT: OF_CANCEL 2048
|
||||
CONSTANT: OF_CREATE 4096
|
||||
CONSTANT: OF_DELETE 512
|
||||
CONSTANT: OF_EXIST 16384
|
||||
CONSTANT: OF_PARSE 256
|
||||
CONSTANT: OF_PROMPT 8192
|
||||
CONSTANT: OF_REOPEN 32768
|
||||
CONSTANT: OF_VERIFY 1024
|
||||
|
||||
: INFINITE HEX: FFFFFFFF ; inline
|
||||
CONSTANT: INFINITE HEX: FFFFFFFF
|
||||
|
||||
! From C:\cygwin\usr\include\w32api\winbase.h
|
||||
: FILE_TYPE_UNKNOWN 0 ;
|
||||
: FILE_TYPE_DISK 1 ;
|
||||
: FILE_TYPE_CHAR 2 ;
|
||||
: FILE_TYPE_PIPE 3 ;
|
||||
: FILE_TYPE_REMOTE HEX: 8000 ;
|
||||
CONSTANT: FILE_TYPE_UNKNOWN 0
|
||||
CONSTANT: FILE_TYPE_DISK 1
|
||||
CONSTANT: FILE_TYPE_CHAR 2
|
||||
CONSTANT: FILE_TYPE_PIPE 3
|
||||
CONSTANT: FILE_TYPE_REMOTE HEX: 8000
|
||||
|
||||
: TIME_ZONE_ID_UNKNOWN 0 ; inline
|
||||
: TIME_ZONE_ID_STANDARD 1 ; inline
|
||||
: TIME_ZONE_ID_DAYLIGHT 2 ; inline
|
||||
: TIME_ZONE_ID_INVALID HEX: FFFFFFFF ; inline
|
||||
CONSTANT: TIME_ZONE_ID_UNKNOWN 0
|
||||
CONSTANT: TIME_ZONE_ID_STANDARD 1
|
||||
CONSTANT: TIME_ZONE_ID_DAYLIGHT 2
|
||||
CONSTANT: TIME_ZONE_ID_INVALID HEX: FFFFFFFF
|
||||
|
||||
CONSTANT: PF_XMMI64_INSTRUCTIONS_AVAILABLE 10
|
||||
CONSTANT: PF_SSE3_INSTRUCTIONS_AVAILABLE 13
|
||||
|
||||
: PF_XMMI64_INSTRUCTIONS_AVAILABLE 10 ; inline
|
||||
: PF_SSE3_INSTRUCTIONS_AVAILABLE 13 ; inline
|
||||
CONSTANT: MAX_COMPUTERNAME_LENGTH 15
|
||||
CONSTANT: UNLEN 256
|
||||
|
||||
: MAX_COMPUTERNAME_LENGTH 15 ; inline
|
||||
: UNLEN 256 ; inline
|
||||
CONSTANT: PROCESS_TERMINATE HEX: 1
|
||||
CONSTANT: PROCESS_CREATE_THREAD HEX: 2
|
||||
CONSTANT: PROCESS_VM_OPERATION HEX: 8
|
||||
CONSTANT: PROCESS_VM_READ HEX: 10
|
||||
CONSTANT: PROCESS_VM_WRITE HEX: 20
|
||||
CONSTANT: PROCESS_DUP_HANDLE HEX: 40
|
||||
CONSTANT: PROCESS_CREATE_PROCESS HEX: 80
|
||||
CONSTANT: PROCESS_SET_QUOTA HEX: 100
|
||||
CONSTANT: PROCESS_SET_INFORMATION HEX: 200
|
||||
CONSTANT: PROCESS_QUERY_INFORMATION HEX: 400
|
||||
|
||||
: PROCESS_TERMINATE ( -- n ) HEX: 1 ; inline
|
||||
: PROCESS_CREATE_THREAD ( -- n ) HEX: 2 ; inline
|
||||
: PROCESS_VM_OPERATION ( -- n ) HEX: 8 ; inline
|
||||
: PROCESS_VM_READ ( -- n ) HEX: 10 ; inline
|
||||
: PROCESS_VM_WRITE ( -- n ) HEX: 20 ; inline
|
||||
: PROCESS_DUP_HANDLE ( -- n ) HEX: 40 ; inline
|
||||
: PROCESS_CREATE_PROCESS ( -- n ) HEX: 80 ; inline
|
||||
: PROCESS_SET_QUOTA ( -- n ) HEX: 100 ; inline
|
||||
: PROCESS_SET_INFORMATION ( -- n ) HEX: 200 ; inline
|
||||
: PROCESS_QUERY_INFORMATION ( -- n ) HEX: 400 ; inline
|
||||
CONSTANT: MEM_COMMIT HEX: 1000
|
||||
CONSTANT: MEM_RELEASE HEX: 8000
|
||||
|
||||
: MEM_COMMIT ( -- n ) HEX: 1000 ; inline
|
||||
: MEM_RELEASE ( -- n ) HEX: 8000 ; inline
|
||||
CONSTANT: PAGE_NOACCESS 1
|
||||
CONSTANT: PAGE_READONLY 2
|
||||
CONSTANT: PAGE_READWRITE 4
|
||||
CONSTANT: PAGE_WRITECOPY 8
|
||||
CONSTANT: PAGE_EXECUTE HEX: 10
|
||||
CONSTANT: PAGE_EXECUTE_READ HEX: 20
|
||||
CONSTANT: PAGE_EXECUTE_READWRITE HEX: 40
|
||||
CONSTANT: PAGE_EXECUTE_WRITECOPY HEX: 80
|
||||
CONSTANT: PAGE_GUARD HEX: 100
|
||||
CONSTANT: PAGE_NOCACHE HEX: 200
|
||||
|
||||
: PAGE_NOACCESS 1 ; inline
|
||||
: PAGE_READONLY 2 ; inline
|
||||
: PAGE_READWRITE 4 ; inline
|
||||
: PAGE_WRITECOPY 8 ; inline
|
||||
: PAGE_EXECUTE HEX: 10 ; inline
|
||||
: PAGE_EXECUTE_READ HEX: 20 ; inline
|
||||
: PAGE_EXECUTE_READWRITE HEX: 40 ; inline
|
||||
: PAGE_EXECUTE_WRITECOPY HEX: 80 ; inline
|
||||
: PAGE_GUARD HEX: 100 ; inline
|
||||
: PAGE_NOCACHE HEX: 200 ; inline
|
||||
CONSTANT: SEC_BASED HEX: 00200000
|
||||
CONSTANT: SEC_NO_CHANGE HEX: 00400000
|
||||
CONSTANT: SEC_FILE HEX: 00800000
|
||||
CONSTANT: SEC_IMAGE HEX: 01000000
|
||||
CONSTANT: SEC_VLM HEX: 02000000
|
||||
CONSTANT: SEC_RESERVE HEX: 04000000
|
||||
CONSTANT: SEC_COMMIT HEX: 08000000
|
||||
CONSTANT: SEC_NOCACHE HEX: 10000000
|
||||
ALIAS: MEM_IMAGE SEC_IMAGE
|
||||
|
||||
: SEC_BASED HEX: 00200000 ; inline
|
||||
: SEC_NO_CHANGE HEX: 00400000 ; inline
|
||||
: SEC_FILE HEX: 00800000 ; inline
|
||||
: SEC_IMAGE HEX: 01000000 ; inline
|
||||
: SEC_VLM HEX: 02000000 ; inline
|
||||
: SEC_RESERVE HEX: 04000000 ; inline
|
||||
: SEC_COMMIT HEX: 08000000 ; inline
|
||||
: SEC_NOCACHE HEX: 10000000 ; inline
|
||||
: MEM_IMAGE SEC_IMAGE ; inline
|
||||
CONSTANT: ERROR_ALREADY_EXISTS 183
|
||||
|
||||
: ERROR_ALREADY_EXISTS 183 ; inline
|
||||
CONSTANT: FILE_MAP_ALL_ACCESS HEX: f001f
|
||||
CONSTANT: FILE_MAP_READ 4
|
||||
CONSTANT: FILE_MAP_WRITE 2
|
||||
CONSTANT: FILE_MAP_COPY 1
|
||||
|
||||
: FILE_MAP_ALL_ACCESS HEX: f001f ;
|
||||
: FILE_MAP_READ 4 ;
|
||||
: FILE_MAP_WRITE 2 ;
|
||||
: FILE_MAP_COPY 1 ;
|
||||
|
||||
: THREAD_MODE_BACKGROUND_BEGIN HEX: 10000 ; inline
|
||||
: THREAD_MODE_BACKGROUND_END HEX: 20000 ; inline
|
||||
: THREAD_PRIORITY_ABOVE_NORMAL 1 ; inline
|
||||
: THREAD_PRIORITY_BELOW_NORMAL -1 ; inline
|
||||
: THREAD_PRIORITY_HIGHEST 2 ; inline
|
||||
: THREAD_PRIORITY_IDLE -15 ; inline
|
||||
: THREAD_PRIORITY_LOWEST -2 ; inline
|
||||
: THREAD_PRIORITY_NORMAL 0 ; inline
|
||||
: THREAD_PRIORITY_TIME_CRITICAL 15 ; inline
|
||||
CONSTANT: THREAD_MODE_BACKGROUND_BEGIN HEX: 10000
|
||||
CONSTANT: THREAD_MODE_BACKGROUND_END HEX: 20000
|
||||
CONSTANT: THREAD_PRIORITY_ABOVE_NORMAL 1
|
||||
CONSTANT: THREAD_PRIORITY_BELOW_NORMAL -1
|
||||
CONSTANT: THREAD_PRIORITY_HIGHEST 2
|
||||
CONSTANT: THREAD_PRIORITY_IDLE -15
|
||||
CONSTANT: THREAD_PRIORITY_LOWEST -2
|
||||
CONSTANT: THREAD_PRIORITY_NORMAL 0
|
||||
CONSTANT: THREAD_PRIORITY_TIME_CRITICAL 15
|
||||
|
||||
C-STRUCT: OVERLAPPED
|
||||
{ "UINT_PTR" "internal" }
|
||||
|
@ -321,74 +320,74 @@ C-STRUCT: GUID
|
|||
{ { "UCHAR" 8 } "Data4" } ;
|
||||
|
||||
|
||||
: SE_CREATE_TOKEN_NAME "SeCreateTokenPrivilege" ;
|
||||
: SE_ASSIGNPRIMARYTOKEN_NAME "SeAssignPrimaryTokenPrivilege" ;
|
||||
: SE_LOCK_MEMORY_NAME "SeLockMemoryPrivilege" ;
|
||||
: SE_INCREASE_QUOTA_NAME "SeIncreaseQuotaPrivilege" ;
|
||||
: SE_UNSOLICITED_INPUT_NAME "SeUnsolicitedInputPrivilege" ;
|
||||
: SE_MACHINE_ACCOUNT_NAME "SeMachineAccountPrivilege" ;
|
||||
: SE_TCB_NAME "SeTcbPrivilege" ;
|
||||
: SE_SECURITY_NAME "SeSecurityPrivilege" ;
|
||||
: SE_TAKE_OWNERSHIP_NAME "SeTakeOwnershipPrivilege" ;
|
||||
: SE_LOAD_DRIVER_NAME "SeLoadDriverPrivilege" ;
|
||||
: SE_SYSTEM_PROFILE_NAME "SeSystemProfilePrivilege" ;
|
||||
: SE_SYSTEMTIME_NAME "SeSystemtimePrivilege" ;
|
||||
: SE_PROF_SINGLE_PROCESS_NAME "SeProfileSingleProcessPrivilege" ;
|
||||
: SE_INC_BASE_PRIORITY_NAME "SeIncreaseBasePriorityPrivilege" ;
|
||||
: SE_CREATE_PAGEFILE_NAME "SeCreatePagefilePrivilege" ;
|
||||
: SE_CREATE_PERMANENT_NAME "SeCreatePermanentPrivilege" ;
|
||||
: SE_BACKUP_NAME "SeBackupPrivilege" ;
|
||||
: SE_RESTORE_NAME "SeRestorePrivilege" ;
|
||||
: SE_SHUTDOWN_NAME "SeShutdownPrivilege" ;
|
||||
: SE_DEBUG_NAME "SeDebugPrivilege" ;
|
||||
: SE_AUDIT_NAME "SeAuditPrivilege" ;
|
||||
: SE_SYSTEM_ENVIRONMENT_NAME "SeSystemEnvironmentPrivilege" ;
|
||||
: SE_CHANGE_NOTIFY_NAME "SeChangeNotifyPrivilege" ;
|
||||
: SE_REMOTE_SHUTDOWN_NAME "SeRemoteShutdownPrivilege" ;
|
||||
: SE_UNDOCK_NAME "SeUndockPrivilege" ;
|
||||
: SE_ENABLE_DELEGATION_NAME "SeEnableDelegationPrivilege" ;
|
||||
: SE_MANAGE_VOLUME_NAME "SeManageVolumePrivilege" ;
|
||||
: SE_IMPERSONATE_NAME "SeImpersonatePrivilege" ;
|
||||
: SE_CREATE_GLOBAL_NAME "SeCreateGlobalPrivilege" ;
|
||||
CONSTANT: SE_CREATE_TOKEN_NAME "SeCreateTokenPrivilege"
|
||||
CONSTANT: SE_ASSIGNPRIMARYTOKEN_NAME "SeAssignPrimaryTokenPrivilege"
|
||||
CONSTANT: SE_LOCK_MEMORY_NAME "SeLockMemoryPrivilege"
|
||||
CONSTANT: SE_INCREASE_QUOTA_NAME "SeIncreaseQuotaPrivilege"
|
||||
CONSTANT: SE_UNSOLICITED_INPUT_NAME "SeUnsolicitedInputPrivilege"
|
||||
CONSTANT: SE_MACHINE_ACCOUNT_NAME "SeMachineAccountPrivilege"
|
||||
CONSTANT: SE_TCB_NAME "SeTcbPrivilege"
|
||||
CONSTANT: SE_SECURITY_NAME "SeSecurityPrivilege"
|
||||
CONSTANT: SE_TAKE_OWNERSHIP_NAME "SeTakeOwnershipPrivilege"
|
||||
CONSTANT: SE_LOAD_DRIVER_NAME "SeLoadDriverPrivilege"
|
||||
CONSTANT: SE_SYSTEM_PROFILE_NAME "SeSystemProfilePrivilege"
|
||||
CONSTANT: SE_SYSTEMTIME_NAME "SeSystemtimePrivilege"
|
||||
CONSTANT: SE_PROF_SINGLE_PROCESS_NAME "SeProfileSingleProcessPrivilege"
|
||||
CONSTANT: SE_INC_BASE_PRIORITY_NAME "SeIncreaseBasePriorityPrivilege"
|
||||
CONSTANT: SE_CREATE_PAGEFILE_NAME "SeCreatePagefilePrivilege"
|
||||
CONSTANT: SE_CREATE_PERMANENT_NAME "SeCreatePermanentPrivilege"
|
||||
CONSTANT: SE_BACKUP_NAME "SeBackupPrivilege"
|
||||
CONSTANT: SE_RESTORE_NAME "SeRestorePrivilege"
|
||||
CONSTANT: SE_SHUTDOWN_NAME "SeShutdownPrivilege"
|
||||
CONSTANT: SE_DEBUG_NAME "SeDebugPrivilege"
|
||||
CONSTANT: SE_AUDIT_NAME "SeAuditPrivilege"
|
||||
CONSTANT: SE_SYSTEM_ENVIRONMENT_NAME "SeSystemEnvironmentPrivilege"
|
||||
CONSTANT: SE_CHANGE_NOTIFY_NAME "SeChangeNotifyPrivilege"
|
||||
CONSTANT: SE_REMOTE_SHUTDOWN_NAME "SeRemoteShutdownPrivilege"
|
||||
CONSTANT: SE_UNDOCK_NAME "SeUndockPrivilege"
|
||||
CONSTANT: SE_ENABLE_DELEGATION_NAME "SeEnableDelegationPrivilege"
|
||||
CONSTANT: SE_MANAGE_VOLUME_NAME "SeManageVolumePrivilege"
|
||||
CONSTANT: SE_IMPERSONATE_NAME "SeImpersonatePrivilege"
|
||||
CONSTANT: SE_CREATE_GLOBAL_NAME "SeCreateGlobalPrivilege"
|
||||
|
||||
: SE_GROUP_MANDATORY HEX: 00000001 ;
|
||||
: SE_GROUP_ENABLED_BY_DEFAULT HEX: 00000002 ;
|
||||
: SE_GROUP_ENABLED HEX: 00000004 ;
|
||||
: SE_GROUP_OWNER HEX: 00000008 ;
|
||||
: SE_GROUP_USE_FOR_DENY_ONLY HEX: 00000010 ;
|
||||
: SE_GROUP_LOGON_ID HEX: C0000000 ;
|
||||
: SE_GROUP_RESOURCE HEX: 20000000 ;
|
||||
CONSTANT: SE_GROUP_MANDATORY HEX: 00000001
|
||||
CONSTANT: SE_GROUP_ENABLED_BY_DEFAULT HEX: 00000002
|
||||
CONSTANT: SE_GROUP_ENABLED HEX: 00000004
|
||||
CONSTANT: SE_GROUP_OWNER HEX: 00000008
|
||||
CONSTANT: SE_GROUP_USE_FOR_DENY_ONLY HEX: 00000010
|
||||
CONSTANT: SE_GROUP_LOGON_ID HEX: C0000000
|
||||
CONSTANT: SE_GROUP_RESOURCE HEX: 20000000
|
||||
|
||||
: SE_PRIVILEGE_ENABLED_BY_DEFAULT HEX: 00000001 ;
|
||||
: SE_PRIVILEGE_ENABLED HEX: 00000002 ;
|
||||
: SE_PRIVILEGE_REMOVE HEX: 00000004 ;
|
||||
: SE_PRIVILEGE_USED_FOR_ACCESS HEX: 80000000 ;
|
||||
CONSTANT: SE_PRIVILEGE_ENABLED_BY_DEFAULT HEX: 00000001
|
||||
CONSTANT: SE_PRIVILEGE_ENABLED HEX: 00000002
|
||||
CONSTANT: SE_PRIVILEGE_REMOVE HEX: 00000004
|
||||
CONSTANT: SE_PRIVILEGE_USED_FOR_ACCESS HEX: 80000000
|
||||
|
||||
: PRIVILEGE_SET_ALL_NECESSARY 1 ;
|
||||
CONSTANT: PRIVILEGE_SET_ALL_NECESSARY 1
|
||||
|
||||
: SE_OWNER_DEFAULTED HEX: 00000001 ;
|
||||
: SE_GROUP_DEFAULTED HEX: 00000002 ;
|
||||
: SE_DACL_PRESENT HEX: 00000004 ;
|
||||
: SE_DACL_DEFAULTED HEX: 00000008 ;
|
||||
: SE_SACL_PRESENT HEX: 00000010 ;
|
||||
: SE_SACL_DEFAULTED HEX: 00000020 ;
|
||||
: SE_DACL_AUTO_INHERIT_REQ HEX: 00000100 ;
|
||||
: SE_SACL_AUTO_INHERIT_REQ HEX: 00000200 ;
|
||||
: SE_DACL_AUTO_INHERITED HEX: 00000400 ;
|
||||
: SE_SACL_AUTO_INHERITED HEX: 00000800 ;
|
||||
: SE_DACL_PROTECTED HEX: 00001000 ;
|
||||
: SE_SACL_PROTECTED HEX: 00002000 ;
|
||||
: SE_SELF_RELATIVE HEX: 00008000 ;
|
||||
CONSTANT: SE_OWNER_DEFAULTED HEX: 00000001
|
||||
CONSTANT: SE_GROUP_DEFAULTED HEX: 00000002
|
||||
CONSTANT: SE_DACL_PRESENT HEX: 00000004
|
||||
CONSTANT: SE_DACL_DEFAULTED HEX: 00000008
|
||||
CONSTANT: SE_SACL_PRESENT HEX: 00000010
|
||||
CONSTANT: SE_SACL_DEFAULTED HEX: 00000020
|
||||
CONSTANT: SE_DACL_AUTO_INHERIT_REQ HEX: 00000100
|
||||
CONSTANT: SE_SACL_AUTO_INHERIT_REQ HEX: 00000200
|
||||
CONSTANT: SE_DACL_AUTO_INHERITED HEX: 00000400
|
||||
CONSTANT: SE_SACL_AUTO_INHERITED HEX: 00000800
|
||||
CONSTANT: SE_DACL_PROTECTED HEX: 00001000
|
||||
CONSTANT: SE_SACL_PROTECTED HEX: 00002000
|
||||
CONSTANT: SE_SELF_RELATIVE HEX: 00008000
|
||||
|
||||
: ANYSIZE_ARRAY 1 ; inline
|
||||
CONSTANT: ANYSIZE_ARRAY 1
|
||||
|
||||
: MAXIMUM_WAIT_OBJECTS 64 ; inline
|
||||
: MAXIMUM_SUSPEND_COUNT HEX: 7f ; inline
|
||||
: WAIT_OBJECT_0 0 ; inline
|
||||
: WAIT_ABANDONED_0 128 ; inline
|
||||
: WAIT_TIMEOUT 258 ; inline
|
||||
: WAIT_IO_COMPLETION HEX: c0 ; inline
|
||||
: WAIT_FAILED HEX: ffffffff ; inline
|
||||
CONSTANT: MAXIMUM_WAIT_OBJECTS 64
|
||||
CONSTANT: MAXIMUM_SUSPEND_COUNT HEX: 7f
|
||||
CONSTANT: WAIT_OBJECT_0 0
|
||||
CONSTANT: WAIT_ABANDONED_0 128
|
||||
CONSTANT: WAIT_TIMEOUT 258
|
||||
CONSTANT: WAIT_IO_COMPLETION HEX: c0
|
||||
CONSTANT: WAIT_FAILED HEX: ffffffff
|
||||
|
||||
C-STRUCT: LUID
|
||||
{ "DWORD" "LowPart" }
|
||||
|
@ -427,7 +426,7 @@ C-STRUCT: BY_HANDLE_FILE_INFORMATION
|
|||
{ "DWORD" "nFileIndexLow" } ;
|
||||
TYPEDEF: BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION
|
||||
|
||||
: OFS_MAXPATHNAME 128 ;
|
||||
CONSTANT: OFS_MAXPATHNAME 128
|
||||
|
||||
C-STRUCT: OFSTRUCT
|
||||
{ "BYTE" "cBytes" }
|
||||
|
@ -489,34 +488,34 @@ C-STRUCT: SECURITY_ATTRIBUTES
|
|||
{ "LPVOID" "lpSecurityDescriptor" }
|
||||
{ "BOOL" "bInheritHandle" } ;
|
||||
|
||||
: HANDLE_FLAG_INHERIT 1 ; inline
|
||||
: HANDLE_FLAG_PROTECT_FROM_CLOSE 2 ; inline
|
||||
CONSTANT: HANDLE_FLAG_INHERIT 1
|
||||
CONSTANT: HANDLE_FLAG_PROTECT_FROM_CLOSE 2
|
||||
|
||||
: STARTF_USESHOWWINDOW HEX: 00000001 ; inline
|
||||
: STARTF_USESIZE HEX: 00000002 ; inline
|
||||
: STARTF_USEPOSITION HEX: 00000004 ; inline
|
||||
: STARTF_USECOUNTCHARS HEX: 00000008 ; inline
|
||||
: STARTF_USEFILLATTRIBUTE HEX: 00000010 ; inline
|
||||
: STARTF_RUNFULLSCREEN HEX: 00000020 ; inline
|
||||
: STARTF_FORCEONFEEDBACK HEX: 00000040 ; inline
|
||||
: STARTF_FORCEOFFFEEDBACK HEX: 00000080 ; inline
|
||||
: STARTF_USESTDHANDLES HEX: 00000100 ; inline
|
||||
: STARTF_USEHOTKEY HEX: 00000200 ; inline
|
||||
CONSTANT: STARTF_USESHOWWINDOW HEX: 00000001
|
||||
CONSTANT: STARTF_USESIZE HEX: 00000002
|
||||
CONSTANT: STARTF_USEPOSITION HEX: 00000004
|
||||
CONSTANT: STARTF_USECOUNTCHARS HEX: 00000008
|
||||
CONSTANT: STARTF_USEFILLATTRIBUTE HEX: 00000010
|
||||
CONSTANT: STARTF_RUNFULLSCREEN HEX: 00000020
|
||||
CONSTANT: STARTF_FORCEONFEEDBACK HEX: 00000040
|
||||
CONSTANT: STARTF_FORCEOFFFEEDBACK HEX: 00000080
|
||||
CONSTANT: STARTF_USESTDHANDLES HEX: 00000100
|
||||
CONSTANT: STARTF_USEHOTKEY HEX: 00000200
|
||||
|
||||
: PIPE_ACCESS_INBOUND 1 ; inline
|
||||
: PIPE_ACCESS_OUTBOUND 2 ; inline
|
||||
: PIPE_ACCESS_DUPLEX 3 ; inline
|
||||
CONSTANT: PIPE_ACCESS_INBOUND 1
|
||||
CONSTANT: PIPE_ACCESS_OUTBOUND 2
|
||||
CONSTANT: PIPE_ACCESS_DUPLEX 3
|
||||
|
||||
: PIPE_TYPE_BYTE 0 ; inline
|
||||
: PIPE_TYPE_MESSAGE 4 ; inline
|
||||
CONSTANT: PIPE_TYPE_BYTE 0
|
||||
CONSTANT: PIPE_TYPE_MESSAGE 4
|
||||
|
||||
: PIPE_READMODE_BYTE 0 ; inline
|
||||
: PIPE_READMODE_MESSAGE 2 ; inline
|
||||
CONSTANT: PIPE_READMODE_BYTE 0
|
||||
CONSTANT: PIPE_READMODE_MESSAGE 2
|
||||
|
||||
: PIPE_WAIT 0 ; inline
|
||||
: PIPE_NOWAIT 1 ; inline
|
||||
CONSTANT: PIPE_WAIT 0
|
||||
CONSTANT: PIPE_NOWAIT 1
|
||||
|
||||
: PIPE_UNLIMITED_INSTANCES 255 ; inline
|
||||
CONSTANT: PIPE_UNLIMITED_INSTANCES 255
|
||||
|
||||
LIBRARY: kernel32
|
||||
! FUNCTION: _hread
|
||||
|
@ -641,29 +640,29 @@ ALIAS: CreateNamedPipe CreateNamedPipeW
|
|||
! FUNCTION: CreateNlsSecurityDescriptor
|
||||
FUNCTION: BOOL CreatePipe ( PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize ) ;
|
||||
|
||||
: DEBUG_PROCESS HEX: 00000001 ;
|
||||
: DEBUG_ONLY_THIS_PROCESS HEX: 00000002 ;
|
||||
: CREATE_SUSPENDED HEX: 00000004 ;
|
||||
: DETACHED_PROCESS HEX: 00000008 ;
|
||||
: CREATE_NEW_CONSOLE HEX: 00000010 ;
|
||||
: NORMAL_PRIORITY_CLASS HEX: 00000020 ;
|
||||
: IDLE_PRIORITY_CLASS HEX: 00000040 ;
|
||||
: HIGH_PRIORITY_CLASS HEX: 00000080 ;
|
||||
: REALTIME_PRIORITY_CLASS HEX: 00000100 ;
|
||||
: CREATE_NEW_PROCESS_GROUP HEX: 00000200 ;
|
||||
: CREATE_UNICODE_ENVIRONMENT HEX: 00000400 ;
|
||||
: CREATE_SEPARATE_WOW_VDM HEX: 00000800 ;
|
||||
: CREATE_SHARED_WOW_VDM HEX: 00001000 ;
|
||||
: CREATE_FORCEDOS HEX: 00002000 ;
|
||||
: BELOW_NORMAL_PRIORITY_CLASS HEX: 00004000 ;
|
||||
: ABOVE_NORMAL_PRIORITY_CLASS HEX: 00008000 ;
|
||||
: CREATE_BREAKAWAY_FROM_JOB HEX: 01000000 ;
|
||||
: CREATE_WITH_USERPROFILE HEX: 02000000 ;
|
||||
: CREATE_DEFAULT_ERROR_MODE HEX: 04000000 ;
|
||||
: CREATE_NO_WINDOW HEX: 08000000 ;
|
||||
: PROFILE_USER HEX: 10000000 ;
|
||||
: PROFILE_KERNEL HEX: 20000000 ;
|
||||
: PROFILE_SERVER HEX: 40000000 ;
|
||||
CONSTANT: DEBUG_PROCESS HEX: 00000001
|
||||
CONSTANT: DEBUG_ONLY_THIS_PROCESS HEX: 00000002
|
||||
CONSTANT: CREATE_SUSPENDED HEX: 00000004
|
||||
CONSTANT: DETACHED_PROCESS HEX: 00000008
|
||||
CONSTANT: CREATE_NEW_CONSOLE HEX: 00000010
|
||||
CONSTANT: NORMAL_PRIORITY_CLASS HEX: 00000020
|
||||
CONSTANT: IDLE_PRIORITY_CLASS HEX: 00000040
|
||||
CONSTANT: HIGH_PRIORITY_CLASS HEX: 00000080
|
||||
CONSTANT: REALTIME_PRIORITY_CLASS HEX: 00000100
|
||||
CONSTANT: CREATE_NEW_PROCESS_GROUP HEX: 00000200
|
||||
CONSTANT: CREATE_UNICODE_ENVIRONMENT HEX: 00000400
|
||||
CONSTANT: CREATE_SEPARATE_WOW_VDM HEX: 00000800
|
||||
CONSTANT: CREATE_SHARED_WOW_VDM HEX: 00001000
|
||||
CONSTANT: CREATE_FORCEDOS HEX: 00002000
|
||||
CONSTANT: BELOW_NORMAL_PRIORITY_CLASS HEX: 00004000
|
||||
CONSTANT: ABOVE_NORMAL_PRIORITY_CLASS HEX: 00008000
|
||||
CONSTANT: CREATE_BREAKAWAY_FROM_JOB HEX: 01000000
|
||||
CONSTANT: CREATE_WITH_USERPROFILE HEX: 02000000
|
||||
CONSTANT: CREATE_DEFAULT_ERROR_MODE HEX: 04000000
|
||||
CONSTANT: CREATE_NO_WINDOW HEX: 08000000
|
||||
CONSTANT: PROFILE_USER HEX: 10000000
|
||||
CONSTANT: PROFILE_KERNEL HEX: 20000000
|
||||
CONSTANT: PROFILE_SERVER HEX: 40000000
|
||||
|
||||
FUNCTION: BOOL CreateProcessW ( LPCTSTR lpApplicationname,
|
||||
LPTSTR lpCommandLine,
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -3,87 +3,87 @@
|
|||
USING: alien alien.c-types alien.strings alien.syntax
|
||||
combinators io.encodings.utf16n io.files io.pathnames kernel
|
||||
windows windows.com windows.com.syntax windows.ole32
|
||||
windows.user32 ;
|
||||
windows.user32 constants alias ;
|
||||
IN: windows.shell32
|
||||
|
||||
: CSIDL_DESKTOP HEX: 00 ; inline
|
||||
: CSIDL_INTERNET HEX: 01 ; inline
|
||||
: CSIDL_PROGRAMS HEX: 02 ; inline
|
||||
: CSIDL_CONTROLS HEX: 03 ; inline
|
||||
: CSIDL_PRINTERS HEX: 04 ; inline
|
||||
: CSIDL_PERSONAL HEX: 05 ; inline
|
||||
: CSIDL_FAVORITES HEX: 06 ; inline
|
||||
: CSIDL_STARTUP HEX: 07 ; inline
|
||||
: CSIDL_RECENT HEX: 08 ; inline
|
||||
: CSIDL_SENDTO HEX: 09 ; inline
|
||||
: CSIDL_BITBUCKET HEX: 0a ; inline
|
||||
: CSIDL_STARTMENU HEX: 0b ; inline
|
||||
: CSIDL_MYDOCUMENTS HEX: 0c ; inline
|
||||
: CSIDL_MYMUSIC HEX: 0d ; inline
|
||||
: CSIDL_MYVIDEO HEX: 0e ; inline
|
||||
: CSIDL_DESKTOPDIRECTORY HEX: 10 ; inline
|
||||
: CSIDL_DRIVES HEX: 11 ; inline
|
||||
: CSIDL_NETWORK HEX: 12 ; inline
|
||||
: CSIDL_NETHOOD HEX: 13 ; inline
|
||||
: CSIDL_FONTS HEX: 14 ; inline
|
||||
: CSIDL_TEMPLATES HEX: 15 ; inline
|
||||
: CSIDL_COMMON_STARTMENU HEX: 16 ; inline
|
||||
: CSIDL_COMMON_PROGRAMS HEX: 17 ; inline
|
||||
: CSIDL_COMMON_STARTUP HEX: 18 ; inline
|
||||
: CSIDL_COMMON_DESKTOPDIRECTORY HEX: 19 ; inline
|
||||
: CSIDL_APPDATA HEX: 1a ; inline
|
||||
: CSIDL_PRINTHOOD HEX: 1b ; inline
|
||||
: CSIDL_LOCAL_APPDATA HEX: 1c ; inline
|
||||
: CSIDL_ALTSTARTUP HEX: 1d ; inline
|
||||
: CSIDL_COMMON_ALTSTARTUP HEX: 1e ; inline
|
||||
: CSIDL_COMMON_FAVORITES HEX: 1f ; inline
|
||||
: CSIDL_INTERNET_CACHE HEX: 20 ; inline
|
||||
: CSIDL_COOKIES HEX: 21 ; inline
|
||||
: CSIDL_HISTORY HEX: 22 ; inline
|
||||
: CSIDL_COMMON_APPDATA HEX: 23 ; inline
|
||||
: CSIDL_WINDOWS HEX: 24 ; inline
|
||||
: CSIDL_SYSTEM HEX: 25 ; inline
|
||||
: CSIDL_PROGRAM_FILES HEX: 26 ; inline
|
||||
: CSIDL_MYPICTURES HEX: 27 ; inline
|
||||
: CSIDL_PROFILE HEX: 28 ; inline
|
||||
: CSIDL_SYSTEMX86 HEX: 29 ; inline
|
||||
: CSIDL_PROGRAM_FILESX86 HEX: 2a ; inline
|
||||
: CSIDL_PROGRAM_FILES_COMMON HEX: 2b ; inline
|
||||
: CSIDL_PROGRAM_FILES_COMMONX86 HEX: 2c ; inline
|
||||
: CSIDL_COMMON_TEMPLATES HEX: 2d ; inline
|
||||
: CSIDL_COMMON_DOCUMENTS HEX: 2e ; inline
|
||||
: CSIDL_COMMON_ADMINTOOLS HEX: 2f ; inline
|
||||
: CSIDL_ADMINTOOLS HEX: 30 ; inline
|
||||
: CSIDL_CONNECTIONS HEX: 31 ; inline
|
||||
: CSIDL_COMMON_MUSIC HEX: 35 ; inline
|
||||
: CSIDL_COMMON_PICTURES HEX: 36 ; inline
|
||||
: CSIDL_COMMON_VIDEO HEX: 37 ; inline
|
||||
: CSIDL_RESOURCES HEX: 38 ; inline
|
||||
: CSIDL_RESOURCES_LOCALIZED HEX: 39 ; inline
|
||||
: CSIDL_COMMON_OEM_LINKS HEX: 3a ; inline
|
||||
: CSIDL_CDBURN_AREA HEX: 3b ; inline
|
||||
: CSIDL_COMPUTERSNEARME HEX: 3d ; inline
|
||||
: CSIDL_PROFILES HEX: 3e ; inline
|
||||
: CSIDL_FOLDER_MASK HEX: ff ; inline
|
||||
: CSIDL_FLAG_PER_USER_INIT HEX: 800 ; inline
|
||||
: CSIDL_FLAG_NO_ALIAS HEX: 1000 ; inline
|
||||
: CSIDL_FLAG_DONT_VERIFY HEX: 4000 ; inline
|
||||
: CSIDL_FLAG_CREATE HEX: 8000 ; inline
|
||||
: CSIDL_FLAG_MASK HEX: ff00 ; inline
|
||||
CONSTANT: CSIDL_DESKTOP HEX: 00
|
||||
CONSTANT: CSIDL_INTERNET HEX: 01
|
||||
CONSTANT: CSIDL_PROGRAMS HEX: 02
|
||||
CONSTANT: CSIDL_CONTROLS HEX: 03
|
||||
CONSTANT: CSIDL_PRINTERS HEX: 04
|
||||
CONSTANT: CSIDL_PERSONAL HEX: 05
|
||||
CONSTANT: CSIDL_FAVORITES HEX: 06
|
||||
CONSTANT: CSIDL_STARTUP HEX: 07
|
||||
CONSTANT: CSIDL_RECENT HEX: 08
|
||||
CONSTANT: CSIDL_SENDTO HEX: 09
|
||||
CONSTANT: CSIDL_BITBUCKET HEX: 0a
|
||||
CONSTANT: CSIDL_STARTMENU HEX: 0b
|
||||
CONSTANT: CSIDL_MYDOCUMENTS HEX: 0c
|
||||
CONSTANT: CSIDL_MYMUSIC HEX: 0d
|
||||
CONSTANT: CSIDL_MYVIDEO HEX: 0e
|
||||
CONSTANT: CSIDL_DESKTOPDIRECTORY HEX: 10
|
||||
CONSTANT: CSIDL_DRIVES HEX: 11
|
||||
CONSTANT: CSIDL_NETWORK HEX: 12
|
||||
CONSTANT: CSIDL_NETHOOD HEX: 13
|
||||
CONSTANT: CSIDL_FONTS HEX: 14
|
||||
CONSTANT: CSIDL_TEMPLATES HEX: 15
|
||||
CONSTANT: CSIDL_COMMON_STARTMENU HEX: 16
|
||||
CONSTANT: CSIDL_COMMON_PROGRAMS HEX: 17
|
||||
CONSTANT: CSIDL_COMMON_STARTUP HEX: 18
|
||||
CONSTANT: CSIDL_COMMON_DESKTOPDIRECTORY HEX: 19
|
||||
CONSTANT: CSIDL_APPDATA HEX: 1a
|
||||
CONSTANT: CSIDL_PRINTHOOD HEX: 1b
|
||||
CONSTANT: CSIDL_LOCAL_APPDATA HEX: 1c
|
||||
CONSTANT: CSIDL_ALTSTARTUP HEX: 1d
|
||||
CONSTANT: CSIDL_COMMON_ALTSTARTUP HEX: 1e
|
||||
CONSTANT: CSIDL_COMMON_FAVORITES HEX: 1f
|
||||
CONSTANT: CSIDL_INTERNET_CACHE HEX: 20
|
||||
CONSTANT: CSIDL_COOKIES HEX: 21
|
||||
CONSTANT: CSIDL_HISTORY HEX: 22
|
||||
CONSTANT: CSIDL_COMMON_APPDATA HEX: 23
|
||||
CONSTANT: CSIDL_WINDOWS HEX: 24
|
||||
CONSTANT: CSIDL_SYSTEM HEX: 25
|
||||
CONSTANT: CSIDL_PROGRAM_FILES HEX: 26
|
||||
CONSTANT: CSIDL_MYPICTURES HEX: 27
|
||||
CONSTANT: CSIDL_PROFILE HEX: 28
|
||||
CONSTANT: CSIDL_SYSTEMX86 HEX: 29
|
||||
CONSTANT: CSIDL_PROGRAM_FILESX86 HEX: 2a
|
||||
CONSTANT: CSIDL_PROGRAM_FILES_COMMON HEX: 2b
|
||||
CONSTANT: CSIDL_PROGRAM_FILES_COMMONX86 HEX: 2c
|
||||
CONSTANT: CSIDL_COMMON_TEMPLATES HEX: 2d
|
||||
CONSTANT: CSIDL_COMMON_DOCUMENTS HEX: 2e
|
||||
CONSTANT: CSIDL_COMMON_ADMINTOOLS HEX: 2f
|
||||
CONSTANT: CSIDL_ADMINTOOLS HEX: 30
|
||||
CONSTANT: CSIDL_CONNECTIONS HEX: 31
|
||||
CONSTANT: CSIDL_COMMON_MUSIC HEX: 35
|
||||
CONSTANT: CSIDL_COMMON_PICTURES HEX: 36
|
||||
CONSTANT: CSIDL_COMMON_VIDEO HEX: 37
|
||||
CONSTANT: CSIDL_RESOURCES HEX: 38
|
||||
CONSTANT: CSIDL_RESOURCES_LOCALIZED HEX: 39
|
||||
CONSTANT: CSIDL_COMMON_OEM_LINKS HEX: 3a
|
||||
CONSTANT: CSIDL_CDBURN_AREA HEX: 3b
|
||||
CONSTANT: CSIDL_COMPUTERSNEARME HEX: 3d
|
||||
CONSTANT: CSIDL_PROFILES HEX: 3e
|
||||
CONSTANT: CSIDL_FOLDER_MASK HEX: ff
|
||||
CONSTANT: CSIDL_FLAG_PER_USER_INIT HEX: 800
|
||||
CONSTANT: CSIDL_FLAG_NO_ALIAS HEX: 1000
|
||||
CONSTANT: CSIDL_FLAG_DONT_VERIFY HEX: 4000
|
||||
CONSTANT: CSIDL_FLAG_CREATE HEX: 8000
|
||||
CONSTANT: CSIDL_FLAG_MASK HEX: ff00
|
||||
|
||||
|
||||
: ERROR_FILE_NOT_FOUND 2 ; inline
|
||||
CONSTANT: ERROR_FILE_NOT_FOUND 2
|
||||
|
||||
: SHGFP_TYPE_CURRENT 0 ; inline
|
||||
: SHGFP_TYPE_DEFAULT 1 ; inline
|
||||
CONSTANT: SHGFP_TYPE_CURRENT 0
|
||||
CONSTANT: SHGFP_TYPE_DEFAULT 1
|
||||
|
||||
LIBRARY: shell32
|
||||
|
||||
FUNCTION: HRESULT SHGetFolderPathW ( HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwReserved, LPTSTR pszPath ) ;
|
||||
: SHGetFolderPath SHGetFolderPathW ; inline
|
||||
ALIAS: SHGetFolderPath SHGetFolderPathW
|
||||
|
||||
FUNCTION: HINSTANCE ShellExecuteW ( HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFile, LPCTSTR lpParameters, LPCTSTR lpDirectory, INT nShowCmd ) ;
|
||||
: ShellExecute ShellExecuteW ; inline
|
||||
ALIAS: ShellExecute ShellExecuteW
|
||||
|
||||
: open-in-explorer ( dir -- )
|
||||
f "open" rot (normalize-path) f f SW_SHOWNORMAL ShellExecute drop ;
|
||||
|
@ -105,7 +105,7 @@ FUNCTION: HINSTANCE ShellExecuteW ( HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFi
|
|||
: application-data ( -- str )
|
||||
CSIDL_APPDATA shell32-directory ;
|
||||
|
||||
: windows ( -- str )
|
||||
: windows-directory ( -- str )
|
||||
CSIDL_WINDOWS shell32-directory ;
|
||||
|
||||
: programs ( -- str )
|
||||
|
@ -123,50 +123,50 @@ FUNCTION: HINSTANCE ShellExecuteW ( HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFi
|
|||
: program-files-common-x86 ( -- str )
|
||||
CSIDL_PROGRAM_FILES_COMMONX86 shell32-directory ;
|
||||
|
||||
: SHCONTF_FOLDERS 32 ; inline
|
||||
: SHCONTF_NONFOLDERS 64 ; inline
|
||||
: SHCONTF_INCLUDEHIDDEN 128 ; inline
|
||||
: SHCONTF_INIT_ON_FIRST_NEXT 256 ; inline
|
||||
: SHCONTF_NETPRINTERSRCH 512 ; inline
|
||||
: SHCONTF_SHAREABLE 1024 ; inline
|
||||
: SHCONTF_STORAGE 2048 ; inline
|
||||
CONSTANT: SHCONTF_FOLDERS 32
|
||||
CONSTANT: SHCONTF_NONFOLDERS 64
|
||||
CONSTANT: SHCONTF_INCLUDEHIDDEN 128
|
||||
CONSTANT: SHCONTF_INIT_ON_FIRST_NEXT 256
|
||||
CONSTANT: SHCONTF_NETPRINTERSRCH 512
|
||||
CONSTANT: SHCONTF_SHAREABLE 1024
|
||||
CONSTANT: SHCONTF_STORAGE 2048
|
||||
|
||||
TYPEDEF: DWORD SHCONTF
|
||||
|
||||
: SHGDN_NORMAL 0 ; inline
|
||||
: SHGDN_INFOLDER 1 ; inline
|
||||
: SHGDN_FOREDITING HEX: 1000 ; inline
|
||||
: SHGDN_INCLUDE_NONFILESYS HEX: 2000 ; inline
|
||||
: SHGDN_FORADDRESSBAR HEX: 4000 ; inline
|
||||
: SHGDN_FORPARSING HEX: 8000 ; inline
|
||||
CONSTANT: SHGDN_NORMAL 0
|
||||
CONSTANT: SHGDN_INFOLDER 1
|
||||
CONSTANT: SHGDN_FOREDITING HEX: 1000
|
||||
CONSTANT: SHGDN_INCLUDE_NONFILESYS HEX: 2000
|
||||
CONSTANT: SHGDN_FORADDRESSBAR HEX: 4000
|
||||
CONSTANT: SHGDN_FORPARSING HEX: 8000
|
||||
|
||||
TYPEDEF: DWORD SHGDNF
|
||||
|
||||
: SFGAO_CANCOPY DROPEFFECT_COPY ; inline
|
||||
: SFGAO_CANMOVE DROPEFFECT_MOVE ; inline
|
||||
: SFGAO_CANLINK DROPEFFECT_LINK ; inline
|
||||
: SFGAO_CANRENAME HEX: 00000010 ; inline
|
||||
: SFGAO_CANDELETE HEX: 00000020 ; inline
|
||||
: SFGAO_HASPROPSHEET HEX: 00000040 ; inline
|
||||
: SFGAO_DROPTARGET HEX: 00000100 ; inline
|
||||
: SFGAO_CAPABILITYMASK HEX: 00000177 ; inline
|
||||
: SFGAO_LINK HEX: 00010000 ; inline
|
||||
: SFGAO_SHARE HEX: 00020000 ; inline
|
||||
: SFGAO_READONLY HEX: 00040000 ; inline
|
||||
: SFGAO_GHOSTED HEX: 00080000 ; inline
|
||||
: SFGAO_HIDDEN HEX: 00080000 ; inline
|
||||
: SFGAO_DISPLAYATTRMASK HEX: 000F0000 ; inline
|
||||
: SFGAO_FILESYSANCESTOR HEX: 10000000 ; inline
|
||||
: SFGAO_FOLDER HEX: 20000000 ; inline
|
||||
: SFGAO_FILESYSTEM HEX: 40000000 ; inline
|
||||
: SFGAO_HASSUBFOLDER HEX: 80000000 ; inline
|
||||
: SFGAO_CONTENTSMASK HEX: 80000000 ; inline
|
||||
: SFGAO_VALIDATE HEX: 01000000 ; inline
|
||||
: SFGAO_REMOVABLE HEX: 02000000 ; inline
|
||||
: SFGAO_COMPRESSED HEX: 04000000 ; inline
|
||||
: SFGAO_BROWSABLE HEX: 08000000 ; inline
|
||||
: SFGAO_NONENUMERATED HEX: 00100000 ; inline
|
||||
: SFGAO_NEWCONTENT HEX: 00200000 ; inline
|
||||
ALIAS: SFGAO_CANCOPY DROPEFFECT_COPY
|
||||
ALIAS: SFGAO_CANMOVE DROPEFFECT_MOVE
|
||||
ALIAS: SFGAO_CANLINK DROPEFFECT_LINK
|
||||
CONSTANT: SFGAO_CANRENAME HEX: 00000010
|
||||
CONSTANT: SFGAO_CANDELETE HEX: 00000020
|
||||
CONSTANT: SFGAO_HASPROPSHEET HEX: 00000040
|
||||
CONSTANT: SFGAO_DROPTARGET HEX: 00000100
|
||||
CONSTANT: SFGAO_CAPABILITYMASK HEX: 00000177
|
||||
CONSTANT: SFGAO_LINK HEX: 00010000
|
||||
CONSTANT: SFGAO_SHARE HEX: 00020000
|
||||
CONSTANT: SFGAO_READONLY HEX: 00040000
|
||||
CONSTANT: SFGAO_GHOSTED HEX: 00080000
|
||||
CONSTANT: SFGAO_HIDDEN HEX: 00080000
|
||||
CONSTANT: SFGAO_DISPLAYATTRMASK HEX: 000F0000
|
||||
CONSTANT: SFGAO_FILESYSANCESTOR HEX: 10000000
|
||||
CONSTANT: SFGAO_FOLDER HEX: 20000000
|
||||
CONSTANT: SFGAO_FILESYSTEM HEX: 40000000
|
||||
CONSTANT: SFGAO_HASSUBFOLDER HEX: 80000000
|
||||
CONSTANT: SFGAO_CONTENTSMASK HEX: 80000000
|
||||
CONSTANT: SFGAO_VALIDATE HEX: 01000000
|
||||
CONSTANT: SFGAO_REMOVABLE HEX: 02000000
|
||||
CONSTANT: SFGAO_COMPRESSED HEX: 04000000
|
||||
CONSTANT: SFGAO_BROWSABLE HEX: 08000000
|
||||
CONSTANT: SFGAO_NONENUMERATED HEX: 00100000
|
||||
CONSTANT: SFGAO_NEWCONTENT HEX: 00200000
|
||||
|
||||
TYPEDEF: ULONG SFGAOF
|
||||
|
||||
|
@ -223,5 +223,4 @@ COM-INTERFACE: IShellFolder IUnknown {000214E6-0000-0000-C000-000000000046}
|
|||
FUNCTION: HRESULT SHGetDesktopFolder ( IShellFolder** ppshf ) ;
|
||||
|
||||
FUNCTION: UINT DragQueryFileW ( HDROP hDrop, UINT iFile, LPWSTR lpszFile, UINT cch ) ;
|
||||
: DragQueryFile DragQueryFileW ; inline
|
||||
|
||||
ALIAS: DragQueryFile DragQueryFileW
|
||||
|
|
Loading…
Reference in New Issue