├── media ├── Up.ico ├── File.ico └── _Open.ico ├── jcifs-1.3.18.jar ├── SMBFileBrowser.res ├── README.md ├── android-19-headers ├── java.lang.reflect.JType.pas ├── java.security.PublicKey.pas ├── java.net.FileNameMap.pas ├── java.nio.channels.ReadableByteChannel.pas ├── java.nio.channels.WritableByteChannel.pas ├── java.nio.MappedByteBuffer.pas ├── java.security.acl.Permission.pas ├── java.nio.ByteOrder.pas ├── android.net.Proxy.pas ├── java.security.Principal.pas ├── java.io.FilterOutputStream.pas ├── java.nio.channels.FileChannel_MapMode.pas ├── java.security.Timestamp.pas ├── java.security.CodeSigner.pas ├── java.io.FilterInputStream.pas ├── java.lang.reflect.GenericDeclaration.pas ├── java.io.FileOutputStream.pas ├── java.security.cert.CertPath.pas ├── java.security.cert.Certificate.pas ├── java.security.Permission.pas ├── android.widget.Toast.pas ├── java.nio.IntBuffer.pas ├── java.nio.LongBuffer.pas ├── java.nio.FloatBuffer.pas ├── java.nio.ShortBuffer.pas ├── java.nio.DoubleBuffer.pas ├── java.nio.channels.FileChannel.pas ├── java.nio.CharBuffer.pas ├── java.net.InetAddress.pas └── java.nio.ByteBuffer.pas ├── .gitignore ├── jcifs-1.3.18-headers ├── jcifs.smb.SmbFileInputStream.pas ├── jcifs.smb.SmbFileOutputStream.pas ├── jcifs.Config.pas ├── jcifs.dcerpc.rpc_sid_t.pas ├── jcifs.smb.NtlmPasswordAuthentication.pas ├── jcifs.smb.ACE.pas ├── jcifs.smb.SID.pas ├── jcifs.dcerpc.ndr.NdrBuffer.pas └── jcifs.smb.SmbFile.pas ├── AndroidManifest.template.xml ├── EditSettingsFile.pas ├── SMBFileBrowser.dpr ├── SMBFileBrowser.deployproj ├── Main.pas └── LICENSE /media/Up.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LongDirtyAnimAlf/Delphi-Android-SMB/HEAD/media/Up.ico -------------------------------------------------------------------------------- /jcifs-1.3.18.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LongDirtyAnimAlf/Delphi-Android-SMB/HEAD/jcifs-1.3.18.jar -------------------------------------------------------------------------------- /media/File.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LongDirtyAnimAlf/Delphi-Android-SMB/HEAD/media/File.ico -------------------------------------------------------------------------------- /media/_Open.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LongDirtyAnimAlf/Delphi-Android-SMB/HEAD/media/_Open.ico -------------------------------------------------------------------------------- /SMBFileBrowser.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LongDirtyAnimAlf/Delphi-Android-SMB/HEAD/SMBFileBrowser.res -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Delphi-Android-SMB 2 | Access Windows shares on Android with Delphi 3 | The jcifs library is used. 4 | Proof of concept !! 5 | Demo (browser) included. 6 | -------------------------------------------------------------------------------- /android-19-headers/java.lang.reflect.JType.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093214 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.lang.reflect.JType; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JType = interface; 14 | 15 | JTypeClass = interface(JObjectClass) 16 | ['{FEBB4269-CDCE-4844-98E7-93183CF99DAA}'] 17 | end; 18 | 19 | [JavaSignature('java/lang/reflect/Type')] 20 | JType = interface(JObject) 21 | ['{F44130F5-7BBC-4DDE-BF24-0FB57D683A36}'] 22 | end; 23 | 24 | TJType = class(TJavaGenericImport) 25 | end; 26 | 27 | implementation 28 | 29 | end. 30 | -------------------------------------------------------------------------------- /android-19-headers/java.security.PublicKey.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093218 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.PublicKey; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JPublicKey = interface; 14 | 15 | JPublicKeyClass = interface(JObjectClass) 16 | ['{A3D5D18B-BF03-4AC6-8E20-AE7FD208F9C6}'] 17 | function _GetserialVersionUID : Int64; cdecl; // A: $19 18 | property serialVersionUID : Int64 read _GetserialVersionUID; // J A: $19 19 | end; 20 | 21 | [JavaSignature('java/security/PublicKey')] 22 | JPublicKey = interface(JObject) 23 | ['{DE3BD3B2-60F4-459F-815C-406155BA7C2E}'] 24 | end; 25 | 26 | TJPublicKey = class(TJavaGenericImport) 27 | end; 28 | 29 | const 30 | TJPublicKeyserialVersionUID = 4297136608; 31 | 32 | implementation 33 | 34 | end. 35 | -------------------------------------------------------------------------------- /android-19-headers/java.net.FileNameMap.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093209 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.net.FileNameMap; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JFileNameMap = interface; 14 | 15 | JFileNameMapClass = interface(JObjectClass) 16 | ['{E1AF1932-F28C-4995-93B2-BFCC46F74F88}'] 17 | function getContentTypeFor(JStringparam0 : JString) : JString; cdecl; // (Ljava/lang/String;)Ljava/lang/String; A: $401 18 | end; 19 | 20 | [JavaSignature('java/net/FileNameMap')] 21 | JFileNameMap = interface(JObject) 22 | ['{01DFF8CC-2A24-4F1A-85B2-3AB693085D31}'] 23 | function getContentTypeFor(JStringparam0 : JString) : JString; cdecl; // (Ljava/lang/String;)Ljava/lang/String; A: $401 24 | end; 25 | 26 | TJFileNameMap = class(TJavaGenericImport) 27 | end; 28 | 29 | implementation 30 | 31 | end. 32 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.channels.ReadableByteChannel.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.channels.ReadableByteChannel; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteBuffer; 12 | 13 | type 14 | JReadableByteChannel = interface; 15 | 16 | JReadableByteChannelClass = interface(JObjectClass) 17 | ['{70B08477-5CD7-4A33-A5B1-AF82B04429F8}'] 18 | function &read(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; // (Ljava/nio/ByteBuffer;)I A: $401 19 | end; 20 | 21 | [JavaSignature('java/nio/channels/ReadableByteChannel')] 22 | JReadableByteChannel = interface(JObject) 23 | ['{76A6CC2D-50AA-4558-825F-2628775D3267}'] 24 | function &read(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; // (Ljava/nio/ByteBuffer;)I A: $401 25 | end; 26 | 27 | TJReadableByteChannel = class(TJavaGenericImport) 28 | end; 29 | 30 | implementation 31 | 32 | end. 33 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.channels.WritableByteChannel.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.channels.WritableByteChannel; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteBuffer; 12 | 13 | type 14 | JWritableByteChannel = interface; 15 | 16 | JWritableByteChannelClass = interface(JObjectClass) 17 | ['{F961FC51-AEF5-4D7B-AC76-EAAFB01AC578}'] 18 | function &write(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; // (Ljava/nio/ByteBuffer;)I A: $401 19 | end; 20 | 21 | [JavaSignature('java/nio/channels/WritableByteChannel')] 22 | JWritableByteChannel = interface(JObject) 23 | ['{98223FBB-D37D-4E8D-84E3-6E24EF556C2D}'] 24 | function &write(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; // (Ljava/nio/ByteBuffer;)I A: $401 25 | end; 26 | 27 | TJWritableByteChannel = class(TJavaGenericImport) 28 | end; 29 | 30 | implementation 31 | 32 | end. 33 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.MappedByteBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093208 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.MappedByteBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JMappedByteBuffer = interface; 14 | 15 | JMappedByteBufferClass = interface(JObjectClass) 16 | ['{7E49A5F0-5CAD-45FB-8C03-33A08A57A37F}'] 17 | function force : JMappedByteBuffer; cdecl; // ()Ljava/nio/MappedByteBuffer; A: $11 18 | function isLoaded : boolean; cdecl; // ()Z A: $11 19 | function load : JMappedByteBuffer; cdecl; // ()Ljava/nio/MappedByteBuffer; A: $11 20 | end; 21 | 22 | [JavaSignature('java/nio/MappedByteBuffer')] 23 | JMappedByteBuffer = interface(JObject) 24 | ['{427532BD-E6C7-4CE1-9DB1-D008C151EED3}'] 25 | end; 26 | 27 | TJMappedByteBuffer = class(TJavaGenericImport) 28 | end; 29 | 30 | implementation 31 | 32 | end. 33 | -------------------------------------------------------------------------------- /android-19-headers/java.security.acl.Permission.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093216 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.acl.Permission; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JPermission = interface; 14 | 15 | JPermissionClass = interface(JObjectClass) 16 | ['{D41CF10D-6C77-4C1E-AC9E-7C359793469F}'] 17 | function equals(JObjectparam0 : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $401 18 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $401 19 | end; 20 | 21 | [JavaSignature('java/security/acl/Permission')] 22 | JPermission = interface(JObject) 23 | ['{54885366-6C76-4ACE-8B7A-5FB8B214E893}'] 24 | function equals(JObjectparam0 : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $401 25 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $401 26 | end; 27 | 28 | TJPermission = class(TJavaGenericImport) 29 | end; 30 | 31 | implementation 32 | 33 | end. 34 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.ByteOrder.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.ByteOrder; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JByteOrder = interface; 14 | 15 | JByteOrderClass = interface(JObjectClass) 16 | ['{3071E3FC-714C-4A0E-A6D1-F14160BEE12B}'] 17 | function _GetBIG_ENDIAN : JByteOrder; cdecl; // A: $19 18 | function _GetLITTLE_ENDIAN : JByteOrder; cdecl; // A: $19 19 | function nativeOrder : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $9 20 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 21 | property BIG_ENDIAN : JByteOrder read _GetBIG_ENDIAN; // Ljava/nio/ByteOrder; A: $19 22 | property LITTLE_ENDIAN : JByteOrder read _GetLITTLE_ENDIAN; // Ljava/nio/ByteOrder; A: $19 23 | end; 24 | 25 | [JavaSignature('java/nio/ByteOrder')] 26 | JByteOrder = interface(JObject) 27 | ['{688FE687-06C5-451B-A252-6CCA54127383}'] 28 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 29 | end; 30 | 31 | TJByteOrder = class(TJavaGenericImport) 32 | end; 33 | 34 | implementation 35 | 36 | end. 37 | -------------------------------------------------------------------------------- /android-19-headers/android.net.Proxy.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093055 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit android.net.Proxy; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | Androidapi.JNI.GraphicsContentViewText; 12 | 13 | type 14 | JProxy = interface; 15 | 16 | JProxyClass = interface(JObjectClass) 17 | ['{4EDC0E1A-727B-4090-A687-E46BD18266EA}'] 18 | function _GetPROXY_CHANGE_ACTION : JString; cdecl; // A: $19 19 | function getDefaultHost : JString; deprecated; cdecl; // ()Ljava/lang/String; A: $19 20 | function getDefaultPort : Integer; deprecated; cdecl; // ()I A: $19 21 | function getHost(ctx : JContext) : JString; deprecated; cdecl; // (Landroid/content/Context;)Ljava/lang/String; A: $19 22 | function getPort(ctx : JContext) : Integer; deprecated; cdecl; // (Landroid/content/Context;)I A: $19 23 | function init : JProxy; cdecl; // ()V A: $1 24 | property PROXY_CHANGE_ACTION : JString read _GetPROXY_CHANGE_ACTION; // Ljava/lang/String; A: $19 25 | end; 26 | 27 | [JavaSignature('android/net/Proxy')] 28 | JProxy = interface(JObject) 29 | ['{5AE9D03F-E152-4B1D-8184-458120747957}'] 30 | end; 31 | 32 | TJProxy = class(TJavaGenericImport) 33 | end; 34 | 35 | const 36 | TJProxyPROXY_CHANGE_ACTION = 'android.intent.action.PROXY_CHANGE'; 37 | 38 | implementation 39 | 40 | end. 41 | -------------------------------------------------------------------------------- /android-19-headers/java.security.Principal.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093218 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.Principal; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JPrincipal = interface; 14 | 15 | JPrincipalClass = interface(JObjectClass) 16 | ['{7016C29E-43FA-43C0-9FAD-603BAE44A44B}'] 17 | function equals(JObjectparam0 : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $401 18 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $401 19 | function hashCode : Integer; cdecl; // ()I A: $401 20 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $401 21 | end; 22 | 23 | [JavaSignature('java/security/Principal')] 24 | JPrincipal = interface(JObject) 25 | ['{0EB1B6FB-9171-4F58-AE20-EF032368FAE5}'] 26 | function equals(JObjectparam0 : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $401 27 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $401 28 | function hashCode : Integer; cdecl; // ()I A: $401 29 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $401 30 | end; 31 | 32 | TJPrincipal = class(TJavaGenericImport) 33 | end; 34 | 35 | implementation 36 | 37 | end. 38 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Uncomment these types if you want even more clean repository. But be careful. 2 | # It can make harm to an existing project source. Read explanations below. 3 | # 4 | # Resource files are binaries containing manifest, project icon and version info. 5 | # They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files. 6 | #*.res 7 | # 8 | # Type library file (binary). In old Delphi versions it should be stored. 9 | # Since Delphi 2009 it is produced from .ridl file and can safely be ignored. 10 | #*.tlb 11 | # 12 | # Diagram Portfolio file. Used by the diagram editor up to Delphi 7. 13 | # Uncomment this if you are not using diagrams or use newer Delphi version. 14 | #*.ddp 15 | # 16 | # Visual LiveBindings file. Added in Delphi XE2. 17 | # Uncomment this if you are not using LiveBindings Designer. 18 | #*.vlb 19 | # 20 | # Deployment Manager configuration file for your project. Added in Delphi XE2. 21 | # Uncomment this if it is not mobile development and you do not use remote debug feature. 22 | #*.deployproj 23 | # 24 | 25 | # Delphi compiler-generated binaries (safe to delete) 26 | *.exe 27 | *.dll 28 | *.bpl 29 | *.bpi 30 | *.dcp 31 | *.so 32 | *.apk 33 | *.drc 34 | *.map 35 | *.dres 36 | *.rsm 37 | *.tds 38 | *.dcu 39 | *.lib 40 | 41 | # Delphi autogenerated files (duplicated info) 42 | *.cfg 43 | *Resource.rc 44 | 45 | # Delphi local files (user-specific info) 46 | *.local 47 | *.identcache 48 | *.projdata 49 | *.tvsconfig 50 | *.dsk 51 | 52 | # Delphi history and backups 53 | __history/ 54 | *.~* 55 | 56 | # Delphi build directories 57 | Android/ 58 | Win32/ 59 | Win64/ 60 | OSX32/ 61 | OSX64/ 62 | 63 | # Castalia statistics file 64 | *.stat 65 | 66 | # Backup directories and files 67 | *backup 68 | *backup/ 69 | -------------------------------------------------------------------------------- /android-19-headers/java.io.FilterOutputStream.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093155 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.io.FilterOutputStream; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JFilterOutputStream = interface; 14 | 15 | JFilterOutputStreamClass = interface(JObjectClass) 16 | ['{B2368DD7-D5A9-4071-8809-F679D339357A}'] 17 | function init(&out : JOutputStream) : JFilterOutputStream; cdecl; // (Ljava/io/OutputStream;)V A: $1 18 | procedure &write(buffer : TJavaArray; offset : Integer; length : Integer) ; cdecl; overload;// ([BII)V A: $1 19 | procedure &write(oneByte : Integer) ; cdecl; overload; // (I)V A: $1 20 | procedure close ; cdecl; // ()V A: $1 21 | procedure flush ; cdecl; // ()V A: $1 22 | end; 23 | 24 | [JavaSignature('java/io/FilterOutputStream')] 25 | JFilterOutputStream = interface(JObject) 26 | ['{0B24523A-320E-481F-8018-D51AFBCF7FED}'] 27 | procedure &write(buffer : TJavaArray; offset : Integer; length : Integer) ; cdecl; overload;// ([BII)V A: $1 28 | procedure &write(oneByte : Integer) ; cdecl; overload; // (I)V A: $1 29 | procedure close ; cdecl; // ()V A: $1 30 | procedure flush ; cdecl; // ()V A: $1 31 | end; 32 | 33 | TJFilterOutputStream = class(TJavaGenericImport) 34 | end; 35 | 36 | implementation 37 | 38 | end. 39 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.channels.FileChannel_MapMode.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.channels.FileChannel_MapMode; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JFileChannel_MapMode = interface; 14 | 15 | JFileChannel_MapModeClass = interface(JObjectClass) 16 | ['{B20D9F40-089A-4955-B60F-7FE445BA639A}'] 17 | function _GetPRIVATE : JFileChannel_MapMode; cdecl; // A: $19 18 | function _GetREAD_ONLY : JFileChannel_MapMode; cdecl; // A: $19 19 | function _GetREAD_WRITE : JFileChannel_MapMode; cdecl; // A: $19 20 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 21 | property &PRIVATE : JFileChannel_MapMode read _GetPRIVATE; // Ljava/nio/channels/FileChannel$MapMode; A: $19 22 | property READ_ONLY : JFileChannel_MapMode read _GetREAD_ONLY; // Ljava/nio/channels/FileChannel$MapMode; A: $19 23 | property READ_WRITE : JFileChannel_MapMode read _GetREAD_WRITE; // Ljava/nio/channels/FileChannel$MapMode; A: $19 24 | end; 25 | 26 | [JavaSignature('java/nio/channels/FileChannel_MapMode')] 27 | JFileChannel_MapMode = interface(JObject) 28 | ['{16BD7227-F756-4F52-8EC2-2814962C1722}'] 29 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 30 | end; 31 | 32 | TJFileChannel_MapMode = class(TJavaGenericImport) 33 | end; 34 | 35 | implementation 36 | 37 | end. 38 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.smb.SmbFileInputStream.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.smb.SmbFileInputStream; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | jcifs.smb.SmbFile; 9 | 10 | type 11 | JSmbFileInputStream = interface; 12 | 13 | JSmbFileInputStreamClass = interface(JObjectClass) 14 | ['{68C060A2-BCFA-45B4-B581-7FEEF768BA35}'] 15 | function &read : Integer; cdecl; overload; 16 | function &read(b : TJavaArray) : Integer; cdecl; overload; 17 | function &read(b : TJavaArray; off : Integer; len : Integer) : Integer; cdecl; overload; 18 | function available : Integer; cdecl; 19 | function init(&file : JSmbFile) : JSmbFileInputStream; cdecl; overload; 20 | function init(url : JString) : JSmbFileInputStream; cdecl; overload; 21 | function readDirect(b : TJavaArray; off : Integer; len : Integer) : Integer; cdecl; 22 | function skip(n : Int64) : Int64; cdecl; 23 | procedure close ; cdecl; 24 | end; 25 | 26 | [JavaSignature('jcifs/smb/SmbFileInputStream')] 27 | JSmbFileInputStream = interface(JObject) 28 | ['{F6F53927-6B0A-465C-AC38-8C2F30218C1B}'] 29 | function &read : Integer; cdecl; overload; 30 | function &read(b : TJavaArray) : Integer; cdecl; overload; 31 | function &read(b : TJavaArray; off : Integer; len : Integer) : Integer; cdecl; overload; 32 | function available : Integer; cdecl; 33 | function readDirect(b : TJavaArray; off : Integer; len : Integer) : Integer; cdecl; 34 | function skip(n : Int64) : Int64; cdecl; 35 | procedure close ; cdecl; 36 | end; 37 | 38 | TJSmbFileInputStream = class(TJavaGenericImport) 39 | end; 40 | 41 | implementation 42 | 43 | end. 44 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.smb.SmbFileOutputStream.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.smb.SmbFileOutputStream; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | jcifs.smb.SmbFile; 9 | 10 | type 11 | JSmbFileOutputStream = interface; 12 | 13 | JSmbFileOutputStreamClass = interface(JObjectClass) 14 | ['{E03DEE8A-7E54-4A01-839B-6DE5482AACEB}'] 15 | function init(&file : JSmbFile) : JSmbFileOutputStream; cdecl; overload; 16 | function init(&file : JSmbFile; append : boolean) : JSmbFileOutputStream; cdecl; overload; 17 | function init(url : JString) : JSmbFileOutputStream; cdecl; overload; 18 | function init(url : JString; append : boolean) : JSmbFileOutputStream; cdecl; overload; 19 | function init(url : JString; shareAccess : Integer) : JSmbFileOutputStream; cdecl; overload; 20 | function isOpen : boolean; cdecl; 21 | procedure &write(b : Integer) ; cdecl; overload; 22 | procedure &write(b : TJavaArray) ; cdecl; overload; 23 | procedure &write(b : TJavaArray; off : Integer; len : Integer) ; cdecl; overload; 24 | procedure close ; cdecl; 25 | procedure writeDirect(b : TJavaArray; off : Integer; len : Integer; flags : Integer) ; cdecl; 26 | end; 27 | 28 | [JavaSignature('jcifs/smb/SmbFileOutputStream')] 29 | JSmbFileOutputStream = interface(JObject) 30 | ['{38EE2899-B3EA-40A6-A645-DD5D9B3162FF}'] 31 | function isOpen : boolean; cdecl; 32 | procedure &write(b : Integer) ; cdecl; overload; 33 | procedure &write(b : TJavaArray) ; cdecl; overload; 34 | procedure &write(b : TJavaArray; off : Integer; len : Integer) ; cdecl; overload; 35 | procedure close ; cdecl; 36 | procedure writeDirect(b : TJavaArray; off : Integer; len : Integer; flags : Integer) ; cdecl; 37 | end; 38 | 39 | TJSmbFileOutputStream = class(TJavaGenericImport) 40 | end; 41 | 42 | implementation 43 | 44 | end. 45 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.Config.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.Config; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | java.net.InetAddress; 9 | 10 | type 11 | JConfig = interface; 12 | 13 | JConfigClass = interface(JObjectClass) 14 | ['{B1E03A11-BC84-489B-BE1E-8E94216CB4C4}'] 15 | function _GetDEFAULT_OEM_ENCODING : JString; cdecl; 16 | function _GetsocketCount : Integer; cdecl; 17 | function get(key : JString) : JObject; cdecl; 18 | function getBoolean(key : JString; def : boolean) : boolean; cdecl; 19 | function getInetAddress(key : JString; def : JInetAddress) : JInetAddress; cdecl; 20 | function getInetAddressArray(key : JString; delim : JString; def : TJavaArray) : TJavaArray; cdecl; 21 | function getInt(key : JString) : Integer; cdecl; overload; 22 | function getInt(key : JString; def : Integer) : Integer; cdecl; overload; 23 | function getLocalHost : JInetAddress; cdecl; 24 | function getLong(key : JString; def : Int64) : Int64; cdecl; 25 | function getProperty(key : JString) : JString; cdecl; overload; 26 | function getProperty(key : JString; def : JString) : JString; cdecl; overload; 27 | function setProperty(key : JString; value : JString) : JObject; cdecl; 28 | procedure list(&out : JPrintStream) ; cdecl; 29 | procedure load(&in : JInputStream) ; cdecl; 30 | procedure registerSmbURLHandler ; cdecl; 31 | procedure setProperties(prp : JProperties) ; cdecl; 32 | procedure store(&out : JOutputStream; header : JString) ; cdecl; 33 | property DEFAULT_OEM_ENCODING : JString read _GetDEFAULT_OEM_ENCODING; 34 | property socketCount : Integer read _GetsocketCount; 35 | end; 36 | 37 | [JavaSignature('jcifs/Config')] 38 | JConfig = interface(JObject) 39 | ['{8F576449-A231-440B-B3AD-9BFD786CC7BA}'] 40 | end; 41 | 42 | TJConfig = class(TJavaGenericImport) 43 | end; 44 | 45 | implementation 46 | 47 | end. 48 | -------------------------------------------------------------------------------- /AndroidManifest.template.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | <%uses-permission%> 11 | 20 | 22 | 26 | 27 | 29 | 30 | 31 | 32 | 33 | 34 | <%activity%> 35 | 36 | <%receivers%> 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /android-19-headers/java.security.Timestamp.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093217 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.Timestamp; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.security.cert.CertPath; 12 | 13 | type 14 | JTimestamp = interface; 15 | 16 | JTimestampClass = interface(JObjectClass) 17 | ['{E4F62590-8B8C-4156-9D7C-71DC09027065}'] 18 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 19 | function getSignerCertPath : JCertPath; cdecl; // ()Ljava/security/cert/CertPath; A: $1 20 | function getTimestamp : JDate; cdecl; // ()Ljava/util/Date; A: $1 21 | function hashCode : Integer; cdecl; // ()I A: $1 22 | function init(timestamp : JDate; signerCertPath : JCertPath) : JTimestamp; cdecl;// (Ljava/util/Date;Ljava/security/cert/CertPath;)V A: $1 23 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 24 | end; 25 | 26 | [JavaSignature('java/security/Timestamp')] 27 | JTimestamp = interface(JObject) 28 | ['{9215064F-717D-44BE-9DA7-8BDA730F09AB}'] 29 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 30 | function getSignerCertPath : JCertPath; cdecl; // ()Ljava/security/cert/CertPath; A: $1 31 | function getTimestamp : JDate; cdecl; // ()Ljava/util/Date; A: $1 32 | function hashCode : Integer; cdecl; // ()I A: $1 33 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 34 | end; 35 | 36 | TJTimestamp = class(TJavaGenericImport) 37 | end; 38 | 39 | implementation 40 | 41 | end. 42 | -------------------------------------------------------------------------------- /android-19-headers/java.security.CodeSigner.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093218 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.CodeSigner; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.security.cert.CertPath, 12 | java.security.Timestamp; 13 | 14 | type 15 | JCodeSigner = interface; 16 | 17 | JCodeSignerClass = interface(JObjectClass) 18 | ['{DE805E14-8BEA-422D-ADA1-02916E2A9EE0}'] 19 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 20 | function getSignerCertPath : JCertPath; cdecl; // ()Ljava/security/cert/CertPath; A: $1 21 | function getTimestamp : JTimestamp; cdecl; // ()Ljava/security/Timestamp; A: $1 22 | function hashCode : Integer; cdecl; // ()I A: $1 23 | function init(signerCertPath : JCertPath; timestamp : JTimestamp) : JCodeSigner; cdecl;// (Ljava/security/cert/CertPath;Ljava/security/Timestamp;)V A: $1 24 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 25 | end; 26 | 27 | [JavaSignature('java/security/CodeSigner')] 28 | JCodeSigner = interface(JObject) 29 | ['{61F779C6-0187-4D39-A692-94E076D0A25F}'] 30 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 31 | function getSignerCertPath : JCertPath; cdecl; // ()Ljava/security/cert/CertPath; A: $1 32 | function getTimestamp : JTimestamp; cdecl; // ()Ljava/security/Timestamp; A: $1 33 | function hashCode : Integer; cdecl; // ()I A: $1 34 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 35 | end; 36 | 37 | TJCodeSigner = class(TJavaGenericImport) 38 | end; 39 | 40 | implementation 41 | 42 | end. 43 | -------------------------------------------------------------------------------- /android-19-headers/java.io.FilterInputStream.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093155 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.io.FilterInputStream; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JFilterInputStream = interface; 14 | 15 | JFilterInputStreamClass = interface(JObjectClass) 16 | ['{18F545E5-0B29-4B88-BAEC-ADD4A7076DD2}'] 17 | function &read : Integer; cdecl; overload; // ()I A: $1 18 | function &read(buffer : TJavaArray; byteOffset : Integer; byteCount : Integer) : Integer; cdecl; overload;// ([BII)I A: $1 19 | function available : Integer; cdecl; // ()I A: $1 20 | function markSupported : boolean; cdecl; // ()Z A: $1 21 | function skip(byteCount : Int64) : Int64; cdecl; // (J)J A: $1 22 | procedure close ; cdecl; // ()V A: $1 23 | procedure mark(readlimit : Integer) ; cdecl; // (I)V A: $21 24 | procedure reset ; cdecl; // ()V A: $21 25 | end; 26 | 27 | [JavaSignature('java/io/FilterInputStream')] 28 | JFilterInputStream = interface(JObject) 29 | ['{17263601-9913-42E0-A45B-2B63EC3CF4F3}'] 30 | function &read : Integer; cdecl; overload; // ()I A: $1 31 | function &read(buffer : TJavaArray; byteOffset : Integer; byteCount : Integer) : Integer; cdecl; overload;// ([BII)I A: $1 32 | function available : Integer; cdecl; // ()I A: $1 33 | function markSupported : boolean; cdecl; // ()Z A: $1 34 | function skip(byteCount : Int64) : Int64; cdecl; // (J)J A: $1 35 | procedure close ; cdecl; // ()V A: $1 36 | end; 37 | 38 | TJFilterInputStream = class(TJavaGenericImport) 39 | end; 40 | 41 | implementation 42 | 43 | end. 44 | -------------------------------------------------------------------------------- /android-19-headers/java.lang.reflect.GenericDeclaration.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093214 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.lang.reflect.GenericDeclaration; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.lang.reflect.JType; 12 | 13 | type 14 | JTypeVariable = interface; // merged 15 | JGenericDeclaration = interface; 16 | 17 | JGenericDeclarationClass = interface(JObjectClass) 18 | ['{39232330-8623-420C-9E38-57CA4B874DD5}'] 19 | function getTypeParameters : TJavaArray; cdecl; // ()[Ljava/lang/reflect/TypeVariable; A: $401 20 | end; 21 | 22 | [JavaSignature('java/lang/reflect/GenericDeclaration')] 23 | JGenericDeclaration = interface(JObject) 24 | ['{75BCEDBE-7F85-4201-AE40-8C3466D0B8CC}'] 25 | function getTypeParameters : TJavaArray; cdecl; // ()[Ljava/lang/reflect/TypeVariable; A: $401 26 | end; 27 | 28 | TJGenericDeclaration = class(TJavaGenericImport) 29 | end; 30 | 31 | // Merged from: .\android-19\java.lang.reflect.TypeVariable.pas 32 | JTypeVariableClass = interface(JObjectClass) 33 | ['{15915945-866F-43D9-8F2D-473A2F083411}'] 34 | function getBounds : TJavaArray; cdecl; // ()[Ljava/lang/reflect/Type; A: $401 35 | function getGenericDeclaration : JGenericDeclaration; cdecl; // ()Ljava/lang/reflect/GenericDeclaration; A: $401 36 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $401 37 | end; 38 | 39 | [JavaSignature('java/lang/reflect/TypeVariable')] 40 | JTypeVariable = interface(JObject) 41 | ['{16121E69-3D8F-47B7-98BC-6BEF585E959E}'] 42 | function getBounds : TJavaArray; cdecl; // ()[Ljava/lang/reflect/Type; A: $401 43 | function getGenericDeclaration : JGenericDeclaration; cdecl; // ()Ljava/lang/reflect/GenericDeclaration; A: $401 44 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $401 45 | end; 46 | 47 | TJTypeVariable = class(TJavaGenericImport) 48 | end; 49 | 50 | 51 | implementation 52 | 53 | end. 54 | -------------------------------------------------------------------------------- /android-19-headers/java.io.FileOutputStream.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093155 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.io.FileOutputStream; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.channels.FileChannel; 12 | 13 | type 14 | JFileOutputStream = interface; 15 | 16 | JFileOutputStreamClass = interface(JObjectClass) 17 | ['{9056ADD4-7763-46BE-8D74-9277B4385621}'] 18 | function getChannel : JFileChannel; cdecl; // ()Ljava/nio/channels/FileChannel; A: $1 19 | function getFD : JFileDescriptor; cdecl; // ()Ljava/io/FileDescriptor; A: $11 20 | function init(&file : JFile) : JFileOutputStream; cdecl; overload; // (Ljava/io/File;)V A: $1 21 | function init(&file : JFile; append : boolean) : JFileOutputStream; cdecl; overload;// (Ljava/io/File;Z)V A: $1 22 | function init(fd : JFileDescriptor) : JFileOutputStream; cdecl; overload; // (Ljava/io/FileDescriptor;)V A: $1 23 | function init(path : JString) : JFileOutputStream; cdecl; overload; // (Ljava/lang/String;)V A: $1 24 | function init(path : JString; append : boolean) : JFileOutputStream; cdecl; overload;// (Ljava/lang/String;Z)V A: $1 25 | procedure &write(buffer : TJavaArray; byteOffset : Integer; byteCount : Integer) ; cdecl; overload;// ([BII)V A: $1 26 | procedure &write(oneByte : Integer) ; cdecl; overload; // (I)V A: $1 27 | procedure close ; cdecl; // ()V A: $1 28 | end; 29 | 30 | [JavaSignature('java/io/FileOutputStream')] 31 | JFileOutputStream = interface(JObject) 32 | ['{34419EF0-B22B-42C3-87AE-194028FEABE8}'] 33 | function getChannel : JFileChannel; cdecl; // ()Ljava/nio/channels/FileChannel; A: $1 34 | procedure &write(buffer : TJavaArray; byteOffset : Integer; byteCount : Integer) ; cdecl; overload;// ([BII)V A: $1 35 | procedure &write(oneByte : Integer) ; cdecl; overload; // (I)V A: $1 36 | procedure close ; cdecl; // ()V A: $1 37 | end; 38 | 39 | TJFileOutputStream = class(TJavaGenericImport) 40 | end; 41 | 42 | implementation 43 | 44 | end. 45 | -------------------------------------------------------------------------------- /android-19-headers/java.security.cert.CertPath.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093216 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.cert.CertPath; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JCertPath = interface; 14 | 15 | JCertPathClass = interface(JObjectClass) 16 | ['{8D30A28B-FDC9-46D9-8497-FBDE7C21AE33}'] 17 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 18 | function getCertificates : JList; cdecl; // ()Ljava/util/List; A: $401 19 | function getEncoded : TJavaArray; cdecl; overload; // ()[B A: $401 20 | function getEncoded(JStringparam0 : JString) : TJavaArray; cdecl; overload;// (Ljava/lang/String;)[B A: $401 21 | function getEncodings : JIterator; cdecl; // ()Ljava/util/Iterator; A: $401 22 | function getType : JString; cdecl; // ()Ljava/lang/String; A: $1 23 | function hashCode : Integer; cdecl; // ()I A: $1 24 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 25 | end; 26 | 27 | [JavaSignature('java/security/cert/CertPath$CertPathRep')] 28 | JCertPath = interface(JObject) 29 | ['{1AE5BC91-4061-4E0A-900A-CE6358972C80}'] 30 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 31 | function getCertificates : JList; cdecl; // ()Ljava/util/List; A: $401 32 | function getEncoded : TJavaArray; cdecl; overload; // ()[B A: $401 33 | function getEncoded(JStringparam0 : JString) : TJavaArray; cdecl; overload;// (Ljava/lang/String;)[B A: $401 34 | function getEncodings : JIterator; cdecl; // ()Ljava/util/Iterator; A: $401 35 | function getType : JString; cdecl; // ()Ljava/lang/String; A: $1 36 | function hashCode : Integer; cdecl; // ()I A: $1 37 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 38 | end; 39 | 40 | TJCertPath = class(TJavaGenericImport) 41 | end; 42 | 43 | implementation 44 | 45 | end. 46 | -------------------------------------------------------------------------------- /EditSettingsFile.pas: -------------------------------------------------------------------------------- 1 | unit EditSettingsFile; 2 | 3 | interface 4 | 5 | uses 6 | System.SysUtils, System.Classes 7 | {$IFDEF MSWINDOWS }, WinAPI.ShellApi, WinAPI.Windows {$ENDIF} 8 | {$IFDEF ANDROID} 9 | ,FMX.Dialogs 10 | ,IdGlobalProtocols 11 | ,Androidapi.JNI.GraphicsContentViewText 12 | ,Androidapi.JNI.Net 13 | ,Androidapi.JNI.JavaTypes 14 | ,idUri 15 | ,Androidapi.IOUtils 16 | ,Androidapi.Helpers 17 | {$ENDIF ANDROID} 18 | {$IFDEF IOS} 19 | ,iOSapi.Foundation, FMX.Helpers.iOS 20 | {$ENDIF IOS}; 21 | 22 | function OpenURLorFile(URL: string; const DisplayError: Boolean = False): Boolean; 23 | 24 | implementation 25 | 26 | function OpenURLorFile(URL: string; const DisplayError: Boolean = False): Boolean; 27 | {$IFDEF MSWINDOWS} 28 | begin 29 | ShellExecute(0, 'OPEN', PChar(URL), '', '', SW_SHOWNORMAL); 30 | end; 31 | {$ELSE} 32 | {$IFDEF ANDROID} 33 | var 34 | Intent: JIntent; 35 | idMimeTable: TIdMimeTable; 36 | begin 37 | // There may be an issue with the geo: prefix and URLEncode. 38 | // will need to research 39 | if URl.toLower.StartsWith('http://') then 40 | Begin 41 | Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW, 42 | TJnet_Uri.JavaClass.parse(StringToJString(TIdURI.URLEncode(URL)))); 43 | End 44 | Else 45 | Begin 46 | try 47 | idMimeTable := TidMimeTable.Create; 48 | Intent := TJIntent.Create; 49 | Intent.setAction(TJIntent.JavaClass.ACTION_VIEW); 50 | if not url.ToLower.StartsWith('file://') then 51 | url := 'file://' + url; 52 | Intent.setDataAndType(StrToJURI(Url), StringToJString(idMimeTable.GetFileMIMEType(Url))); 53 | 54 | Finally 55 | try idMimeTable.Free; except end; 56 | End; 57 | 58 | End; 59 | try 60 | SharedActivity.startActivity(Intent); 61 | exit(true); 62 | except 63 | on e: Exception do 64 | begin 65 | if DisplayError then ShowMessage('Error: ' + e.Message); 66 | exit(false); 67 | end; 68 | end; 69 | end; 70 | {$ELSE} 71 | {$IFDEF IOS} 72 | var 73 | NSU: NSUrl; 74 | begin 75 | // iOS doesn't like spaces, so URL encode is important. 76 | NSU := StrToNSUrl(TIdURI.URLEncode(URL)); 77 | if SharedApplication.canOpenURL(NSU) then 78 | exit(SharedApplication.openUrl(NSU)) 79 | else 80 | begin 81 | if DisplayError then 82 | ShowMessage('Error: Opening "' + URL + '" not supported.'); 83 | exit(false); 84 | end; 85 | end; 86 | {$ELSE} 87 | begin 88 | raise Exception.Create('Not supported!'); 89 | end; 90 | {$ENDIF IOS} 91 | {$ENDIF ANDROID} 92 | {$ENDIF WINDOWS} 93 | end. 94 | -------------------------------------------------------------------------------- /android-19-headers/java.security.cert.Certificate.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093216 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.cert.Certificate; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.security.PublicKey; 12 | 13 | type 14 | JCertificate = interface; 15 | 16 | JCertificateClass = interface(JObjectClass) 17 | ['{E2B0A336-FAB3-4F78-AE39-CB39E0284880}'] 18 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 19 | function getEncoded : TJavaArray; cdecl; // ()[B A: $401 20 | function getPublicKey : JPublicKey; cdecl; // ()Ljava/security/PublicKey; A: $401 21 | function getType : JString; cdecl; // ()Ljava/lang/String; A: $11 22 | function hashCode : Integer; cdecl; // ()I A: $1 23 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $401 24 | procedure verify(JPublicKeyparam0 : JPublicKey) ; cdecl; overload; // (Ljava/security/PublicKey;)V A: $401 25 | procedure verify(JPublicKeyparam0 : JPublicKey; JStringparam1 : JString) ; cdecl; overload;// (Ljava/security/PublicKey;Ljava/lang/String;)V A: $401 26 | end; 27 | 28 | [JavaSignature('java/security/cert/Certificate$CertificateRep')] 29 | JCertificate = interface(JObject) 30 | ['{9D62BAAE-63F5-41E8-BEAE-356F781A7081}'] 31 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 32 | function getEncoded : TJavaArray; cdecl; // ()[B A: $401 33 | function getPublicKey : JPublicKey; cdecl; // ()Ljava/security/PublicKey; A: $401 34 | function hashCode : Integer; cdecl; // ()I A: $1 35 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $401 36 | procedure verify(JPublicKeyparam0 : JPublicKey) ; cdecl; overload; // (Ljava/security/PublicKey;)V A: $401 37 | procedure verify(JPublicKeyparam0 : JPublicKey; JStringparam1 : JString) ; cdecl; overload;// (Ljava/security/PublicKey;Ljava/lang/String;)V A: $401 38 | end; 39 | 40 | TJCertificate = class(TJavaGenericImport) 41 | end; 42 | 43 | implementation 44 | 45 | end. 46 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.dcerpc.rpc_sid_t.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.dcerpc.rpc_sid_t; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | jcifs.dcerpc.ndr.NdrBuffer; 9 | 10 | type 11 | Jrpc_sid_t = interface; 12 | 13 | Jrpc_sid_tClass = interface(JObjectClass) 14 | ['{FB8AC70B-6946-4A59-970E-8307372A07CF}'] 15 | function _Getidentifier_authority : TJavaArray; cdecl; 16 | function _Getrevision : Byte; cdecl; 17 | function _Getsub_authority : TJavaArray; cdecl; 18 | function _Getsub_authority_count : Byte; cdecl; 19 | function init : Jrpc_sid_t; cdecl; 20 | procedure _Setidentifier_authority(Value : TJavaArray) ; cdecl; 21 | procedure _Setrevision(Value : Byte) ; cdecl; 22 | procedure _Setsub_authority(Value : TJavaArray) ; cdecl; 23 | procedure _Setsub_authority_count(Value : Byte) ; cdecl; 24 | procedure decode(_src : JNdrBuffer) ; cdecl; 25 | procedure encode(_dst : JNdrBuffer) ; cdecl; 26 | property identifier_authority : TJavaArray read _Getidentifier_authority write _Setidentifier_authority; 27 | property revision : Byte read _Getrevision write _Setrevision; 28 | property sub_authority : TJavaArray read _Getsub_authority write _Setsub_authority; 29 | property sub_authority_count : Byte read _Getsub_authority_count write _Setsub_authority_count; 30 | end; 31 | 32 | [JavaSignature('jcifs/dcerpc/rpc_sid_t')] 33 | Jrpc_sid_t = interface(JObject) 34 | ['{48D0C7D1-293F-4600-B473-A792226B30D6}'] 35 | function _Getidentifier_authority : TJavaArray; cdecl; 36 | function _Getrevision : Byte; cdecl; 37 | function _Getsub_authority : TJavaArray; cdecl; 38 | function _Getsub_authority_count : Byte; cdecl; 39 | procedure _Setidentifier_authority(Value : TJavaArray) ; cdecl; 40 | procedure _Setrevision(Value : Byte) ; cdecl; 41 | procedure _Setsub_authority(Value : TJavaArray) ; cdecl; 42 | procedure _Setsub_authority_count(Value : Byte) ; cdecl; 43 | procedure decode(_src : JNdrBuffer) ; cdecl; 44 | procedure encode(_dst : JNdrBuffer) ; cdecl; 45 | property identifier_authority : TJavaArray read _Getidentifier_authority write _Setidentifier_authority; 46 | property revision : Byte read _Getrevision write _Setrevision; 47 | property sub_authority : TJavaArray read _Getsub_authority write _Setsub_authority; 48 | property sub_authority_count : Byte read _Getsub_authority_count write _Setsub_authority_count; 49 | end; 50 | 51 | TJrpc_sid_t = class(TJavaGenericImport) 52 | end; 53 | 54 | implementation 55 | 56 | end. 57 | -------------------------------------------------------------------------------- /SMBFileBrowser.dpr: -------------------------------------------------------------------------------- 1 | program SMBFileBrowser; 2 | 3 | uses 4 | System.StartUpCopy, 5 | FMX.Forms, 6 | Main in 'Main.pas' {Form1}, 7 | jcifs.Config in 'jcifs-1.3.18-headers\jcifs.Config.pas', 8 | jcifs.dcerpc.ndr.NdrBuffer in 'jcifs-1.3.18-headers\jcifs.dcerpc.ndr.NdrBuffer.pas', 9 | jcifs.dcerpc.rpc_sid_t in 'jcifs-1.3.18-headers\jcifs.dcerpc.rpc_sid_t.pas', 10 | jcifs.smb.ACE in 'jcifs-1.3.18-headers\jcifs.smb.ACE.pas', 11 | jcifs.smb.NtlmPasswordAuthentication in 'jcifs-1.3.18-headers\jcifs.smb.NtlmPasswordAuthentication.pas', 12 | jcifs.smb.SID in 'jcifs-1.3.18-headers\jcifs.smb.SID.pas', 13 | jcifs.smb.SmbFile in 'jcifs-1.3.18-headers\jcifs.smb.SmbFile.pas', 14 | jcifs.smb.SmbFileInputStream in 'jcifs-1.3.18-headers\jcifs.smb.SmbFileInputStream.pas', 15 | jcifs.smb.SmbFileOutputStream in 'jcifs-1.3.18-headers\jcifs.smb.SmbFileOutputStream.pas', 16 | android.net.Proxy in 'android-19-headers\android.net.Proxy.pas', 17 | android.widget.Toast in 'android-19-headers\android.widget.Toast.pas', 18 | java.io.FileOutputStream in 'android-19-headers\java.io.FileOutputStream.pas', 19 | java.io.FilterInputStream in 'android-19-headers\java.io.FilterInputStream.pas', 20 | java.io.FilterOutputStream in 'android-19-headers\java.io.FilterOutputStream.pas', 21 | java.lang.JClass in 'android-19-headers\java.lang.JClass.pas', 22 | java.lang.reflect.GenericDeclaration in 'android-19-headers\java.lang.reflect.GenericDeclaration.pas', 23 | java.lang.reflect.JType in 'android-19-headers\java.lang.reflect.JType.pas', 24 | java.net.FileNameMap in 'android-19-headers\java.net.FileNameMap.pas', 25 | java.net.InetAddress in 'android-19-headers\java.net.InetAddress.pas', 26 | java.nio.ByteBuffer in 'android-19-headers\java.nio.ByteBuffer.pas', 27 | java.nio.ByteOrder in 'android-19-headers\java.nio.ByteOrder.pas', 28 | java.nio.channels.FileChannel in 'android-19-headers\java.nio.channels.FileChannel.pas', 29 | java.nio.channels.FileChannel_MapMode in 'android-19-headers\java.nio.channels.FileChannel_MapMode.pas', 30 | java.nio.channels.ReadableByteChannel in 'android-19-headers\java.nio.channels.ReadableByteChannel.pas', 31 | java.nio.channels.WritableByteChannel in 'android-19-headers\java.nio.channels.WritableByteChannel.pas', 32 | java.nio.CharBuffer in 'android-19-headers\java.nio.CharBuffer.pas', 33 | java.nio.DoubleBuffer in 'android-19-headers\java.nio.DoubleBuffer.pas', 34 | java.nio.FloatBuffer in 'android-19-headers\java.nio.FloatBuffer.pas', 35 | java.nio.IntBuffer in 'android-19-headers\java.nio.IntBuffer.pas', 36 | java.nio.LongBuffer in 'android-19-headers\java.nio.LongBuffer.pas', 37 | java.nio.MappedByteBuffer in 'android-19-headers\java.nio.MappedByteBuffer.pas', 38 | java.nio.ShortBuffer in 'android-19-headers\java.nio.ShortBuffer.pas', 39 | java.security.acl.Permission in 'android-19-headers\java.security.acl.Permission.pas', 40 | java.security.cert.Certificate in 'android-19-headers\java.security.cert.Certificate.pas', 41 | java.security.cert.CertPath in 'android-19-headers\java.security.cert.CertPath.pas', 42 | java.security.CodeSigner in 'android-19-headers\java.security.CodeSigner.pas', 43 | java.security.Permission in 'android-19-headers\java.security.Permission.pas', 44 | java.security.Principal in 'android-19-headers\java.security.Principal.pas', 45 | java.security.PublicKey in 'android-19-headers\java.security.PublicKey.pas', 46 | java.security.Timestamp in 'android-19-headers\java.security.Timestamp.pas'; 47 | 48 | {$R *.res} 49 | 50 | begin 51 | Application.Initialize; 52 | Application.CreateForm(TForm1, Form1); 53 | Application.Run; 54 | end. 55 | -------------------------------------------------------------------------------- /android-19-headers/java.security.Permission.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093217 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.security.Permission; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JPermissionCollection = interface; // merged 14 | JPermission = interface; 15 | 16 | JPermissionClass = interface(JObjectClass) 17 | ['{ED2D89DE-E130-42EB-B3A9-68C7A565E569}'] 18 | function getActions : JString; cdecl; // ()Ljava/lang/String; A: $401 19 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $11 20 | function implies(JPermissionparam0 : JPermission) : boolean; cdecl; // (Ljava/security/Permission;)Z A: $401 21 | function init(&name : JString) : JPermission; cdecl; // (Ljava/lang/String;)V A: $1 22 | function newPermissionCollection : JPermissionCollection; cdecl; // ()Ljava/security/PermissionCollection; A: $1 23 | procedure checkGuard(obj : JObject) ; cdecl; // (Ljava/lang/Object;)V A: $1 24 | end; 25 | 26 | [JavaSignature('java/security/Permission')] 27 | JPermission = interface(JObject) 28 | ['{17DC3199-8790-41F5-8FEF-5846DCBD641D}'] 29 | function getActions : JString; cdecl; // ()Ljava/lang/String; A: $401 30 | function implies(JPermissionparam0 : JPermission) : boolean; cdecl; // (Ljava/security/Permission;)Z A: $401 31 | function newPermissionCollection : JPermissionCollection; cdecl; // ()Ljava/security/PermissionCollection; A: $1 32 | procedure checkGuard(obj : JObject) ; cdecl; // (Ljava/lang/Object;)V A: $1 33 | end; 34 | 35 | TJPermission = class(TJavaGenericImport) 36 | end; 37 | 38 | // Merged from: .\android-19\java.security.PermissionCollection.pas 39 | JPermissionCollectionClass = interface(JObjectClass) 40 | ['{A13CF3E5-7626-4F0A-8551-114BE9E6DCCF}'] 41 | function elements : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $401 42 | function implies(JPermissionparam0 : JPermission) : boolean; cdecl; // (Ljava/security/Permission;)Z A: $401 43 | function init : JPermissionCollection; cdecl; // ()V A: $1 44 | function isReadOnly : boolean; cdecl; // ()Z A: $1 45 | procedure add(JPermissionparam0 : JPermission) ; cdecl; // (Ljava/security/Permission;)V A: $401 46 | procedure setReadOnly ; cdecl; // ()V A: $1 47 | end; 48 | 49 | [JavaSignature('java/security/PermissionCollection')] 50 | JPermissionCollection = interface(JObject) 51 | ['{977CC5B0-BC81-46AE-A6F5-AB4AC054C5C3}'] 52 | function elements : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $401 53 | function implies(JPermissionparam0 : JPermission) : boolean; cdecl; // (Ljava/security/Permission;)Z A: $401 54 | function isReadOnly : boolean; cdecl; // ()Z A: $1 55 | procedure add(JPermissionparam0 : JPermission) ; cdecl; // (Ljava/security/Permission;)V A: $401 56 | procedure setReadOnly ; cdecl; // ()V A: $1 57 | end; 58 | 59 | TJPermissionCollection = class(TJavaGenericImport) 60 | end; 61 | 62 | 63 | implementation 64 | 65 | end. 66 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.smb.NtlmPasswordAuthentication.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.smb.NtlmPasswordAuthentication; 2 | 3 | interface 4 | 5 | uses 6 | Androidapi.JNIBridge, 7 | Androidapi.JNI.JavaTypes; 8 | 9 | type 10 | JNtlmPasswordAuthentication = interface; 11 | 12 | JNtlmPasswordAuthenticationClass = interface(JObjectClass) 13 | ['{1B7C2BB2-F3D5-4EA2-A510-D1E9F7191641}'] 14 | function _GetANONYMOUS : JNtlmPasswordAuthentication; cdecl; 15 | function equals(obj : JObject) : boolean; cdecl; 16 | function getAnsiHash(challenge : TJavaArray) : TJavaArray; cdecl; 17 | function getDomain : JString; cdecl; 18 | function getLMv2Response(domain : JString; user : JString; password : JString; challenge : TJavaArray; clientChallenge : TJavaArray) : TJavaArray; cdecl; overload; 19 | function getLMv2Response(responseKeyLM : TJavaArray; serverChallenge : TJavaArray; clientChallenge : TJavaArray) : TJavaArray; cdecl; overload; 20 | function getNTLM2Response(nTOWFv1 : TJavaArray; serverChallenge : TJavaArray; clientChallenge : TJavaArray) : TJavaArray; cdecl; 21 | function getNTLMResponse(password : JString; challenge : TJavaArray) : TJavaArray; cdecl; 22 | function getNTLMv2Response(responseKeyNT : TJavaArray; serverChallenge : TJavaArray; clientChallenge : TJavaArray; nanos1601 : Int64; targetInfo : TJavaArray) : TJavaArray; cdecl; 23 | function getName : JString; cdecl; 24 | function getPassword : JString; cdecl; 25 | function getPreNTLMResponse(password : JString; challenge : TJavaArray) : TJavaArray; cdecl; 26 | function getSigningKey(challenge : TJavaArray) : TJavaArray; cdecl; 27 | function getUnicodeHash(challenge : TJavaArray) : TJavaArray; cdecl; 28 | function getUserSessionKey(challenge : TJavaArray) : TJavaArray; cdecl; overload; 29 | function getUsername : JString; cdecl; 30 | function hashCode : Integer; cdecl; 31 | {class} function init(domain : JString; username : JString; challenge : TJavaArray; ansiHash : TJavaArray; unicodeHash : TJavaArray) : JNtlmPasswordAuthentication; cdecl; overload; 32 | {class} function init(domain : JString; username : JString; password : JString) : JNtlmPasswordAuthentication; cdecl; overload; 33 | {class} function init(userInfo : JString) : JNtlmPasswordAuthentication; cdecl; overload; 34 | function nTOWFv1(password : JString) : TJavaArray; cdecl; 35 | function nTOWFv2(domain : JString; username : JString; password : JString) : TJavaArray; cdecl; 36 | function toString : JString; cdecl; 37 | property ANONYMOUS : JNtlmPasswordAuthentication read _GetANONYMOUS; 38 | end; 39 | 40 | [JavaSignature('jcifs/smb/NtlmPasswordAuthentication')] 41 | JNtlmPasswordAuthentication = interface(JObject) 42 | ['{82671B68-5D9E-4B0F-8E6C-6C3F0FA12CD9}'] 43 | function equals(obj : JObject) : boolean; cdecl; 44 | function getAnsiHash(challenge : TJavaArray) : TJavaArray; cdecl; 45 | function getDomain : JString; cdecl; 46 | function getName : JString; cdecl; 47 | function getPassword : JString; cdecl; 48 | function getSigningKey(challenge : TJavaArray) : TJavaArray; cdecl; 49 | function getUnicodeHash(challenge : TJavaArray) : TJavaArray; cdecl; 50 | function getUserSessionKey(challenge : TJavaArray) : TJavaArray; cdecl; overload; 51 | function getUsername : JString; cdecl; 52 | function hashCode : Integer; cdecl; 53 | function toString : JString; cdecl; 54 | end; 55 | 56 | TJNtlmPasswordAuthentication = class(TJavaGenericImport) 57 | end; 58 | 59 | const 60 | TJNtlmPasswordAuthenticationBLANK = ''; 61 | 62 | implementation 63 | 64 | end. 65 | -------------------------------------------------------------------------------- /android-19-headers/android.widget.Toast.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093137 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit android.widget.Toast; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | Androidapi.JNI.GraphicsContentViewText; 12 | 13 | type 14 | JToast = interface; 15 | 16 | JToastClass = interface(JObjectClass) 17 | ['{CA99217E-4BA8-4AC3-8697-E1E517299684}'] 18 | function _GetLENGTH_LONG : Integer; cdecl; // A: $19 19 | function _GetLENGTH_SHORT : Integer; cdecl; // A: $19 20 | function getDuration : Integer; cdecl; // ()I A: $1 21 | function getGravity : Integer; cdecl; // ()I A: $1 22 | function getHorizontalMargin : Single; cdecl; // ()F A: $1 23 | function getVerticalMargin : Single; cdecl; // ()F A: $1 24 | function getView : JView; cdecl; // ()Landroid/view/View; A: $1 25 | function getXOffset : Integer; cdecl; // ()I A: $1 26 | function getYOffset : Integer; cdecl; // ()I A: $1 27 | function init(context : JContext) : JToast; cdecl; // (Landroid/content/Context;)V A: $1 28 | function makeText(context : JContext; resId : Integer; duration : Integer) : JToast; cdecl; overload;// (Landroid/content/Context;II)Landroid/widget/Toast; A: $9 29 | function makeText(context : JContext; text : JCharSequence; duration : Integer) : JToast; cdecl; overload;// (Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; A: $9 30 | procedure cancel ; cdecl; // ()V A: $1 31 | procedure setDuration(duration : Integer) ; cdecl; // (I)V A: $1 32 | procedure setGravity(gravity : Integer; xOffset : Integer; yOffset : Integer) ; cdecl;// (III)V A: $1 33 | procedure setMargin(horizontalMargin : Single; verticalMargin : Single) ; cdecl;// (FF)V A: $1 34 | procedure setText(resId : Integer) ; cdecl; overload; // (I)V A: $1 35 | procedure setText(s : JCharSequence) ; cdecl; overload; // (Ljava/lang/CharSequence;)V A: $1 36 | procedure setView(view : JView) ; cdecl; // (Landroid/view/View;)V A: $1 37 | procedure show ; cdecl; // ()V A: $1 38 | property LENGTH_LONG : Integer read _GetLENGTH_LONG; // I A: $19 39 | property LENGTH_SHORT : Integer read _GetLENGTH_SHORT; // I A: $19 40 | end; 41 | 42 | [JavaSignature('android/widget/Toast')] 43 | JToast = interface(JObject) 44 | ['{2AB558C6-A272-4768-9583-1B5AA8F03079}'] 45 | function getDuration : Integer; cdecl; // ()I A: $1 46 | function getGravity : Integer; cdecl; // ()I A: $1 47 | function getHorizontalMargin : Single; cdecl; // ()F A: $1 48 | function getVerticalMargin : Single; cdecl; // ()F A: $1 49 | function getView : JView; cdecl; // ()Landroid/view/View; A: $1 50 | function getXOffset : Integer; cdecl; // ()I A: $1 51 | function getYOffset : Integer; cdecl; // ()I A: $1 52 | procedure cancel ; cdecl; // ()V A: $1 53 | procedure setDuration(duration : Integer) ; cdecl; // (I)V A: $1 54 | procedure setGravity(gravity : Integer; xOffset : Integer; yOffset : Integer) ; cdecl;// (III)V A: $1 55 | procedure setMargin(horizontalMargin : Single; verticalMargin : Single) ; cdecl;// (FF)V A: $1 56 | procedure setText(resId : Integer) ; cdecl; overload; // (I)V A: $1 57 | procedure setText(s : JCharSequence) ; cdecl; overload; // (Ljava/lang/CharSequence;)V A: $1 58 | procedure setView(view : JView) ; cdecl; // (Landroid/view/View;)V A: $1 59 | procedure show ; cdecl; // ()V A: $1 60 | end; 61 | 62 | TJToast = class(TJavaGenericImport) 63 | end; 64 | 65 | const 66 | TJToastLENGTH_SHORT = 0; 67 | TJToastLENGTH_LONG = 1; 68 | 69 | implementation 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.smb.ACE.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.smb.ACE; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | jcifs.smb.SID; 9 | 10 | type 11 | JACE = interface; 12 | 13 | JACEClass = interface(JObjectClass) 14 | ['{E619581E-01AF-4868-AE2D-8729234010BC}'] 15 | function _GetDELETE : Integer; cdecl; 16 | function _GetFILE_APPEND_DATA : Integer; cdecl; 17 | function _GetFILE_DELETE : Integer; cdecl; 18 | function _GetFILE_EXECUTE : Integer; cdecl; 19 | function _GetFILE_READ_ATTRIBUTES : Integer; cdecl; 20 | function _GetFILE_READ_DATA : Integer; cdecl; 21 | function _GetFILE_READ_EA : Integer; cdecl; 22 | function _GetFILE_WRITE_ATTRIBUTES : Integer; cdecl; 23 | function _GetFILE_WRITE_DATA : Integer; cdecl; 24 | function _GetFILE_WRITE_EA : Integer; cdecl; 25 | function _GetFLAGS_CONTAINER_INHERIT : Integer; cdecl; 26 | function _GetFLAGS_INHERITED : Integer; cdecl; 27 | function _GetFLAGS_INHERIT_ONLY : Integer; cdecl; 28 | function _GetFLAGS_NO_PROPAGATE : Integer; cdecl; 29 | function _GetFLAGS_OBJECT_INHERIT : Integer; cdecl; 30 | function _GetGENERIC_ALL : Integer; cdecl; 31 | function _GetGENERIC_EXECUTE : Integer; cdecl; 32 | function _GetGENERIC_READ : Integer; cdecl; 33 | function _GetGENERIC_WRITE : Integer; cdecl; 34 | function _GetREAD_CONTROL : Integer; cdecl; 35 | function _GetSYNCHRONIZE : Integer; cdecl; 36 | function _GetWRITE_DAC : Integer; cdecl; 37 | function _GetWRITE_OWNER : Integer; cdecl; 38 | function getAccessMask : Integer; cdecl; 39 | function getApplyToText : JString; cdecl; 40 | function getFlags : Integer; cdecl; 41 | function getSID : JSID; cdecl; 42 | function init : JACE; cdecl; 43 | function isAllow : boolean; cdecl; 44 | function isInherited : boolean; cdecl; 45 | function toString : JString; cdecl; 46 | property DELETE : Integer read _GetDELETE; 47 | property FILE_APPEND_DATA : Integer read _GetFILE_APPEND_DATA; 48 | property FILE_DELETE : Integer read _GetFILE_DELETE; 49 | property FILE_EXECUTE : Integer read _GetFILE_EXECUTE; 50 | property FILE_READ_ATTRIBUTES : Integer read _GetFILE_READ_ATTRIBUTES; 51 | property FILE_READ_DATA : Integer read _GetFILE_READ_DATA; 52 | property FILE_READ_EA : Integer read _GetFILE_READ_EA; 53 | property FILE_WRITE_ATTRIBUTES : Integer read _GetFILE_WRITE_ATTRIBUTES; 54 | property FILE_WRITE_DATA : Integer read _GetFILE_WRITE_DATA; 55 | property FILE_WRITE_EA : Integer read _GetFILE_WRITE_EA; 56 | property FLAGS_CONTAINER_INHERIT : Integer read _GetFLAGS_CONTAINER_INHERIT; 57 | property FLAGS_INHERITED : Integer read _GetFLAGS_INHERITED; 58 | property FLAGS_INHERIT_ONLY : Integer read _GetFLAGS_INHERIT_ONLY; 59 | property FLAGS_NO_PROPAGATE : Integer read _GetFLAGS_NO_PROPAGATE; 60 | property FLAGS_OBJECT_INHERIT : Integer read _GetFLAGS_OBJECT_INHERIT; 61 | property GENERIC_ALL : Integer read _GetGENERIC_ALL; 62 | property GENERIC_EXECUTE : Integer read _GetGENERIC_EXECUTE; 63 | property GENERIC_READ : Integer read _GetGENERIC_READ; 64 | property GENERIC_WRITE : Integer read _GetGENERIC_WRITE; 65 | property READ_CONTROL : Integer read _GetREAD_CONTROL; 66 | property SYNCHRONIZE : Integer read _GetSYNCHRONIZE; 67 | property WRITE_DAC : Integer read _GetWRITE_DAC; 68 | property WRITE_OWNER : Integer read _GetWRITE_OWNER; 69 | end; 70 | 71 | [JavaSignature('jcifs/smb/ACE')] 72 | JACE = interface(JObject) 73 | ['{EEEB58D5-5BD6-4EE7-882F-947D985E8A5D}'] 74 | function getAccessMask : Integer; cdecl; 75 | function getApplyToText : JString; cdecl; 76 | function getFlags : Integer; cdecl; 77 | function getSID : JSID; cdecl; 78 | function isAllow : boolean; cdecl; 79 | function isInherited : boolean; cdecl; 80 | function toString : JString; cdecl; 81 | end; 82 | 83 | TJACE = class(TJavaGenericImport) 84 | end; 85 | 86 | const 87 | TJACEFILE_READ_DATA = 1; 88 | TJACEFILE_WRITE_DATA = 2; 89 | TJACEFILE_APPEND_DATA = 4; 90 | TJACEFILE_READ_EA = 8; 91 | TJACEFILE_WRITE_EA = 16; 92 | TJACEFILE_EXECUTE = 32; 93 | TJACEFILE_DELETE = 64; 94 | TJACEFILE_READ_ATTRIBUTES = 128; 95 | TJACEFILE_WRITE_ATTRIBUTES = 256; 96 | TJACEDELETE = 65536; 97 | TJACEREAD_CONTROL = 131072; 98 | TJACEWRITE_DAC = 262144; 99 | TJACEWRITE_OWNER = 524288; 100 | TJACESYNCHRONIZE = 1048576; 101 | TJACEGENERIC_ALL = 268435456; 102 | TJACEGENERIC_EXECUTE = 536870912; 103 | TJACEGENERIC_WRITE = 1073741824; 104 | TJACEGENERIC_READ = -2147483648; 105 | TJACEFLAGS_OBJECT_INHERIT = 1; 106 | TJACEFLAGS_CONTAINER_INHERIT = 2; 107 | TJACEFLAGS_NO_PROPAGATE = 4; 108 | TJACEFLAGS_INHERIT_ONLY = 8; 109 | TJACEFLAGS_INHERITED = 16; 110 | 111 | implementation 112 | 113 | end. 114 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.smb.SID.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.smb.SID; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | jcifs.smb.NtlmPasswordAuthentication, 9 | //jcifs.dcerpc.DcerpcHandle, 10 | //jcifs.dcerpc.msrpc.LsaPolicyHandle, 11 | jcifs.dcerpc.rpc_sid_t; 12 | // jcifs.dcerpc.msrpc.SamrDomainHandle; 13 | 14 | type 15 | JSID = interface; 16 | 17 | JSIDClass = interface(JObjectClass) 18 | ['{F919B937-574B-477B-8800-3257FE3D3531}'] 19 | function _GetCREATOR_OWNER : JSID; cdecl; 20 | function _GetEVERYONE : JSID; cdecl; 21 | function _GetSID_FLAG_RESOLVE_SIDS : Integer; cdecl; 22 | function _GetSID_TYPE_ALIAS : Integer; cdecl; 23 | function _GetSID_TYPE_DELETED : Integer; cdecl; 24 | function _GetSID_TYPE_DOMAIN : Integer; cdecl; 25 | function _GetSID_TYPE_DOM_GRP : Integer; cdecl; 26 | function _GetSID_TYPE_INVALID : Integer; cdecl; 27 | function _GetSID_TYPE_UNKNOWN : Integer; cdecl; 28 | function _GetSID_TYPE_USER : Integer; cdecl; 29 | function _GetSID_TYPE_USE_NONE : Integer; cdecl; 30 | function _GetSID_TYPE_WKN_GRP : Integer; cdecl; 31 | function _GetSYSTEM : JSID; cdecl; 32 | function equals(obj : JObject) : boolean; cdecl; 33 | function getAccountName : JString; cdecl; 34 | function getDomainName : JString; cdecl; 35 | function getDomainSid : JSID; cdecl; 36 | function getGroupMemberSids(authorityServerName : JString; auth : JNtlmPasswordAuthentication; flags : Integer) : TJavaArray; cdecl; 37 | function getRid : Integer; cdecl; 38 | function getServerSid(server : JString; auth : JNtlmPasswordAuthentication) : JSID; cdecl; 39 | function getType : Integer; cdecl; 40 | function getTypeText : JString; cdecl; 41 | function hashCode : Integer; cdecl; 42 | function init(domsid : JSID; rid : Integer) : JSID; cdecl; overload; 43 | function init(sid : Jrpc_sid_t; &type : Integer; domainName : JString; acctName : JString; decrementAuthority : boolean) : JSID; cdecl; overload; 44 | function init(src : TJavaArray; si : Integer) : JSID; cdecl; overload; 45 | function init(textual : JString) : JSID; cdecl; overload; 46 | function toByteArray(sid : Jrpc_sid_t) : TJavaArray; cdecl; 47 | function toDisplayString : JString; cdecl; 48 | function toString : JString; cdecl; 49 | procedure resolve(authorityServerName : JString; auth : JNtlmPasswordAuthentication) ; cdecl; 50 | procedure resolveSids(authorityServerName : JString; auth : JNtlmPasswordAuthentication; sids : TJavaArray) ; cdecl; overload; 51 | procedure resolveSids(authorityServerName : JString; auth : JNtlmPasswordAuthentication; sids : TJavaArray; offset : Integer; length : Integer) ; cdecl; overload; 52 | property CREATOR_OWNER : JSID read _GetCREATOR_OWNER; 53 | property EVERYONE : JSID read _GetEVERYONE; 54 | property SID_FLAG_RESOLVE_SIDS : Integer read _GetSID_FLAG_RESOLVE_SIDS; 55 | property SID_TYPE_ALIAS : Integer read _GetSID_TYPE_ALIAS; 56 | property SID_TYPE_DELETED : Integer read _GetSID_TYPE_DELETED; 57 | property SID_TYPE_DOMAIN : Integer read _GetSID_TYPE_DOMAIN; 58 | property SID_TYPE_DOM_GRP : Integer read _GetSID_TYPE_DOM_GRP; 59 | property SID_TYPE_INVALID : Integer read _GetSID_TYPE_INVALID; 60 | property SID_TYPE_UNKNOWN : Integer read _GetSID_TYPE_UNKNOWN; 61 | property SID_TYPE_USER : Integer read _GetSID_TYPE_USER; 62 | property SID_TYPE_USE_NONE : Integer read _GetSID_TYPE_USE_NONE; 63 | property SID_TYPE_WKN_GRP : Integer read _GetSID_TYPE_WKN_GRP; 64 | property SYSTEM : JSID read _GetSYSTEM; 65 | end; 66 | 67 | [JavaSignature('jcifs/smb/SID')] 68 | JSID = interface(JObject) 69 | ['{38625257-001C-4DA5-998D-4FFD3946D8C1}'] 70 | function equals(obj : JObject) : boolean; cdecl; 71 | function getAccountName : JString; cdecl; 72 | function getDomainName : JString; cdecl; 73 | function getDomainSid : JSID; cdecl; 74 | function getGroupMemberSids(authorityServerName : JString; auth : JNtlmPasswordAuthentication; flags : Integer) : TJavaArray; cdecl; 75 | function getRid : Integer; cdecl; 76 | function getType : Integer; cdecl; 77 | function getTypeText : JString; cdecl; 78 | function hashCode : Integer; cdecl; 79 | function toDisplayString : JString; cdecl; 80 | function toString : JString; cdecl; 81 | procedure resolve(authorityServerName : JString; auth : JNtlmPasswordAuthentication) ; cdecl; 82 | end; 83 | 84 | TJSID = class(TJavaGenericImport) 85 | end; 86 | 87 | const 88 | TJSIDSID_TYPE_USE_NONE = 0; 89 | TJSIDSID_TYPE_USER = 1; 90 | TJSIDSID_TYPE_DOM_GRP = 2; 91 | TJSIDSID_TYPE_DOMAIN = 3; 92 | TJSIDSID_TYPE_ALIAS = 4; 93 | TJSIDSID_TYPE_WKN_GRP = 5; 94 | TJSIDSID_TYPE_DELETED = 6; 95 | TJSIDSID_TYPE_INVALID = 7; 96 | TJSIDSID_TYPE_UNKNOWN = 8; 97 | TJSIDSID_FLAG_RESOLVE_SIDS = 1; 98 | 99 | implementation 100 | 101 | end. 102 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.dcerpc.ndr.NdrBuffer.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.dcerpc.ndr.NdrBuffer; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes; 8 | 9 | type 10 | JNdrBuffer = interface; 11 | 12 | JNdrBufferClass = interface(JObjectClass) 13 | ['{82620D78-8086-4E11-871F-9DD9DBF32F2A}'] 14 | function _Getbuf : TJavaArray; cdecl; 15 | function _Getdeferred : JNdrBuffer; cdecl; 16 | function _Getindex : Integer; cdecl; 17 | function _Getlength : Integer; cdecl; 18 | function _Getstart : Integer; cdecl; 19 | function align(boundary : Integer) : Integer; cdecl; overload; 20 | function align(boundary : Integer; value : Byte) : Integer; cdecl; overload; 21 | function dec_ndr_hyper : Int64; cdecl; 22 | function dec_ndr_long : Integer; cdecl; 23 | function dec_ndr_short : Integer; cdecl; 24 | function dec_ndr_small : Integer; cdecl; 25 | function dec_ndr_string : JString; cdecl; 26 | function derive(idx : Integer) : JNdrBuffer; cdecl; 27 | function getBuffer : TJavaArray; cdecl; 28 | function getCapacity : Integer; cdecl; 29 | function getIndex : Integer; cdecl; 30 | function getLength : Integer; cdecl; 31 | function getTailSpace : Integer; cdecl; 32 | function init(buf : TJavaArray; start : Integer) : JNdrBuffer; cdecl; 33 | function toString : JString; cdecl; 34 | procedure _Setbuf(Value : TJavaArray) ; cdecl; 35 | procedure _Setdeferred(Value : JNdrBuffer) ; cdecl; 36 | procedure _Setindex(Value : Integer) ; cdecl; 37 | procedure _Setlength(Value : Integer) ; cdecl; 38 | procedure _Setstart(Value : Integer) ; cdecl; 39 | procedure advance(n : Integer) ; cdecl; 40 | procedure enc_ndr_hyper(h : Int64) ; cdecl; 41 | procedure enc_ndr_long(l : Integer) ; cdecl; 42 | procedure enc_ndr_referent(obj : JObject; &type : Integer) ; cdecl; 43 | procedure enc_ndr_short(s : Integer) ; cdecl; 44 | procedure enc_ndr_small(s : Integer) ; cdecl; 45 | procedure enc_ndr_string(s : JString) ; cdecl; 46 | procedure readOctetArray(b : TJavaArray; i : Integer; l : Integer) ; cdecl; 47 | procedure reset ; cdecl; 48 | procedure setIndex(&index : Integer) ; cdecl; 49 | procedure setLength(length : Integer) ; cdecl; 50 | procedure writeOctetArray(b : TJavaArray; i : Integer; l : Integer) ; cdecl; 51 | property &index : Integer read _Getindex write _Setindex; 52 | property buf : TJavaArray read _Getbuf write _Setbuf; 53 | property deferred : JNdrBuffer read _Getdeferred write _Setdeferred; 54 | property length : Integer read _Getlength write _Setlength; 55 | property start : Integer read _Getstart write _Setstart; 56 | end; 57 | 58 | [JavaSignature('jcifs/dcerpc/ndr/NdrBuffer$Entry')] 59 | JNdrBuffer = interface(JObject) 60 | ['{E09B3097-E092-494A-9B01-BB4CA9011312}'] 61 | function _Getbuf : TJavaArray; cdecl; 62 | function _Getdeferred : JNdrBuffer; cdecl; 63 | function _Getindex : Integer; cdecl; 64 | function _Getlength : Integer; cdecl; 65 | function _Getstart : Integer; cdecl; 66 | function align(boundary : Integer) : Integer; cdecl; overload; 67 | function align(boundary : Integer; value : Byte) : Integer; cdecl; overload; 68 | function dec_ndr_hyper : Int64; cdecl; 69 | function dec_ndr_long : Integer; cdecl; 70 | function dec_ndr_short : Integer; cdecl; 71 | function dec_ndr_small : Integer; cdecl; 72 | function dec_ndr_string : JString; cdecl; 73 | function derive(idx : Integer) : JNdrBuffer; cdecl; 74 | function getBuffer : TJavaArray; cdecl; 75 | function getCapacity : Integer; cdecl; 76 | function getIndex : Integer; cdecl; 77 | function getLength : Integer; cdecl; 78 | function getTailSpace : Integer; cdecl; 79 | function toString : JString; cdecl; 80 | procedure _Setbuf(Value : TJavaArray) ; cdecl; 81 | procedure _Setdeferred(Value : JNdrBuffer) ; cdecl; 82 | procedure _Setindex(Value : Integer) ; cdecl; 83 | procedure _Setlength(Value : Integer) ; cdecl; 84 | procedure _Setstart(Value : Integer) ; cdecl; 85 | procedure advance(n : Integer) ; cdecl; 86 | procedure enc_ndr_hyper(h : Int64) ; cdecl; 87 | procedure enc_ndr_long(l : Integer) ; cdecl; 88 | procedure enc_ndr_referent(obj : JObject; &type : Integer) ; cdecl; 89 | procedure enc_ndr_short(s : Integer) ; cdecl; 90 | procedure enc_ndr_small(s : Integer) ; cdecl; 91 | procedure enc_ndr_string(s : JString) ; cdecl; 92 | procedure readOctetArray(b : TJavaArray; i : Integer; l : Integer) ; cdecl; 93 | procedure reset ; cdecl; 94 | procedure setIndex(&index : Integer) ; cdecl; 95 | procedure setLength(length : Integer) ; cdecl; 96 | procedure writeOctetArray(b : TJavaArray; i : Integer; l : Integer) ; cdecl; 97 | property &index : Integer read _Getindex write _Setindex; 98 | property buf : TJavaArray read _Getbuf write _Setbuf; 99 | property deferred : JNdrBuffer read _Getdeferred write _Setdeferred; 100 | property length : Integer read _Getlength write _Setlength; 101 | property start : Integer read _Getstart write _Setstart; 102 | end; 103 | 104 | TJNdrBuffer = class(TJavaGenericImport) 105 | end; 106 | 107 | implementation 108 | 109 | end. 110 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.IntBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.IntBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteOrder; 12 | 13 | type 14 | JIntBuffer = interface; 15 | 16 | JIntBufferClass = interface(JObjectClass) 17 | ['{D66F0232-87B4-41C4-9BEB-9FF843A443F2}'] 18 | function &array : TJavaArray; cdecl; // ()[I A: $11 19 | function allocate(capacity : Integer) : JIntBuffer; cdecl; // (I)Ljava/nio/IntBuffer; A: $9 20 | function arrayOffset : Integer; cdecl; // ()I A: $11 21 | function asReadOnlyBuffer : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 22 | function compact : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 23 | function compareTo(otherBuffer : JIntBuffer) : Integer; cdecl; // (Ljava/nio/IntBuffer;)I A: $1 24 | function duplicate : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 25 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 26 | function get : Integer; cdecl; overload; // ()I A: $401 27 | function get(Integerparam0 : Integer) : Integer; cdecl; overload; // (I)I A: $401 28 | function get(dst : TJavaArray) : JIntBuffer; cdecl; overload; // ([I)Ljava/nio/IntBuffer; A: $1 29 | function get(dst : TJavaArray; dstOffset : Integer; intCount : Integer) : JIntBuffer; cdecl; overload;// ([III)Ljava/nio/IntBuffer; A: $1 30 | function hasArray : boolean; cdecl; // ()Z A: $11 31 | function hashCode : Integer; cdecl; // ()I A: $1 32 | function isDirect : boolean; cdecl; // ()Z A: $401 33 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 34 | function put(Integerparam0 : Integer) : JIntBuffer; cdecl; overload; // (I)Ljava/nio/IntBuffer; A: $401 35 | function put(Integerparam0 : Integer; Integerparam1 : Integer) : JIntBuffer; cdecl; overload;// (II)Ljava/nio/IntBuffer; A: $401 36 | function put(src : JIntBuffer) : JIntBuffer; cdecl; overload; // (Ljava/nio/IntBuffer;)Ljava/nio/IntBuffer; A: $1 37 | function put(src : TJavaArray) : JIntBuffer; cdecl; overload; // ([I)Ljava/nio/IntBuffer; A: $11 38 | function put(src : TJavaArray; srcOffset : Integer; intCount : Integer) : JIntBuffer; cdecl; overload;// ([III)Ljava/nio/IntBuffer; A: $1 39 | function slice : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 40 | function wrap(&array : TJavaArray) : JIntBuffer; cdecl; overload; // ([I)Ljava/nio/IntBuffer; A: $9 41 | function wrap(&array : TJavaArray; start : Integer; intCount : Integer) : JIntBuffer; cdecl; overload;// ([III)Ljava/nio/IntBuffer; A: $9 42 | end; 43 | 44 | [JavaSignature('java/nio/IntBuffer')] 45 | JIntBuffer = interface(JObject) 46 | ['{9C8FA97C-45DD-4D4E-B1FE-1D7429966D2A}'] 47 | function asReadOnlyBuffer : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 48 | function compact : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 49 | function compareTo(otherBuffer : JIntBuffer) : Integer; cdecl; // (Ljava/nio/IntBuffer;)I A: $1 50 | function duplicate : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 51 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 52 | function get : Integer; cdecl; overload; // ()I A: $401 53 | function get(Integerparam0 : Integer) : Integer; cdecl; overload; // (I)I A: $401 54 | function get(dst : TJavaArray) : JIntBuffer; cdecl; overload; // ([I)Ljava/nio/IntBuffer; A: $1 55 | function get(dst : TJavaArray; dstOffset : Integer; intCount : Integer) : JIntBuffer; cdecl; overload;// ([III)Ljava/nio/IntBuffer; A: $1 56 | function hashCode : Integer; cdecl; // ()I A: $1 57 | function isDirect : boolean; cdecl; // ()Z A: $401 58 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 59 | function put(Integerparam0 : Integer) : JIntBuffer; cdecl; overload; // (I)Ljava/nio/IntBuffer; A: $401 60 | function put(Integerparam0 : Integer; Integerparam1 : Integer) : JIntBuffer; cdecl; overload;// (II)Ljava/nio/IntBuffer; A: $401 61 | function put(src : JIntBuffer) : JIntBuffer; cdecl; overload; // (Ljava/nio/IntBuffer;)Ljava/nio/IntBuffer; A: $1 62 | function put(src : TJavaArray; srcOffset : Integer; intCount : Integer) : JIntBuffer; cdecl; overload;// ([III)Ljava/nio/IntBuffer; A: $1 63 | function slice : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 64 | end; 65 | 66 | TJIntBuffer = class(TJavaGenericImport) 67 | end; 68 | 69 | implementation 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.LongBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093208 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.LongBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteOrder; 12 | 13 | type 14 | JLongBuffer = interface; 15 | 16 | JLongBufferClass = interface(JObjectClass) 17 | ['{119D4884-9CDA-447B-8D0F-09D06672C5B8}'] 18 | function &array : TJavaArray; cdecl; // ()[J A: $11 19 | function allocate(capacity : Integer) : JLongBuffer; cdecl; // (I)Ljava/nio/LongBuffer; A: $9 20 | function arrayOffset : Integer; cdecl; // ()I A: $11 21 | function asReadOnlyBuffer : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 22 | function compact : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 23 | function compareTo(otherBuffer : JLongBuffer) : Integer; cdecl; // (Ljava/nio/LongBuffer;)I A: $1 24 | function duplicate : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 25 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 26 | function get : Int64; cdecl; overload; // ()J A: $401 27 | function get(Integerparam0 : Integer) : Int64; cdecl; overload; // (I)J A: $401 28 | function get(dst : TJavaArray) : JLongBuffer; cdecl; overload; // ([J)Ljava/nio/LongBuffer; A: $1 29 | function get(dst : TJavaArray; dstOffset : Integer; longCount : Integer) : JLongBuffer; cdecl; overload;// ([JII)Ljava/nio/LongBuffer; A: $1 30 | function hasArray : boolean; cdecl; // ()Z A: $11 31 | function hashCode : Integer; cdecl; // ()I A: $1 32 | function isDirect : boolean; cdecl; // ()Z A: $401 33 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 34 | function put(Int64param0 : Int64) : JLongBuffer; cdecl; overload; // (J)Ljava/nio/LongBuffer; A: $401 35 | function put(Integerparam0 : Integer; Int64param1 : Int64) : JLongBuffer; cdecl; overload;// (IJ)Ljava/nio/LongBuffer; A: $401 36 | function put(src : JLongBuffer) : JLongBuffer; cdecl; overload; // (Ljava/nio/LongBuffer;)Ljava/nio/LongBuffer; A: $1 37 | function put(src : TJavaArray) : JLongBuffer; cdecl; overload; // ([J)Ljava/nio/LongBuffer; A: $11 38 | function put(src : TJavaArray; srcOffset : Integer; longCount : Integer) : JLongBuffer; cdecl; overload;// ([JII)Ljava/nio/LongBuffer; A: $1 39 | function slice : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 40 | function wrap(&array : TJavaArray) : JLongBuffer; cdecl; overload; // ([J)Ljava/nio/LongBuffer; A: $9 41 | function wrap(&array : TJavaArray; start : Integer; longCount : Integer) : JLongBuffer; cdecl; overload;// ([JII)Ljava/nio/LongBuffer; A: $9 42 | end; 43 | 44 | [JavaSignature('java/nio/LongBuffer')] 45 | JLongBuffer = interface(JObject) 46 | ['{0BA5D2D5-80D5-463E-B248-48B004084916}'] 47 | function asReadOnlyBuffer : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 48 | function compact : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 49 | function compareTo(otherBuffer : JLongBuffer) : Integer; cdecl; // (Ljava/nio/LongBuffer;)I A: $1 50 | function duplicate : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 51 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 52 | function get : Int64; cdecl; overload; // ()J A: $401 53 | function get(Integerparam0 : Integer) : Int64; cdecl; overload; // (I)J A: $401 54 | function get(dst : TJavaArray) : JLongBuffer; cdecl; overload; // ([J)Ljava/nio/LongBuffer; A: $1 55 | function get(dst : TJavaArray; dstOffset : Integer; longCount : Integer) : JLongBuffer; cdecl; overload;// ([JII)Ljava/nio/LongBuffer; A: $1 56 | function hashCode : Integer; cdecl; // ()I A: $1 57 | function isDirect : boolean; cdecl; // ()Z A: $401 58 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 59 | function put(Int64param0 : Int64) : JLongBuffer; cdecl; overload; // (J)Ljava/nio/LongBuffer; A: $401 60 | function put(Integerparam0 : Integer; Int64param1 : Int64) : JLongBuffer; cdecl; overload;// (IJ)Ljava/nio/LongBuffer; A: $401 61 | function put(src : JLongBuffer) : JLongBuffer; cdecl; overload; // (Ljava/nio/LongBuffer;)Ljava/nio/LongBuffer; A: $1 62 | function put(src : TJavaArray; srcOffset : Integer; longCount : Integer) : JLongBuffer; cdecl; overload;// ([JII)Ljava/nio/LongBuffer; A: $1 63 | function slice : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 64 | end; 65 | 66 | TJLongBuffer = class(TJavaGenericImport) 67 | end; 68 | 69 | implementation 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.FloatBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093208 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.FloatBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteOrder; 12 | 13 | type 14 | JFloatBuffer = interface; 15 | 16 | JFloatBufferClass = interface(JObjectClass) 17 | ['{F95A7F86-479C-4979-8A27-030C9A348DE4}'] 18 | function &array : TJavaArray; cdecl; // ()[F A: $11 19 | function allocate(capacity : Integer) : JFloatBuffer; cdecl; // (I)Ljava/nio/FloatBuffer; A: $9 20 | function arrayOffset : Integer; cdecl; // ()I A: $11 21 | function asReadOnlyBuffer : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 22 | function compact : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 23 | function compareTo(otherBuffer : JFloatBuffer) : Integer; cdecl; // (Ljava/nio/FloatBuffer;)I A: $1 24 | function duplicate : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 25 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 26 | function get : Single; cdecl; overload; // ()F A: $401 27 | function get(Integerparam0 : Integer) : Single; cdecl; overload; // (I)F A: $401 28 | function get(dst : TJavaArray) : JFloatBuffer; cdecl; overload; // ([F)Ljava/nio/FloatBuffer; A: $1 29 | function get(dst : TJavaArray; dstOffset : Integer; floatCount : Integer) : JFloatBuffer; cdecl; overload;// ([FII)Ljava/nio/FloatBuffer; A: $1 30 | function hasArray : boolean; cdecl; // ()Z A: $11 31 | function hashCode : Integer; cdecl; // ()I A: $1 32 | function isDirect : boolean; cdecl; // ()Z A: $401 33 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 34 | function put(Integerparam0 : Integer; Singleparam1 : Single) : JFloatBuffer; cdecl; overload;// (IF)Ljava/nio/FloatBuffer; A: $401 35 | function put(Singleparam0 : Single) : JFloatBuffer; cdecl; overload; // (F)Ljava/nio/FloatBuffer; A: $401 36 | function put(src : JFloatBuffer) : JFloatBuffer; cdecl; overload; // (Ljava/nio/FloatBuffer;)Ljava/nio/FloatBuffer; A: $1 37 | function put(src : TJavaArray) : JFloatBuffer; cdecl; overload; // ([F)Ljava/nio/FloatBuffer; A: $11 38 | function put(src : TJavaArray; srcOffset : Integer; floatCount : Integer) : JFloatBuffer; cdecl; overload;// ([FII)Ljava/nio/FloatBuffer; A: $1 39 | function slice : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 40 | function wrap(&array : TJavaArray) : JFloatBuffer; cdecl; overload; // ([F)Ljava/nio/FloatBuffer; A: $9 41 | function wrap(&array : TJavaArray; start : Integer; floatCount : Integer) : JFloatBuffer; cdecl; overload;// ([FII)Ljava/nio/FloatBuffer; A: $9 42 | end; 43 | 44 | [JavaSignature('java/nio/FloatBuffer')] 45 | JFloatBuffer = interface(JObject) 46 | ['{4AACDA40-062D-438A-B0C3-E4A6C4EDD492}'] 47 | function asReadOnlyBuffer : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 48 | function compact : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 49 | function compareTo(otherBuffer : JFloatBuffer) : Integer; cdecl; // (Ljava/nio/FloatBuffer;)I A: $1 50 | function duplicate : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 51 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 52 | function get : Single; cdecl; overload; // ()F A: $401 53 | function get(Integerparam0 : Integer) : Single; cdecl; overload; // (I)F A: $401 54 | function get(dst : TJavaArray) : JFloatBuffer; cdecl; overload; // ([F)Ljava/nio/FloatBuffer; A: $1 55 | function get(dst : TJavaArray; dstOffset : Integer; floatCount : Integer) : JFloatBuffer; cdecl; overload;// ([FII)Ljava/nio/FloatBuffer; A: $1 56 | function hashCode : Integer; cdecl; // ()I A: $1 57 | function isDirect : boolean; cdecl; // ()Z A: $401 58 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 59 | function put(Integerparam0 : Integer; Singleparam1 : Single) : JFloatBuffer; cdecl; overload;// (IF)Ljava/nio/FloatBuffer; A: $401 60 | function put(Singleparam0 : Single) : JFloatBuffer; cdecl; overload; // (F)Ljava/nio/FloatBuffer; A: $401 61 | function put(src : JFloatBuffer) : JFloatBuffer; cdecl; overload; // (Ljava/nio/FloatBuffer;)Ljava/nio/FloatBuffer; A: $1 62 | function put(src : TJavaArray; srcOffset : Integer; floatCount : Integer) : JFloatBuffer; cdecl; overload;// ([FII)Ljava/nio/FloatBuffer; A: $1 63 | function slice : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 64 | end; 65 | 66 | TJFloatBuffer = class(TJavaGenericImport) 67 | end; 68 | 69 | implementation 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.ShortBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093208 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.ShortBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteOrder; 12 | 13 | type 14 | JShortBuffer = interface; 15 | 16 | JShortBufferClass = interface(JObjectClass) 17 | ['{3D9181E1-9D61-4FEA-AF47-4EB93055AE9B}'] 18 | function &array : TJavaArray; cdecl; // ()[S A: $11 19 | function allocate(capacity : Integer) : JShortBuffer; cdecl; // (I)Ljava/nio/ShortBuffer; A: $9 20 | function arrayOffset : Integer; cdecl; // ()I A: $11 21 | function asReadOnlyBuffer : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 22 | function compact : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 23 | function compareTo(otherBuffer : JShortBuffer) : Integer; cdecl; // (Ljava/nio/ShortBuffer;)I A: $1 24 | function duplicate : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 25 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 26 | function get : SmallInt; cdecl; overload; // ()S A: $401 27 | function get(Integerparam0 : Integer) : SmallInt; cdecl; overload; // (I)S A: $401 28 | function get(dst : TJavaArray) : JShortBuffer; cdecl; overload; // ([S)Ljava/nio/ShortBuffer; A: $1 29 | function get(dst : TJavaArray; dstOffset : Integer; shortCount : Integer) : JShortBuffer; cdecl; overload;// ([SII)Ljava/nio/ShortBuffer; A: $1 30 | function hasArray : boolean; cdecl; // ()Z A: $11 31 | function hashCode : Integer; cdecl; // ()I A: $1 32 | function isDirect : boolean; cdecl; // ()Z A: $401 33 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 34 | function put(Integerparam0 : Integer; SmallIntparam1 : SmallInt) : JShortBuffer; cdecl; overload;// (IS)Ljava/nio/ShortBuffer; A: $401 35 | function put(SmallIntparam0 : SmallInt) : JShortBuffer; cdecl; overload; // (S)Ljava/nio/ShortBuffer; A: $401 36 | function put(src : JShortBuffer) : JShortBuffer; cdecl; overload; // (Ljava/nio/ShortBuffer;)Ljava/nio/ShortBuffer; A: $1 37 | function put(src : TJavaArray) : JShortBuffer; cdecl; overload; // ([S)Ljava/nio/ShortBuffer; A: $11 38 | function put(src : TJavaArray; srcOffset : Integer; shortCount : Integer) : JShortBuffer; cdecl; overload;// ([SII)Ljava/nio/ShortBuffer; A: $1 39 | function slice : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 40 | function wrap(&array : TJavaArray) : JShortBuffer; cdecl; overload;// ([S)Ljava/nio/ShortBuffer; A: $9 41 | function wrap(&array : TJavaArray; start : Integer; shortCount : Integer) : JShortBuffer; cdecl; overload;// ([SII)Ljava/nio/ShortBuffer; A: $9 42 | end; 43 | 44 | [JavaSignature('java/nio/ShortBuffer')] 45 | JShortBuffer = interface(JObject) 46 | ['{C2B6FFF9-F995-45B3-8A89-445B5BC82874}'] 47 | function asReadOnlyBuffer : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 48 | function compact : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 49 | function compareTo(otherBuffer : JShortBuffer) : Integer; cdecl; // (Ljava/nio/ShortBuffer;)I A: $1 50 | function duplicate : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 51 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 52 | function get : SmallInt; cdecl; overload; // ()S A: $401 53 | function get(Integerparam0 : Integer) : SmallInt; cdecl; overload; // (I)S A: $401 54 | function get(dst : TJavaArray) : JShortBuffer; cdecl; overload; // ([S)Ljava/nio/ShortBuffer; A: $1 55 | function get(dst : TJavaArray; dstOffset : Integer; shortCount : Integer) : JShortBuffer; cdecl; overload;// ([SII)Ljava/nio/ShortBuffer; A: $1 56 | function hashCode : Integer; cdecl; // ()I A: $1 57 | function isDirect : boolean; cdecl; // ()Z A: $401 58 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 59 | function put(Integerparam0 : Integer; SmallIntparam1 : SmallInt) : JShortBuffer; cdecl; overload;// (IS)Ljava/nio/ShortBuffer; A: $401 60 | function put(SmallIntparam0 : SmallInt) : JShortBuffer; cdecl; overload; // (S)Ljava/nio/ShortBuffer; A: $401 61 | function put(src : JShortBuffer) : JShortBuffer; cdecl; overload; // (Ljava/nio/ShortBuffer;)Ljava/nio/ShortBuffer; A: $1 62 | function put(src : TJavaArray; srcOffset : Integer; shortCount : Integer) : JShortBuffer; cdecl; overload;// ([SII)Ljava/nio/ShortBuffer; A: $1 63 | function slice : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 64 | end; 65 | 66 | TJShortBuffer = class(TJavaGenericImport) 67 | end; 68 | 69 | implementation 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.DoubleBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093208 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.DoubleBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteOrder; 12 | 13 | type 14 | JDoubleBuffer = interface; 15 | 16 | JDoubleBufferClass = interface(JObjectClass) 17 | ['{3591BD4E-D903-4195-B4AA-379D908FD629}'] 18 | function &array : TJavaArray; cdecl; // ()[D A: $11 19 | function allocate(capacity : Integer) : JDoubleBuffer; cdecl; // (I)Ljava/nio/DoubleBuffer; A: $9 20 | function arrayOffset : Integer; cdecl; // ()I A: $11 21 | function asReadOnlyBuffer : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 22 | function compact : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 23 | function compareTo(otherBuffer : JDoubleBuffer) : Integer; cdecl; // (Ljava/nio/DoubleBuffer;)I A: $1 24 | function duplicate : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 25 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 26 | function get : Double; cdecl; overload; // ()D A: $401 27 | function get(Integerparam0 : Integer) : Double; cdecl; overload; // (I)D A: $401 28 | function get(dst : TJavaArray) : JDoubleBuffer; cdecl; overload; // ([D)Ljava/nio/DoubleBuffer; A: $1 29 | function get(dst : TJavaArray; dstOffset : Integer; doubleCount : Integer) : JDoubleBuffer; cdecl; overload;// ([DII)Ljava/nio/DoubleBuffer; A: $1 30 | function hasArray : boolean; cdecl; // ()Z A: $11 31 | function hashCode : Integer; cdecl; // ()I A: $1 32 | function isDirect : boolean; cdecl; // ()Z A: $401 33 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 34 | function put(Doubleparam0 : Double) : JDoubleBuffer; cdecl; overload; // (D)Ljava/nio/DoubleBuffer; A: $401 35 | function put(Integerparam0 : Integer; Doubleparam1 : Double) : JDoubleBuffer; cdecl; overload;// (ID)Ljava/nio/DoubleBuffer; A: $401 36 | function put(src : JDoubleBuffer) : JDoubleBuffer; cdecl; overload; // (Ljava/nio/DoubleBuffer;)Ljava/nio/DoubleBuffer; A: $1 37 | function put(src : TJavaArray) : JDoubleBuffer; cdecl; overload; // ([D)Ljava/nio/DoubleBuffer; A: $11 38 | function put(src : TJavaArray; srcOffset : Integer; doubleCount : Integer) : JDoubleBuffer; cdecl; overload;// ([DII)Ljava/nio/DoubleBuffer; A: $1 39 | function slice : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 40 | function wrap(&array : TJavaArray) : JDoubleBuffer; cdecl; overload;// ([D)Ljava/nio/DoubleBuffer; A: $9 41 | function wrap(&array : TJavaArray; start : Integer; doubleCount : Integer) : JDoubleBuffer; cdecl; overload;// ([DII)Ljava/nio/DoubleBuffer; A: $9 42 | end; 43 | 44 | [JavaSignature('java/nio/DoubleBuffer')] 45 | JDoubleBuffer = interface(JObject) 46 | ['{4C4CF7CD-3A80-40F1-AD27-5727C974CF11}'] 47 | function asReadOnlyBuffer : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 48 | function compact : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 49 | function compareTo(otherBuffer : JDoubleBuffer) : Integer; cdecl; // (Ljava/nio/DoubleBuffer;)I A: $1 50 | function duplicate : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 51 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 52 | function get : Double; cdecl; overload; // ()D A: $401 53 | function get(Integerparam0 : Integer) : Double; cdecl; overload; // (I)D A: $401 54 | function get(dst : TJavaArray) : JDoubleBuffer; cdecl; overload; // ([D)Ljava/nio/DoubleBuffer; A: $1 55 | function get(dst : TJavaArray; dstOffset : Integer; doubleCount : Integer) : JDoubleBuffer; cdecl; overload;// ([DII)Ljava/nio/DoubleBuffer; A: $1 56 | function hashCode : Integer; cdecl; // ()I A: $1 57 | function isDirect : boolean; cdecl; // ()Z A: $401 58 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 59 | function put(Doubleparam0 : Double) : JDoubleBuffer; cdecl; overload; // (D)Ljava/nio/DoubleBuffer; A: $401 60 | function put(Integerparam0 : Integer; Doubleparam1 : Double) : JDoubleBuffer; cdecl; overload;// (ID)Ljava/nio/DoubleBuffer; A: $401 61 | function put(src : JDoubleBuffer) : JDoubleBuffer; cdecl; overload; // (Ljava/nio/DoubleBuffer;)Ljava/nio/DoubleBuffer; A: $1 62 | function put(src : TJavaArray; srcOffset : Integer; doubleCount : Integer) : JDoubleBuffer; cdecl; overload;// ([DII)Ljava/nio/DoubleBuffer; A: $1 63 | function slice : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 64 | end; 65 | 66 | TJDoubleBuffer = class(TJavaGenericImport) 67 | end; 68 | 69 | implementation 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.channels.FileChannel.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.channels.FileChannel; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.MappedByteBuffer, 12 | java.nio.channels.FileChannel_MapMode, 13 | java.nio.ByteBuffer, 14 | java.nio.channels.ReadableByteChannel, 15 | java.nio.channels.WritableByteChannel; 16 | 17 | type 18 | JFileLock = interface; // merged 19 | JFileChannel = interface; 20 | 21 | JFileChannelClass = interface(JObjectClass) 22 | ['{1AE6EB52-EBBB-4C7A-BBAC-A5EE756A208E}'] 23 | function &read(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; overload; // (Ljava/nio/ByteBuffer;)I A: $401 24 | function &read(JByteBufferparam0 : JByteBuffer; Int64param1 : Int64) : Integer; cdecl; overload;// (Ljava/nio/ByteBuffer;J)I A: $401 25 | function &read(TJavaArrayJByteBufferparam0 : TJavaArray; Integerparam1 : Integer; Integerparam2 : Integer) : Int64; cdecl; overload;// ([Ljava/nio/ByteBuffer;II)J A: $401 26 | function &read(buffers : TJavaArray) : Int64; cdecl; overload; // ([Ljava/nio/ByteBuffer;)J A: $11 27 | function &write(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; overload;// (Ljava/nio/ByteBuffer;)I A: $401 28 | function &write(JByteBufferparam0 : JByteBuffer; Int64param1 : Int64) : Integer; cdecl; overload;// (Ljava/nio/ByteBuffer;J)I A: $401 29 | function &write(TJavaArrayJByteBufferparam0 : TJavaArray; Integerparam1 : Integer; Integerparam2 : Integer) : Int64; cdecl; overload;// ([Ljava/nio/ByteBuffer;II)J A: $401 30 | function &write(buffers : TJavaArray) : Int64; cdecl; overload;// ([Ljava/nio/ByteBuffer;)J A: $11 31 | function lock : JFileLock; cdecl; overload; // ()Ljava/nio/channels/FileLock; A: $11 32 | function lock(Int64param0 : Int64; Int64param1 : Int64; booleanparam2 : boolean) : JFileLock; cdecl; overload;// (JJZ)Ljava/nio/channels/FileLock; A: $401 33 | function map(JFileChannel_MapModeparam0 : JFileChannel_MapMode; Int64param1 : Int64; Int64param2 : Int64) : JMappedByteBuffer; cdecl;// (Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer; A: $401 34 | function position : Int64; cdecl; overload; // ()J A: $401 35 | function position(Int64param0 : Int64) : JFileChannel; cdecl; overload; // (J)Ljava/nio/channels/FileChannel; A: $401 36 | function size : Int64; cdecl; // ()J A: $401 37 | function transferFrom(JReadableByteChannelparam0 : JReadableByteChannel; Int64param1 : Int64; Int64param2 : Int64) : Int64; cdecl;// (Ljava/nio/channels/ReadableByteChannel;JJ)J A: $401 38 | function transferTo(Int64param0 : Int64; Int64param1 : Int64; JWritableByteChannelparam2 : JWritableByteChannel) : Int64; cdecl;// (JJLjava/nio/channels/WritableByteChannel;)J A: $401 39 | function truncate(Int64param0 : Int64) : JFileChannel; cdecl; // (J)Ljava/nio/channels/FileChannel; A: $401 40 | function tryLock : JFileLock; cdecl; overload; // ()Ljava/nio/channels/FileLock; A: $11 41 | function tryLock(Int64param0 : Int64; Int64param1 : Int64; booleanparam2 : boolean) : JFileLock; cdecl; overload;// (JJZ)Ljava/nio/channels/FileLock; A: $401 42 | procedure force(booleanparam0 : boolean) ; cdecl; // (Z)V A: $401 43 | end; 44 | 45 | [JavaSignature('java/nio/channels/FileChannel$MapMode')] 46 | JFileChannel = interface(JObject) 47 | ['{071B33FC-4294-4841-A7E5-2D6F7A0CBAEE}'] 48 | function &read(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; overload; // (Ljava/nio/ByteBuffer;)I A: $401 49 | function &read(JByteBufferparam0 : JByteBuffer; Int64param1 : Int64) : Integer; cdecl; overload;// (Ljava/nio/ByteBuffer;J)I A: $401 50 | function &read(TJavaArrayJByteBufferparam0 : TJavaArray; Integerparam1 : Integer; Integerparam2 : Integer) : Int64; cdecl; overload;// ([Ljava/nio/ByteBuffer;II)J A: $401 51 | function &write(JByteBufferparam0 : JByteBuffer) : Integer; cdecl; overload;// (Ljava/nio/ByteBuffer;)I A: $401 52 | function &write(JByteBufferparam0 : JByteBuffer; Int64param1 : Int64) : Integer; cdecl; overload;// (Ljava/nio/ByteBuffer;J)I A: $401 53 | function &write(TJavaArrayJByteBufferparam0 : TJavaArray; Integerparam1 : Integer; Integerparam2 : Integer) : Int64; cdecl; overload;// ([Ljava/nio/ByteBuffer;II)J A: $401 54 | function lock(Int64param0 : Int64; Int64param1 : Int64; booleanparam2 : boolean) : JFileLock; cdecl; overload;// (JJZ)Ljava/nio/channels/FileLock; A: $401 55 | function map(JFileChannel_MapModeparam0 : JFileChannel_MapMode; Int64param1 : Int64; Int64param2 : Int64) : JMappedByteBuffer; cdecl;// (Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer; A: $401 56 | function position : Int64; cdecl; overload; // ()J A: $401 57 | function position(Int64param0 : Int64) : JFileChannel; cdecl; overload; // (J)Ljava/nio/channels/FileChannel; A: $401 58 | function size : Int64; cdecl; // ()J A: $401 59 | function transferFrom(JReadableByteChannelparam0 : JReadableByteChannel; Int64param1 : Int64; Int64param2 : Int64) : Int64; cdecl;// (Ljava/nio/channels/ReadableByteChannel;JJ)J A: $401 60 | function transferTo(Int64param0 : Int64; Int64param1 : Int64; JWritableByteChannelparam2 : JWritableByteChannel) : Int64; cdecl;// (JJLjava/nio/channels/WritableByteChannel;)J A: $401 61 | function truncate(Int64param0 : Int64) : JFileChannel; cdecl; // (J)Ljava/nio/channels/FileChannel; A: $401 62 | function tryLock(Int64param0 : Int64; Int64param1 : Int64; booleanparam2 : boolean) : JFileLock; cdecl; overload;// (JJZ)Ljava/nio/channels/FileLock; A: $401 63 | procedure force(booleanparam0 : boolean) ; cdecl; // (Z)V A: $401 64 | end; 65 | 66 | TJFileChannel = class(TJavaGenericImport) 67 | end; 68 | 69 | // Merged from: .\android-19\java.nio.channels.FileLock.pas 70 | JFileLockClass = interface(JObjectClass) 71 | ['{587E1F8D-6370-44E8-89D1-A45AC05FC22B}'] 72 | function channel : JFileChannel; cdecl; // ()Ljava/nio/channels/FileChannel; A: $11 73 | function isShared : boolean; cdecl; // ()Z A: $11 74 | function isValid : boolean; cdecl; // ()Z A: $401 75 | function overlaps(start : Int64; length : Int64) : boolean; cdecl; // (JJ)Z A: $11 76 | function position : Int64; cdecl; // ()J A: $11 77 | function size : Int64; cdecl; // ()J A: $11 78 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $11 79 | procedure close ; cdecl; // ()V A: $11 80 | procedure release ; cdecl; // ()V A: $401 81 | end; 82 | 83 | [JavaSignature('java/nio/channels/FileLock')] 84 | JFileLock = interface(JObject) 85 | ['{98583D32-DD49-4438-B74B-7C3BECA639F1}'] 86 | function isValid : boolean; cdecl; // ()Z A: $401 87 | procedure release ; cdecl; // ()V A: $401 88 | end; 89 | 90 | TJFileLock = class(TJavaGenericImport) 91 | end; 92 | 93 | 94 | implementation 95 | 96 | end. 97 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.CharBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093208 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.CharBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.ByteOrder; 12 | 13 | type 14 | JCharBuffer = interface; 15 | 16 | JCharBufferClass = interface(JObjectClass) 17 | ['{EC99810E-6F87-4C38-B4D0-5A9D4F1472D8}'] 18 | function &array : TJavaArray; cdecl; // ()[C A: $11 19 | function &read(target : JCharBuffer) : Integer; cdecl; // (Ljava/nio/CharBuffer;)I A: $1 20 | function allocate(capacity : Integer) : JCharBuffer; cdecl; // (I)Ljava/nio/CharBuffer; A: $9 21 | function append(c : Char) : JCharBuffer; cdecl; overload; // (C)Ljava/nio/CharBuffer; A: $1 22 | function append(csq : JCharSequence) : JCharBuffer; cdecl; overload; // (Ljava/lang/CharSequence;)Ljava/nio/CharBuffer; A: $1 23 | function append(csq : JCharSequence; start : Integer; &end : Integer) : JCharBuffer; cdecl; overload;// (Ljava/lang/CharSequence;II)Ljava/nio/CharBuffer; A: $1 24 | function arrayOffset : Integer; cdecl; // ()I A: $11 25 | function asReadOnlyBuffer : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 26 | function charAt(&index : Integer) : Char; cdecl; // (I)C A: $11 27 | function compact : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 28 | function compareTo(otherBuffer : JCharBuffer) : Integer; cdecl; // (Ljava/nio/CharBuffer;)I A: $1 29 | function duplicate : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 30 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 31 | function get : Char; cdecl; overload; // ()C A: $401 32 | function get(Integerparam0 : Integer) : Char; cdecl; overload; // (I)C A: $401 33 | function get(dst : TJavaArray) : JCharBuffer; cdecl; overload; // ([C)Ljava/nio/CharBuffer; A: $1 34 | function get(dst : TJavaArray; dstOffset : Integer; charCount : Integer) : JCharBuffer; cdecl; overload;// ([CII)Ljava/nio/CharBuffer; A: $1 35 | function hasArray : boolean; cdecl; // ()Z A: $11 36 | function hashCode : Integer; cdecl; // ()I A: $1 37 | function isDirect : boolean; cdecl; // ()Z A: $401 38 | function length : Integer; cdecl; // ()I A: $11 39 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 40 | function put(Charparam0 : Char) : JCharBuffer; cdecl; overload; // (C)Ljava/nio/CharBuffer; A: $401 41 | function put(Integerparam0 : Integer; Charparam1 : Char) : JCharBuffer; cdecl; overload;// (IC)Ljava/nio/CharBuffer; A: $401 42 | function put(src : JCharBuffer) : JCharBuffer; cdecl; overload; // (Ljava/nio/CharBuffer;)Ljava/nio/CharBuffer; A: $1 43 | function put(src : TJavaArray) : JCharBuffer; cdecl; overload; // ([C)Ljava/nio/CharBuffer; A: $11 44 | function put(src : TJavaArray; srcOffset : Integer; charCount : Integer) : JCharBuffer; cdecl; overload;// ([CII)Ljava/nio/CharBuffer; A: $1 45 | function put(str : JString) : JCharBuffer; cdecl; overload; // (Ljava/lang/String;)Ljava/nio/CharBuffer; A: $11 46 | function put(str : JString; start : Integer; &end : Integer) : JCharBuffer; cdecl; overload;// (Ljava/lang/String;II)Ljava/nio/CharBuffer; A: $1 47 | function slice : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 48 | function subSequence(Integerparam0 : Integer; Integerparam1 : Integer) : JCharBuffer; cdecl;// (II)Ljava/nio/CharBuffer; A: $401 49 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 50 | function wrap(&array : TJavaArray) : JCharBuffer; cdecl; overload; // ([C)Ljava/nio/CharBuffer; A: $9 51 | function wrap(&array : TJavaArray; start : Integer; charCount : Integer) : JCharBuffer; cdecl; overload;// ([CII)Ljava/nio/CharBuffer; A: $9 52 | function wrap(chseq : JCharSequence) : JCharBuffer; cdecl; overload; // (Ljava/lang/CharSequence;)Ljava/nio/CharBuffer; A: $9 53 | function wrap(cs : JCharSequence; start : Integer; &end : Integer) : JCharBuffer; cdecl; overload;// (Ljava/lang/CharSequence;II)Ljava/nio/CharBuffer; A: $9 54 | end; 55 | 56 | [JavaSignature('java/nio/CharBuffer')] 57 | JCharBuffer = interface(JObject) 58 | ['{74D9AAB0-5B98-4611-BEB7-F4BD8DB025EE}'] 59 | function &read(target : JCharBuffer) : Integer; cdecl; // (Ljava/nio/CharBuffer;)I A: $1 60 | function append(c : Char) : JCharBuffer; cdecl; overload; // (C)Ljava/nio/CharBuffer; A: $1 61 | function append(csq : JCharSequence) : JCharBuffer; cdecl; overload; // (Ljava/lang/CharSequence;)Ljava/nio/CharBuffer; A: $1 62 | function append(csq : JCharSequence; start : Integer; &end : Integer) : JCharBuffer; cdecl; overload;// (Ljava/lang/CharSequence;II)Ljava/nio/CharBuffer; A: $1 63 | function asReadOnlyBuffer : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 64 | function compact : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 65 | function compareTo(otherBuffer : JCharBuffer) : Integer; cdecl; // (Ljava/nio/CharBuffer;)I A: $1 66 | function duplicate : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 67 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 68 | function get : Char; cdecl; overload; // ()C A: $401 69 | function get(Integerparam0 : Integer) : Char; cdecl; overload; // (I)C A: $401 70 | function get(dst : TJavaArray) : JCharBuffer; cdecl; overload; // ([C)Ljava/nio/CharBuffer; A: $1 71 | function get(dst : TJavaArray; dstOffset : Integer; charCount : Integer) : JCharBuffer; cdecl; overload;// ([CII)Ljava/nio/CharBuffer; A: $1 72 | function hashCode : Integer; cdecl; // ()I A: $1 73 | function isDirect : boolean; cdecl; // ()Z A: $401 74 | function order : JByteOrder; cdecl; // ()Ljava/nio/ByteOrder; A: $401 75 | function put(Charparam0 : Char) : JCharBuffer; cdecl; overload; // (C)Ljava/nio/CharBuffer; A: $401 76 | function put(Integerparam0 : Integer; Charparam1 : Char) : JCharBuffer; cdecl; overload;// (IC)Ljava/nio/CharBuffer; A: $401 77 | function put(src : JCharBuffer) : JCharBuffer; cdecl; overload; // (Ljava/nio/CharBuffer;)Ljava/nio/CharBuffer; A: $1 78 | function put(src : TJavaArray; srcOffset : Integer; charCount : Integer) : JCharBuffer; cdecl; overload;// ([CII)Ljava/nio/CharBuffer; A: $1 79 | function put(str : JString; start : Integer; &end : Integer) : JCharBuffer; cdecl; overload;// (Ljava/lang/String;II)Ljava/nio/CharBuffer; A: $1 80 | function slice : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 81 | function subSequence(Integerparam0 : Integer; Integerparam1 : Integer) : JCharBuffer; cdecl;// (II)Ljava/nio/CharBuffer; A: $401 82 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 83 | end; 84 | 85 | TJCharBuffer = class(TJavaGenericImport) 86 | end; 87 | 88 | implementation 89 | 90 | end. 91 | -------------------------------------------------------------------------------- /android-19-headers/java.net.InetAddress.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093209 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.net.InetAddress; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes; 11 | 12 | type 13 | JNetworkInterface = interface; // merged 14 | JInetAddress = interface; 15 | 16 | JInetAddressClass = interface(JObjectClass) 17 | ['{63EBE905-95B3-473B-B954-A4CFCD629429}'] 18 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 19 | function getAddress : TJavaArray; cdecl; // ()[B A: $1 20 | function getAllByName(host : JString) : TJavaArray; cdecl; // (Ljava/lang/String;)[Ljava/net/InetAddress; A: $9 21 | function getByAddress(hostName : JString; ipAddress : TJavaArray) : JInetAddress; cdecl; overload;// (Ljava/lang/String;[B)Ljava/net/InetAddress; A: $9 22 | function getByAddress(ipAddress : TJavaArray) : JInetAddress; cdecl; overload;// ([B)Ljava/net/InetAddress; A: $9 23 | function getByName(host : JString) : JInetAddress; cdecl; // (Ljava/lang/String;)Ljava/net/InetAddress; A: $9 24 | function getCanonicalHostName : JString; cdecl; // ()Ljava/lang/String; A: $1 25 | function getHostAddress : JString; cdecl; // ()Ljava/lang/String; A: $1 26 | function getHostName : JString; cdecl; // ()Ljava/lang/String; A: $1 27 | function getLocalHost : JInetAddress; cdecl; // ()Ljava/net/InetAddress; A: $9 28 | function getLoopbackAddress : JInetAddress; cdecl; // ()Ljava/net/InetAddress; A: $9 29 | function hashCode : Integer; cdecl; // ()I A: $1 30 | function isAnyLocalAddress : boolean; cdecl; // ()Z A: $1 31 | function isLinkLocalAddress : boolean; cdecl; // ()Z A: $1 32 | function isLoopbackAddress : boolean; cdecl; // ()Z A: $1 33 | function isMCGlobal : boolean; cdecl; // ()Z A: $1 34 | function isMCLinkLocal : boolean; cdecl; // ()Z A: $1 35 | function isMCNodeLocal : boolean; cdecl; // ()Z A: $1 36 | function isMCOrgLocal : boolean; cdecl; // ()Z A: $1 37 | function isMCSiteLocal : boolean; cdecl; // ()Z A: $1 38 | function isMulticastAddress : boolean; cdecl; // ()Z A: $1 39 | function isReachable(networkInterface : JNetworkInterface; ttl : Integer; timeout : Integer) : boolean; cdecl; overload;// (Ljava/net/NetworkInterface;II)Z A: $1 40 | function isReachable(timeout : Integer) : boolean; cdecl; overload; // (I)Z A: $1 41 | function isSiteLocalAddress : boolean; cdecl; // ()Z A: $1 42 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 43 | end; 44 | 45 | [JavaSignature('java/net/InetAddress')] 46 | JInetAddress = interface(JObject) 47 | ['{5FDBA4DB-1F52-46F5-BED6-C3B942B8574F}'] 48 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 49 | function getAddress : TJavaArray; cdecl; // ()[B A: $1 50 | function getCanonicalHostName : JString; cdecl; // ()Ljava/lang/String; A: $1 51 | function getHostAddress : JString; cdecl; // ()Ljava/lang/String; A: $1 52 | function getHostName : JString; cdecl; // ()Ljava/lang/String; A: $1 53 | function hashCode : Integer; cdecl; // ()I A: $1 54 | function isAnyLocalAddress : boolean; cdecl; // ()Z A: $1 55 | function isLinkLocalAddress : boolean; cdecl; // ()Z A: $1 56 | function isLoopbackAddress : boolean; cdecl; // ()Z A: $1 57 | function isMCGlobal : boolean; cdecl; // ()Z A: $1 58 | function isMCLinkLocal : boolean; cdecl; // ()Z A: $1 59 | function isMCNodeLocal : boolean; cdecl; // ()Z A: $1 60 | function isMCOrgLocal : boolean; cdecl; // ()Z A: $1 61 | function isMCSiteLocal : boolean; cdecl; // ()Z A: $1 62 | function isMulticastAddress : boolean; cdecl; // ()Z A: $1 63 | function isReachable(networkInterface : JNetworkInterface; ttl : Integer; timeout : Integer) : boolean; cdecl; overload;// (Ljava/net/NetworkInterface;II)Z A: $1 64 | function isReachable(timeout : Integer) : boolean; cdecl; overload; // (I)Z A: $1 65 | function isSiteLocalAddress : boolean; cdecl; // ()Z A: $1 66 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 67 | end; 68 | 69 | TJInetAddress = class(TJavaGenericImport) 70 | end; 71 | 72 | // Merged from: .\android-19\java.net.NetworkInterface.pas 73 | JNetworkInterfaceClass = interface(JObjectClass) 74 | ['{15EAFD0E-8F54-4C0C-AFD0-B45F1D11F2DE}'] 75 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 76 | function getByIndex(&index : Integer) : JNetworkInterface; cdecl; // (I)Ljava/net/NetworkInterface; A: $9 77 | function getByInetAddress(address : JInetAddress) : JNetworkInterface; cdecl;// (Ljava/net/InetAddress;)Ljava/net/NetworkInterface; A: $9 78 | function getByName(interfaceName : JString) : JNetworkInterface; cdecl; // (Ljava/lang/String;)Ljava/net/NetworkInterface; A: $9 79 | function getDisplayName : JString; cdecl; // ()Ljava/lang/String; A: $1 80 | function getHardwareAddress : TJavaArray; cdecl; // ()[B A: $1 81 | function getIndex : Integer; cdecl; // ()I A: $1 82 | function getInetAddresses : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $1 83 | function getInterfaceAddresses : JList; cdecl; // ()Ljava/util/List; A: $1 84 | function getMTU : Integer; cdecl; // ()I A: $1 85 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $1 86 | function getNetworkInterfaces : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $9 87 | function getParent : JNetworkInterface; cdecl; // ()Ljava/net/NetworkInterface; A: $1 88 | function getSubInterfaces : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $1 89 | function hashCode : Integer; cdecl; // ()I A: $1 90 | function isLoopback : boolean; cdecl; // ()Z A: $1 91 | function isPointToPoint : boolean; cdecl; // ()Z A: $1 92 | function isUp : boolean; cdecl; // ()Z A: $1 93 | function isVirtual : boolean; cdecl; // ()Z A: $1 94 | function supportsMulticast : boolean; cdecl; // ()Z A: $1 95 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 96 | end; 97 | 98 | [JavaSignature('java/net/NetworkInterface')] 99 | JNetworkInterface = interface(JObject) 100 | ['{F14718D3-C157-4358-B932-71E3E5F0938A}'] 101 | function equals(obj : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 102 | function getDisplayName : JString; cdecl; // ()Ljava/lang/String; A: $1 103 | function getHardwareAddress : TJavaArray; cdecl; // ()[B A: $1 104 | function getIndex : Integer; cdecl; // ()I A: $1 105 | function getInetAddresses : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $1 106 | function getInterfaceAddresses : JList; cdecl; // ()Ljava/util/List; A: $1 107 | function getMTU : Integer; cdecl; // ()I A: $1 108 | function getName : JString; cdecl; // ()Ljava/lang/String; A: $1 109 | function getParent : JNetworkInterface; cdecl; // ()Ljava/net/NetworkInterface; A: $1 110 | function getSubInterfaces : JEnumeration; cdecl; // ()Ljava/util/Enumeration; A: $1 111 | function hashCode : Integer; cdecl; // ()I A: $1 112 | function isLoopback : boolean; cdecl; // ()Z A: $1 113 | function isPointToPoint : boolean; cdecl; // ()Z A: $1 114 | function isUp : boolean; cdecl; // ()Z A: $1 115 | function isVirtual : boolean; cdecl; // ()Z A: $1 116 | function supportsMulticast : boolean; cdecl; // ()Z A: $1 117 | function toString : JString; cdecl; // ()Ljava/lang/String; A: $1 118 | end; 119 | 120 | TJNetworkInterface = class(TJavaGenericImport) 121 | end; 122 | 123 | 124 | implementation 125 | 126 | end. 127 | -------------------------------------------------------------------------------- /SMBFileBrowser.deployproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 12 5 | 6 | 7 | 8 | SMBFileBrowser\res\drawable-xlarge\ 9 | splash_image.png 10 | 1 11 | 12 | 13 | True 14 | 15 | 16 | SMBFileBrowser\res\drawable-large\ 17 | splash_image.png 18 | 1 19 | 20 | 21 | True 22 | 23 | 24 | SMBFileBrowser\library\lib\armeabi-v7a\ 25 | libSMBFileBrowser.so 26 | 1 27 | 28 | 29 | True 30 | True 31 | 32 | 33 | SMBFileBrowser\library\lib\armeabi\ 34 | libSMBFileBrowser.so 35 | 1 36 | 37 | 38 | True 39 | 40 | 41 | SMBFileBrowser\res\drawable-mdpi\ 42 | ic_launcher.png 43 | 1 44 | 45 | 46 | True 47 | 48 | 49 | SMBFileBrowser\res\drawable-xxhdpi\ 50 | ic_launcher.png 51 | 1 52 | 53 | 54 | True 55 | 56 | 57 | SMBFileBrowser\res\drawable\ 58 | splash_image_def.xml 59 | 1 60 | 61 | 62 | True 63 | 64 | 65 | SMBFileBrowser\library\lib\mips\ 66 | libSMBFileBrowser.so 67 | 1 68 | 69 | 70 | True 71 | 72 | 73 | SMBFileBrowser\library\lib\armeabi-v7a\ 74 | gdbserver 75 | 1 76 | 77 | 78 | True 79 | 80 | 81 | SMBFileBrowser\ 82 | AndroidManifest.xml 83 | 1 84 | 85 | 86 | True 87 | 88 | 89 | SMBFileBrowser\res\drawable-small\ 90 | splash_image.png 91 | 1 92 | 93 | 94 | True 95 | 96 | 97 | SMBFileBrowser\classes\ 98 | classes.dex 99 | 1 100 | 101 | 102 | True 103 | 104 | 105 | SMBFileBrowser\res\drawable-xhdpi\ 106 | ic_launcher.png 107 | 1 108 | 109 | 110 | True 111 | 112 | 113 | SMBFileBrowser\res\values\ 114 | styles.xml 115 | 1 116 | 117 | 118 | True 119 | 120 | 121 | SMBFileBrowser\assets\internal\ 122 | AndroidManifest.template.xml 123 | 0 124 | 125 | 126 | True 127 | 128 | 129 | SMBFileBrowser\res\drawable-ldpi\ 130 | ic_launcher.png 131 | 1 132 | 133 | 134 | True 135 | 136 | 137 | SMBFileBrowser\assets\internal\ 138 | jcifs-1.3.18.jar 139 | 0 140 | 141 | 142 | True 143 | 144 | 145 | SMBFileBrowser\library\lib\x86\ 146 | libSMBFileBrowser.so 147 | 1 148 | 149 | 150 | True 151 | 152 | 153 | SMBFileBrowser\res\drawable-hdpi\ 154 | ic_launcher.png 155 | 1 156 | 157 | 158 | True 159 | 160 | 161 | SMBFileBrowser\res\drawable-normal\ 162 | splash_image.png 163 | 1 164 | 165 | 166 | True 167 | 168 | 169 | 170 | 171 | 172 | SMBFileBrowser\ 173 | SMBFileBrowser.exe 174 | 0 175 | 176 | 177 | True 178 | True 179 | 180 | 181 | 182 | 183 | SMBFileBrowser.app\Contents\MacOS\ 184 | libcgunwind.1.0.dylib 185 | 1 186 | 187 | 188 | True 189 | 190 | 191 | 192 | 193 | SMBFileBrowser.app\ 194 | libcgunwind.1.0.dylib 195 | 1 196 | 197 | 198 | True 199 | 200 | 201 | 202 | 203 | -------------------------------------------------------------------------------- /jcifs-1.3.18-headers/jcifs.smb.SmbFile.pas: -------------------------------------------------------------------------------- 1 | unit jcifs.smb.SmbFile; 2 | 3 | interface 4 | 5 | uses 6 | AndroidAPI.JNIBridge, 7 | Androidapi.JNI.JavaTypes, 8 | java.lang.JClass, 9 | java.security.Principal, 10 | jcifs.smb.NtlmPasswordAuthentication, 11 | jcifs.smb.ACE; 12 | 13 | type 14 | JSmbFile = interface; 15 | 16 | JSmbFileFilter = interface; 17 | 18 | JSmbFileFilterClass = interface(JObjectClass) 19 | ['{E7A54D51-FA40-43DD-B3E2-5DB71CE59276}'] 20 | function accept(JSmbFileparam0 : JSmbFile) : boolean; cdecl; 21 | end; 22 | 23 | [JavaSignature('jcifs/smb/SmbFileFilter')] 24 | JSmbFileFilter = interface(JObject) 25 | ['{313ED411-BA7E-4077-BF32-B457B3A011C9}'] 26 | function accept(JSmbFileparam0 : JSmbFile) : boolean; cdecl; 27 | end; 28 | 29 | TJSmbFileFilter = class(TJavaGenericImport) 30 | end; 31 | 32 | JSmbFilenameFilter = interface; 33 | 34 | JSmbFilenameFilterClass = interface(JObjectClass) 35 | ['{54233C05-9BF5-48C2-8B87-C549E378AAD5}'] 36 | function accept(JSmbFileparam0 : JSmbFile; JStringparam1 : JString) : boolean; cdecl; 37 | end; 38 | 39 | [JavaSignature('jcifs/smb/SmbFilenameFilter')] 40 | JSmbFilenameFilter = interface(JObject) 41 | ['{A5445FA4-2788-4489-84D1-424E1F1149FA}'] 42 | function accept(JSmbFileparam0 : JSmbFile; JStringparam1 : JString) : boolean; cdecl; 43 | end; 44 | 45 | TJSmbFilenameFilter = class(TJavaGenericImport) 46 | end; 47 | 48 | JSmbFileClass = interface(JObjectClass) 49 | ['{F6E39252-95E6-42F1-A54E-1A5AD69BEBC6}'] 50 | function _GetATTR_ARCHIVE : Integer; cdecl; 51 | function _GetATTR_DIRECTORY : Integer; cdecl; 52 | function _GetATTR_HIDDEN : Integer; cdecl; 53 | function _GetATTR_READONLY : Integer; cdecl; 54 | function _GetATTR_SYSTEM : Integer; cdecl; 55 | function _GetATTR_VOLUME : Integer; cdecl; 56 | function _GetFILE_NO_SHARE : Integer; cdecl; 57 | function _GetFILE_SHARE_DELETE : Integer; cdecl; 58 | function _GetFILE_SHARE_READ : Integer; cdecl; 59 | function _GetFILE_SHARE_WRITE : Integer; cdecl; 60 | function _GetTYPE_COMM : Integer; cdecl; 61 | function _GetTYPE_FILESYSTEM : Integer; cdecl; 62 | function _GetTYPE_NAMED_PIPE : Integer; cdecl; 63 | function _GetTYPE_PRINTER : Integer; cdecl; 64 | function _GetTYPE_SERVER : Integer; cdecl; 65 | function _GetTYPE_SHARE : Integer; cdecl; 66 | function _GetTYPE_WORKGROUP : Integer; cdecl; 67 | function canRead : boolean; cdecl; 68 | function canWrite : boolean; cdecl; 69 | function createTime : Int64; cdecl; 70 | function equals(obj : JObject) : boolean; cdecl; 71 | function exists : boolean; cdecl; 72 | function getAttributes : Integer; cdecl; 73 | function getCanonicalPath : JString; cdecl; 74 | function getContentLength : Integer; cdecl; 75 | function getDate : Int64; cdecl; 76 | function getDfsPath : JString; cdecl; 77 | function getDiskFreeSpace : Int64; cdecl; 78 | function getInputStream : JInputStream; cdecl; 79 | function getLastModified : Int64; cdecl; 80 | function getName : JString; cdecl; 81 | function getOutputStream : JOutputStream; cdecl; 82 | function getParent : JString; cdecl; 83 | function getPath : JString; cdecl; 84 | function getPrincipal : JPrincipal; cdecl; 85 | function getSecurity : TJavaArray; cdecl; overload; 86 | function getSecurity(resolveSids : boolean) : TJavaArray; cdecl; overload; 87 | function getServer : JString; cdecl; 88 | function getShare : JString; cdecl; 89 | function getShareSecurity(resolveSids : boolean) : TJavaArray; cdecl; 90 | function getType : Integer; cdecl; 91 | function getUncPath : JString; cdecl; 92 | function hashCode : Integer; cdecl; 93 | {class} function init(context : JSmbFile; &name : JString) : JSmbFile; cdecl; overload; 94 | {class} function init(context : JSmbFile; &name : JString; shareAccess : Integer) : JSmbFile; cdecl; overload; 95 | {class} function init(context : JString; &name : JString) : JSmbFile; cdecl; overload; 96 | {class} function init(context : JString; &name : JString; auth : JNtlmPasswordAuthentication) : JSmbFile; cdecl; overload; 97 | {class} function init(context : JString; &name : JString; auth : JNtlmPasswordAuthentication; shareAccess : Integer) : JSmbFile; cdecl; overload; 98 | {class} function init(url : JString) : JSmbFile; cdecl; overload; 99 | {class} function init(url : JString; auth : JNtlmPasswordAuthentication) : JSmbFile; cdecl; overload; 100 | {class} function init(url : JString; auth : JNtlmPasswordAuthentication; shareAccess : Integer) : JSmbFile; cdecl; overload; 101 | {class} function init(url : JURL) : JSmbFile; cdecl; overload; 102 | {class} function init(url : JURL; auth : JNtlmPasswordAuthentication) : JSmbFile; cdecl; overload; 103 | function isDirectory : boolean; cdecl; 104 | function isFile : boolean; cdecl; 105 | function isHidden : boolean; cdecl; 106 | function lastModified : Int64; cdecl; 107 | function length : Int64; cdecl; 108 | function list : TJavaObjectArray; cdecl; overload; 109 | function list(filter : JSmbFilenameFilter) : TJavaObjectArray; cdecl; overload; 110 | function listFiles : TJavaObjectArray; cdecl; overload; 111 | function listFiles(filter : JSmbFileFilter) : TJavaObjectArray; cdecl; overload; 112 | function listFiles(filter : JSmbFilenameFilter) : TJavaObjectArray; cdecl; overload; 113 | function listFiles(wildcard : JString) : TJavaObjectArray; cdecl; overload; 114 | function toString : JString; cdecl; 115 | function toURL : JURL; deprecated; cdecl; 116 | procedure connect ; cdecl; 117 | procedure copyTo(dest : JSmbFile) ; cdecl; 118 | procedure createNewFile ; cdecl; 119 | procedure delete ; cdecl; overload; 120 | procedure mkdir ; cdecl; 121 | procedure mkdirs ; cdecl; 122 | procedure renameTo(dest : JSmbFile) ; cdecl; 123 | procedure setAttributes(attrs : Integer) ; cdecl; 124 | procedure setCreateTime(time : Int64) ; cdecl; 125 | procedure setLastModified(time : Int64) ; cdecl; 126 | procedure setReadOnly ; cdecl; 127 | procedure setReadWrite ; cdecl; 128 | property ATTR_ARCHIVE : Integer read _GetATTR_ARCHIVE; 129 | property ATTR_DIRECTORY : Integer read _GetATTR_DIRECTORY; 130 | property ATTR_HIDDEN : Integer read _GetATTR_HIDDEN; 131 | property ATTR_READONLY : Integer read _GetATTR_READONLY; 132 | property ATTR_SYSTEM : Integer read _GetATTR_SYSTEM; 133 | property ATTR_VOLUME : Integer read _GetATTR_VOLUME; 134 | property FILE_NO_SHARE : Integer read _GetFILE_NO_SHARE; 135 | property FILE_SHARE_DELETE : Integer read _GetFILE_SHARE_DELETE; 136 | property FILE_SHARE_READ : Integer read _GetFILE_SHARE_READ; 137 | property FILE_SHARE_WRITE : Integer read _GetFILE_SHARE_WRITE; 138 | property TYPE_COMM : Integer read _GetTYPE_COMM; 139 | property TYPE_FILESYSTEM : Integer read _GetTYPE_FILESYSTEM; 140 | property TYPE_NAMED_PIPE : Integer read _GetTYPE_NAMED_PIPE; 141 | property TYPE_PRINTER : Integer read _GetTYPE_PRINTER; 142 | property TYPE_SERVER : Integer read _GetTYPE_SERVER; 143 | property TYPE_SHARE : Integer read _GetTYPE_SHARE; 144 | property TYPE_WORKGROUP : Integer read _GetTYPE_WORKGROUP; 145 | end; 146 | 147 | [JavaSignature('jcifs/smb/SmbFile')] 148 | JSmbFile = interface(JObject) 149 | ['{1219FD67-7CAA-47F7-A97F-2351951B7BDA}'] 150 | function canRead : boolean; cdecl; 151 | function canWrite : boolean; cdecl; 152 | function createTime : Int64; cdecl; 153 | function equals(obj : JObject) : boolean; cdecl; 154 | function exists : boolean; cdecl; 155 | function getAttributes : Integer; cdecl; 156 | function getCanonicalPath : JString; cdecl; 157 | function getContentLength : Integer; cdecl; 158 | function getDate : Int64; cdecl; 159 | function getDfsPath : JString; cdecl; 160 | function getDiskFreeSpace : Int64; cdecl; 161 | function getInputStream : JInputStream; cdecl; 162 | function getLastModified : Int64; cdecl; 163 | function getName : JString; cdecl; 164 | function getOutputStream : JOutputStream; 165 | function getParent : JString; cdecl; 166 | function getPath : JString; cdecl; 167 | function getPrincipal : JPrincipal; cdecl; 168 | function getSecurity : TJavaArray; cdecl; overload; 169 | function getSecurity(resolveSids : boolean) : TJavaArray; cdecl; overload; 170 | function getServer : JString; cdecl; 171 | function getShare : JString; cdecl; 172 | function getShareSecurity(resolveSids : boolean) : TJavaArray; cdecl; 173 | function getType : Integer; cdecl; 174 | function getUncPath : JString; cdecl; 175 | function hashCode : Integer; cdecl; 176 | function isDirectory : boolean; cdecl; 177 | function isFile : boolean; cdecl; 178 | function isHidden : boolean; cdecl; 179 | function lastModified : Int64; cdecl; 180 | function length : Int64; cdecl; 181 | function list : TJavaObjectArray; cdecl; overload; 182 | function list(filter : JSmbFilenameFilter) : TJavaObjectArray; cdecl; overload; 183 | function listFiles : TJavaObjectArray; cdecl; overload; 184 | function listFiles(filter : JSmbFileFilter) : TJavaObjectArray; cdecl; overload; 185 | function listFiles(filter : JSmbFilenameFilter) : TJavaObjectArray; cdecl; overload; 186 | function listFiles(wildcard : JString) : TJavaObjectArray; cdecl; overload; 187 | function toString : JString; cdecl; 188 | function toURL : JURL; deprecated; cdecl; 189 | procedure connect ; cdecl; 190 | procedure copyTo(dest : JSmbFile) ; cdecl; 191 | procedure createNewFile ; cdecl; 192 | procedure delete ; cdecl; overload; 193 | procedure mkdir ; cdecl; 194 | procedure mkdirs ; cdecl; 195 | procedure renameTo(dest : JSmbFile) ; cdecl; 196 | procedure setAttributes(attrs : Integer) ; cdecl; 197 | procedure setCreateTime(time : Int64) ; cdecl; 198 | procedure setLastModified(time : Int64) ; cdecl; 199 | procedure setReadOnly ; cdecl; 200 | procedure setReadWrite ; cdecl; 201 | end; 202 | 203 | TJSmbFile = class(TJavaGenericImport) 204 | end; 205 | 206 | const 207 | TJSmbFileO_RDONLY = 1; 208 | TJSmbFileO_WRONLY = 2; 209 | TJSmbFileO_RDWR = 3; 210 | TJSmbFileO_APPEND = 4; 211 | TJSmbFileO_CREAT = 16; 212 | TJSmbFileO_EXCL = 32; 213 | TJSmbFileO_TRUNC = 64; 214 | TJSmbFileFILE_NO_SHARE = 0; 215 | TJSmbFileFILE_SHARE_READ = 1; 216 | TJSmbFileFILE_SHARE_WRITE = 2; 217 | TJSmbFileFILE_SHARE_DELETE = 4; 218 | TJSmbFileATTR_READONLY = 1; 219 | TJSmbFileATTR_HIDDEN = 2; 220 | TJSmbFileATTR_SYSTEM = 4; 221 | TJSmbFileATTR_VOLUME = 8; 222 | TJSmbFileATTR_DIRECTORY = 16; 223 | TJSmbFileATTR_ARCHIVE = 32; 224 | TJSmbFileATTR_COMPRESSED = 2048; 225 | TJSmbFileATTR_NORMAL = 128; 226 | TJSmbFileATTR_TEMPORARY = 256; 227 | TJSmbFileATTR_GET_MASK = 32767; 228 | TJSmbFileATTR_SET_MASK = 12455; 229 | TJSmbFileDEFAULT_ATTR_EXPIRATION_PERIOD = 5000; 230 | TJSmbFileTYPE_FILESYSTEM = 1; 231 | TJSmbFileTYPE_WORKGROUP = 2; 232 | TJSmbFileTYPE_SERVER = 4; 233 | TJSmbFileTYPE_SHARE = 8; 234 | TJSmbFileTYPE_NAMED_PIPE = 16; 235 | TJSmbFileTYPE_PRINTER = 32; 236 | TJSmbFileTYPE_COMM = 64; 237 | 238 | implementation 239 | 240 | end. 241 | -------------------------------------------------------------------------------- /android-19-headers/java.nio.ByteBuffer.pas: -------------------------------------------------------------------------------- 1 | // 2 | // Generated by JavaToPas v1.5 20140918 - 093207 3 | //////////////////////////////////////////////////////////////////////////////// 4 | unit java.nio.ByteBuffer; 5 | 6 | interface 7 | 8 | uses 9 | AndroidAPI.JNIBridge, 10 | Androidapi.JNI.JavaTypes, 11 | java.nio.CharBuffer, 12 | java.nio.DoubleBuffer, 13 | java.nio.FloatBuffer, 14 | java.nio.IntBuffer, 15 | java.nio.LongBuffer, 16 | java.nio.ShortBuffer, 17 | java.nio.ByteOrder; 18 | 19 | type 20 | JByteBuffer = interface; 21 | 22 | JByteBufferClass = interface(JObjectClass) 23 | ['{B657C44B-5E5C-4F33-95DA-25DECB87DD76}'] 24 | function &array : TJavaArray; cdecl; // ()[B A: $11 25 | function allocate(capacity : Integer) : JByteBuffer; cdecl; // (I)Ljava/nio/ByteBuffer; A: $9 26 | function allocateDirect(capacity : Integer) : JByteBuffer; cdecl; // (I)Ljava/nio/ByteBuffer; A: $9 27 | function arrayOffset : Integer; cdecl; // ()I A: $11 28 | function asCharBuffer : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 29 | function asDoubleBuffer : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 30 | function asFloatBuffer : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 31 | function asIntBuffer : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 32 | function asLongBuffer : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 33 | function asReadOnlyBuffer : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 34 | function asShortBuffer : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 35 | function compact : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 36 | function compareTo(otherBuffer : JByteBuffer) : Integer; cdecl; // (Ljava/nio/ByteBuffer;)I A: $1 37 | function duplicate : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 38 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 39 | function get : Byte; cdecl; overload; // ()B A: $401 40 | function get(Integerparam0 : Integer) : Byte; cdecl; overload; // (I)B A: $401 41 | function get(dst : TJavaArray) : JByteBuffer; cdecl; overload; // ([B)Ljava/nio/ByteBuffer; A: $1 42 | function get(dst : TJavaArray; dstOffset : Integer; byteCount : Integer) : JByteBuffer; cdecl; overload;// ([BII)Ljava/nio/ByteBuffer; A: $1 43 | function getChar : Char; cdecl; overload; // ()C A: $401 44 | function getChar(Integerparam0 : Integer) : Char; cdecl; overload; // (I)C A: $401 45 | function getDouble : Double; cdecl; overload; // ()D A: $401 46 | function getDouble(Integerparam0 : Integer) : Double; cdecl; overload; // (I)D A: $401 47 | function getFloat : Single; cdecl; overload; // ()F A: $401 48 | function getFloat(Integerparam0 : Integer) : Single; cdecl; overload; // (I)F A: $401 49 | function getInt : Integer; cdecl; overload; // ()I A: $401 50 | function getInt(Integerparam0 : Integer) : Integer; cdecl; overload; // (I)I A: $401 51 | function getLong : Int64; cdecl; overload; // ()J A: $401 52 | function getLong(Integerparam0 : Integer) : Int64; cdecl; overload; // (I)J A: $401 53 | function getShort : SmallInt; cdecl; overload; // ()S A: $401 54 | function getShort(Integerparam0 : Integer) : SmallInt; cdecl; overload; // (I)S A: $401 55 | function hasArray : boolean; cdecl; // ()Z A: $11 56 | function hashCode : Integer; cdecl; // ()I A: $1 57 | function isDirect : boolean; cdecl; // ()Z A: $401 58 | function order : JByteOrder; cdecl; overload; // ()Ljava/nio/ByteOrder; A: $11 59 | function order(byteOrder : JByteOrder) : JByteBuffer; cdecl; overload; // (Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer; A: $11 60 | function put(Byteparam0 : Byte) : JByteBuffer; cdecl; overload; // (B)Ljava/nio/ByteBuffer; A: $401 61 | function put(Integerparam0 : Integer; Byteparam1 : Byte) : JByteBuffer; cdecl; overload;// (IB)Ljava/nio/ByteBuffer; A: $401 62 | function put(src : JByteBuffer) : JByteBuffer; cdecl; overload; // (Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer; A: $1 63 | function put(src : TJavaArray) : JByteBuffer; cdecl; overload; // ([B)Ljava/nio/ByteBuffer; A: $11 64 | function put(src : TJavaArray; srcOffset : Integer; byteCount : Integer) : JByteBuffer; cdecl; overload;// ([BII)Ljava/nio/ByteBuffer; A: $1 65 | function putChar(Charparam0 : Char) : JByteBuffer; cdecl; overload; // (C)Ljava/nio/ByteBuffer; A: $401 66 | function putChar(Integerparam0 : Integer; Charparam1 : Char) : JByteBuffer; cdecl; overload;// (IC)Ljava/nio/ByteBuffer; A: $401 67 | function putDouble(Doubleparam0 : Double) : JByteBuffer; cdecl; overload; // (D)Ljava/nio/ByteBuffer; A: $401 68 | function putDouble(Integerparam0 : Integer; Doubleparam1 : Double) : JByteBuffer; cdecl; overload;// (ID)Ljava/nio/ByteBuffer; A: $401 69 | function putFloat(Integerparam0 : Integer; Singleparam1 : Single) : JByteBuffer; cdecl; overload;// (IF)Ljava/nio/ByteBuffer; A: $401 70 | function putFloat(Singleparam0 : Single) : JByteBuffer; cdecl; overload; // (F)Ljava/nio/ByteBuffer; A: $401 71 | function putInt(Integerparam0 : Integer) : JByteBuffer; cdecl; overload; // (I)Ljava/nio/ByteBuffer; A: $401 72 | function putInt(Integerparam0 : Integer; Integerparam1 : Integer) : JByteBuffer; cdecl; overload;// (II)Ljava/nio/ByteBuffer; A: $401 73 | function putLong(Int64param0 : Int64) : JByteBuffer; cdecl; overload; // (J)Ljava/nio/ByteBuffer; A: $401 74 | function putLong(Integerparam0 : Integer; Int64param1 : Int64) : JByteBuffer; cdecl; overload;// (IJ)Ljava/nio/ByteBuffer; A: $401 75 | function putShort(Integerparam0 : Integer; SmallIntparam1 : SmallInt) : JByteBuffer; cdecl; overload;// (IS)Ljava/nio/ByteBuffer; A: $401 76 | function putShort(SmallIntparam0 : SmallInt) : JByteBuffer; cdecl; overload;// (S)Ljava/nio/ByteBuffer; A: $401 77 | function slice : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 78 | function wrap(&array : TJavaArray) : JByteBuffer; cdecl; overload; // ([B)Ljava/nio/ByteBuffer; A: $9 79 | function wrap(&array : TJavaArray; start : Integer; byteCount : Integer) : JByteBuffer; cdecl; overload;// ([BII)Ljava/nio/ByteBuffer; A: $9 80 | end; 81 | 82 | [JavaSignature('java/nio/ByteBuffer')] 83 | JByteBuffer = interface(JObject) 84 | ['{5DA377C4-EAE0-4B06-90E9-A120F22C9252}'] 85 | function asCharBuffer : JCharBuffer; cdecl; // ()Ljava/nio/CharBuffer; A: $401 86 | function asDoubleBuffer : JDoubleBuffer; cdecl; // ()Ljava/nio/DoubleBuffer; A: $401 87 | function asFloatBuffer : JFloatBuffer; cdecl; // ()Ljava/nio/FloatBuffer; A: $401 88 | function asIntBuffer : JIntBuffer; cdecl; // ()Ljava/nio/IntBuffer; A: $401 89 | function asLongBuffer : JLongBuffer; cdecl; // ()Ljava/nio/LongBuffer; A: $401 90 | function asReadOnlyBuffer : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 91 | function asShortBuffer : JShortBuffer; cdecl; // ()Ljava/nio/ShortBuffer; A: $401 92 | function compact : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 93 | function compareTo(otherBuffer : JByteBuffer) : Integer; cdecl; // (Ljava/nio/ByteBuffer;)I A: $1 94 | function duplicate : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 95 | function equals(other : JObject) : boolean; cdecl; // (Ljava/lang/Object;)Z A: $1 96 | function get : Byte; cdecl; overload; // ()B A: $401 97 | function get(Integerparam0 : Integer) : Byte; cdecl; overload; // (I)B A: $401 98 | function get(dst : TJavaArray) : JByteBuffer; cdecl; overload; // ([B)Ljava/nio/ByteBuffer; A: $1 99 | function get(dst : TJavaArray; dstOffset : Integer; byteCount : Integer) : JByteBuffer; cdecl; overload;// ([BII)Ljava/nio/ByteBuffer; A: $1 100 | function getChar : Char; cdecl; overload; // ()C A: $401 101 | function getChar(Integerparam0 : Integer) : Char; cdecl; overload; // (I)C A: $401 102 | function getDouble : Double; cdecl; overload; // ()D A: $401 103 | function getDouble(Integerparam0 : Integer) : Double; cdecl; overload; // (I)D A: $401 104 | function getFloat : Single; cdecl; overload; // ()F A: $401 105 | function getFloat(Integerparam0 : Integer) : Single; cdecl; overload; // (I)F A: $401 106 | function getInt : Integer; cdecl; overload; // ()I A: $401 107 | function getInt(Integerparam0 : Integer) : Integer; cdecl; overload; // (I)I A: $401 108 | function getLong : Int64; cdecl; overload; // ()J A: $401 109 | function getLong(Integerparam0 : Integer) : Int64; cdecl; overload; // (I)J A: $401 110 | function getShort : SmallInt; cdecl; overload; // ()S A: $401 111 | function getShort(Integerparam0 : Integer) : SmallInt; cdecl; overload; // (I)S A: $401 112 | function hashCode : Integer; cdecl; // ()I A: $1 113 | function isDirect : boolean; cdecl; // ()Z A: $401 114 | function put(Byteparam0 : Byte) : JByteBuffer; cdecl; overload; // (B)Ljava/nio/ByteBuffer; A: $401 115 | function put(Integerparam0 : Integer; Byteparam1 : Byte) : JByteBuffer; cdecl; overload;// (IB)Ljava/nio/ByteBuffer; A: $401 116 | function put(src : JByteBuffer) : JByteBuffer; cdecl; overload; // (Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer; A: $1 117 | function put(src : TJavaArray; srcOffset : Integer; byteCount : Integer) : JByteBuffer; cdecl; overload;// ([BII)Ljava/nio/ByteBuffer; A: $1 118 | function putChar(Charparam0 : Char) : JByteBuffer; cdecl; overload; // (C)Ljava/nio/ByteBuffer; A: $401 119 | function putChar(Integerparam0 : Integer; Charparam1 : Char) : JByteBuffer; cdecl; overload;// (IC)Ljava/nio/ByteBuffer; A: $401 120 | function putDouble(Doubleparam0 : Double) : JByteBuffer; cdecl; overload; // (D)Ljava/nio/ByteBuffer; A: $401 121 | function putDouble(Integerparam0 : Integer; Doubleparam1 : Double) : JByteBuffer; cdecl; overload;// (ID)Ljava/nio/ByteBuffer; A: $401 122 | function putFloat(Integerparam0 : Integer; Singleparam1 : Single) : JByteBuffer; cdecl; overload;// (IF)Ljava/nio/ByteBuffer; A: $401 123 | function putFloat(Singleparam0 : Single) : JByteBuffer; cdecl; overload; // (F)Ljava/nio/ByteBuffer; A: $401 124 | function putInt(Integerparam0 : Integer) : JByteBuffer; cdecl; overload; // (I)Ljava/nio/ByteBuffer; A: $401 125 | function putInt(Integerparam0 : Integer; Integerparam1 : Integer) : JByteBuffer; cdecl; overload;// (II)Ljava/nio/ByteBuffer; A: $401 126 | function putLong(Int64param0 : Int64) : JByteBuffer; cdecl; overload; // (J)Ljava/nio/ByteBuffer; A: $401 127 | function putLong(Integerparam0 : Integer; Int64param1 : Int64) : JByteBuffer; cdecl; overload;// (IJ)Ljava/nio/ByteBuffer; A: $401 128 | function putShort(Integerparam0 : Integer; SmallIntparam1 : SmallInt) : JByteBuffer; cdecl; overload;// (IS)Ljava/nio/ByteBuffer; A: $401 129 | function putShort(SmallIntparam0 : SmallInt) : JByteBuffer; cdecl; overload;// (S)Ljava/nio/ByteBuffer; A: $401 130 | function slice : JByteBuffer; cdecl; // ()Ljava/nio/ByteBuffer; A: $401 131 | end; 132 | 133 | TJByteBuffer = class(TJavaGenericImport) 134 | end; 135 | 136 | implementation 137 | 138 | end. 139 | -------------------------------------------------------------------------------- /Main.pas: -------------------------------------------------------------------------------- 1 | unit Main; 2 | 3 | { 4 | Original author: Alfred. 5 | 6 | Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. 10 | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, 11 | OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 12 | DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 13 | ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | } 15 | 16 | interface 17 | 18 | uses 19 | System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, System.Threading, 20 | FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, 21 | FMX.ListView.Types, FMX.StdCtrls, FMX.ListView, FMX.Layouts, FMX.Memo, 22 | FMX.Objects, FMX.Controls.Presentation, FMX.Edit, 23 | AndroidAPI.JNIBridge, 24 | Androidapi.Helpers, 25 | Androidapi.JNI.JavaTypes, 26 | jcifs.smb.SmbFile, 27 | jcifs.smb.NtlmPasswordAuthentication, 28 | jcifs.smb.SmbFileInputStream, 29 | jcifs.smb.SmbFileOutputStream, 30 | jcifs.Config, 31 | java.io.FileOutputStream 32 | ; 33 | 34 | type 35 | TToastLength = (LongToast, ShortToast); 36 | 37 | TForm1 = class(TForm) 38 | Layout2: TLayout; 39 | Layout1: TLayout; 40 | UserEdit: TEdit; 41 | PassLabel: TLabel; 42 | btnApply: TButton; 43 | Layout3: TLayout; 44 | Rectangle1: TRectangle; 45 | Memo1: TMemo; 46 | Label2: TLabel; 47 | FileServerEdit: TEdit; 48 | ListView1: TListView; 49 | ToolBar1: TToolBar; 50 | Label1: TLabel; 51 | ImageFolder: TImageControl; 52 | ImageFile: TImageControl; 53 | ImageUp: TImageControl; 54 | UserLabel: TLabel; 55 | PassEdit: TEdit; 56 | procedure FormCreate(Sender: TObject); 57 | procedure ListView1PullRefresh(Sender: TObject); 58 | procedure btnApplyClick(Sender: TObject); 59 | procedure ListView1ItemClick(const Sender: TObject; const AItem: TListViewItem); 60 | procedure FileServerEditChange(Sender: TObject); 61 | procedure FormDestroy(Sender: TObject); 62 | private 63 | { Private declarations } 64 | auth : JNtlmPasswordAuthentication; 65 | networkworkgroup : JSmbFile; 66 | networkshare : JSmbFile; 67 | networkfile : JSmbFile; 68 | JC : TJConfig; 69 | procedure GetFileList; 70 | procedure CreateFile(localfile : JSmbFile); 71 | procedure CopyFile(source : JSmbFile; dest:String); 72 | public 73 | { Public declarations } 74 | end; 75 | 76 | procedure Toast(const Msg: string; Duration: TToastLength = ShortToast); 77 | 78 | var 79 | Form1: TForm1; 80 | 81 | implementation 82 | 83 | {$R *.fmx} 84 | 85 | uses 86 | FMX.Helpers.Android, 87 | android.widget.Toast, 88 | System.IOUtils, 89 | System.IniFiles, 90 | Generics.Defaults, 91 | System.Generics.Collections, 92 | EditSettingsFile, 93 | Androidapi.JNI; 94 | 95 | const 96 | UpText = '../ (up)'; 97 | RootText = 'smb://'; 98 | INIFILENAME = 'settings.ini'; 99 | 100 | function CompareLowerStr(const Left, Right: string): Integer; 101 | begin 102 | Result := CompareStr(AnsiLowerCase(Left), AnsiLowerCase(Right)); 103 | end; 104 | 105 | { TForm1 } 106 | 107 | procedure TForm1.FileServerEditChange(Sender: TObject); 108 | begin 109 | networkshare := TJSmbFile.JavaClass.init(StringToJString(RootText+Uppercase(TEdit(Sender).Text)+'/'),auth); 110 | GetFileList; 111 | //ListView1.SetFocus; 112 | end; 113 | 114 | procedure TForm1.FormCreate(Sender: TObject); 115 | var 116 | ini : TIniFile; 117 | begin 118 | 119 | Ini := TIniFile.Create(System.IOUtils.TPath.Combine(System.IOUtils.tpath.GetHomePath,INIFILENAME)); 120 | try 121 | UserEdit.Text:=Ini.ReadString( 'Security', 'Username', 'enterusername' ); 122 | PassEdit.Text:=Ini.ReadString( 'Security', 'Password', 'enterpassword' ); 123 | finally 124 | Ini.Free; 125 | end; 126 | 127 | try 128 | JC.JavaClass.registerSmbURLHandler; 129 | JC.JavaClass.setProperty(StringToJString('resolveOrder'),StringToJString('DNS')); 130 | networkworkgroup := nil; 131 | networkfile := nil; 132 | //auth:=TJNtlmPasswordAuthentication.JavaClass.init(StringToJString(TJNtlmPasswordAuthenticationBLANK)); 133 | //auth:=TJNtlmPasswordAuthentication.JavaClass.init(StringToJString(''),StringToJString(''),StringToJString('')); 134 | auth:=TJNtlmPasswordAuthentication.JavaClass.init(StringToJString(''),StringToJString(UserEdit.Text),StringToJString(PassEdit.Text)); 135 | networkshare := TJSmbFile.JavaClass.init(StringToJString(RootText),auth); 136 | GetFileList; 137 | except 138 | on E: Exception do 139 | Memo1.Lines.Append('Create: '+E.ClassName + ': ' + E.Message); 140 | end; 141 | end; 142 | 143 | 144 | procedure TForm1.FormDestroy(Sender: TObject); 145 | begin 146 | System.IOUtils.TDirectory.Delete(System.IOUtils.TPath.GetTempPath,True); 147 | end; 148 | 149 | procedure TForm1.ListView1ItemClick(const Sender: TObject; const AItem: TListViewItem); 150 | var 151 | localsharefile : JSmbFile; 152 | //localtempfile : JSmbFile; 153 | begin 154 | if NOT networkshare.exists then exit; 155 | 156 | if Assigned(AItem) then 157 | begin 158 | 159 | //if AItem.Index=0 then // go up !! 160 | if AItem.Text=UpText then // go up !! 161 | begin 162 | if ( (networkshare.getType=TJSmbFile.JavaClass.TYPE_SERVER) AND (Assigned(networkworkgroup)) ) 163 | then localsharefile := networkworkgroup 164 | else localsharefile := TJSmbFile.JavaClass.init(networkshare.getParent,auth); 165 | end 166 | // remember : workgroup NOT replaced by host with method : ERRORS !!!! 167 | //else localsharefile := TJSmbFile.JavaClass.init(networkshare.toString,StringToJString(AItem.Text),auth); 168 | // remember : workgroup replaced by host with method : OK !! 169 | else localsharefile := TJSmbFile.JavaClass.init(networkshare,StringToJString(AItem.Text)); 170 | 171 | if localsharefile.getType=TJSmbFile.JavaClass.TYPE_WORKGROUP then 172 | networkworkgroup:=localsharefile; 173 | 174 | if localsharefile.isFile then 175 | begin 176 | Toast('Downloading file !! Please wait '); 177 | 178 | networkfile:=localsharefile; 179 | // opening remote file does not work ... and will never work !! 180 | // OpenURLorFile(JStringToString(localsharefile.toString)); 181 | 182 | // second method ... download a (local) copy and open this local file ! 183 | // System.IOUtils.TPath.GetDownloadsPath 184 | // System.IOUtils.TPath.GetCachePath 185 | // System.IOUtils.TPath.GetTempPath 186 | CopyFile(networkfile,System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetTempPath,JStringToString(networkfile.getName))); 187 | OpenURLorFile(System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetTempPath,JStringToString(networkfile.getName))); 188 | 189 | // third method ... also not working yet ... and will never work !! 190 | // localtempfile := TJSmbFile.JavaClass.init(StringToJString(System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetDownloadsPath,JStringToString(networkfile.getName)))); 191 | // localtempfile.createNewFile; 192 | // networkfile.copyTo(localtempfile); 193 | // OpenURLorFile(JStringToString(networkfile.toString)); 194 | end 195 | else 196 | begin 197 | networkfile:=nil; 198 | networkshare := localsharefile; 199 | TThread.CreateAnonymousThread( 200 | procedure 201 | begin 202 | TThread.Synchronize( 203 | TThread.CurrentThread, 204 | procedure 205 | begin 206 | sleep(25); 207 | GetFileList; 208 | end 209 | ); 210 | end 211 | ).Start; 212 | 213 | end; 214 | 215 | end; 216 | end; 217 | 218 | procedure TForm1.ListView1PullRefresh(Sender: TObject); 219 | begin 220 | GetFileList; 221 | end; 222 | 223 | procedure TForm1.GetFileList; 224 | var 225 | I : Integer; 226 | Item: TListViewItem; 227 | testfiles: TJavaObjectArray; 228 | localtestfile: JSmbFile; 229 | folders, files: TStringDynArray; 230 | begin 231 | if NOT Assigned(networkshare) then exit; 232 | 233 | if NOT networkshare.exists then exit; 234 | 235 | Toast('Receiving file list !'); 236 | 237 | ListView1.Items.BeginUpdate; 238 | 239 | try 240 | ListView1.ClearItems; 241 | 242 | if JStringToString(networkshare.toString)<>(RootText+'//') then 243 | begin 244 | Item := ListView1.Items.Add; 245 | Item.Text := UpText; 246 | Item.BitmapRef := ImageUp.Bitmap; 247 | Item.Height := 56; 248 | end; 249 | 250 | try 251 | testfiles:=networkshare.listFiles; 252 | if testfiles <> nil then 253 | begin 254 | for i := 0 to Pred(testfiles.Length) do 255 | begin 256 | // This (localtestfile := testfiles.Items[I]) does not work as expected !! 257 | // Change TJavaArray --> TJavaObjectArray : And wrap up the raw object ID manually 258 | localtestfile := TJSmbFile.Wrap(testfiles.GetRawItem(i)); 259 | if Assigned(localtestfile) then 260 | begin 261 | if localtestfile.isFile then 262 | begin 263 | SetLength(files, Length(files) + 1); 264 | files[Length(files) - 1] := JStringToString(localtestfile.getName); 265 | end 266 | else 267 | begin 268 | SetLength(folders, Length(folders) + 1); 269 | folders[Length(folders) - 1] := JStringToString(localtestfile.getName); 270 | end; 271 | end; 272 | end; 273 | 274 | if Length(folders)>0 then 275 | begin 276 | TArray.Sort(folders, TComparer.Construct(CompareLowerStr)); 277 | for I := Low(folders) to High(folders) do 278 | begin 279 | Item := ListView1.Items.Add; 280 | Item.Text := folders[i]; 281 | Item.BitmapRef := ImageFolder.Bitmap; 282 | Item.Height := 56; 283 | end; 284 | Finalize(folders); 285 | end; 286 | 287 | if Length(files)>0 then 288 | begin 289 | TArray.Sort(files, TComparer.Construct(CompareLowerStr)); 290 | for i := Low(files) to High(files) do 291 | begin 292 | Item := ListView1.Items.Add; 293 | Item.Text := files[i]; 294 | Item.BitmapRef := ImageFile.Bitmap; 295 | Item.Height := 56; 296 | end; 297 | Finalize(files); 298 | end; 299 | 300 | end; 301 | except 302 | on E: Exception do 303 | Memo1.Lines.Append('List: '+E.ClassName + ': ' + E.Message); 304 | end; 305 | finally 306 | ListView1.Items.EndUpdate; 307 | end; 308 | end; 309 | 310 | procedure TForm1.CreateFile(localfile : JSmbFile); 311 | var 312 | outfile : JSmbFileOutputStream; 313 | begin 314 | // Ceate a file on the share the Android way 315 | try 316 | outfile := TJSmbFileOutputStream.JavaClass.init(localfile); 317 | outfile.write(65); 318 | outfile.write(66); 319 | outfile.write(67); 320 | outfile.write(StringToJString('Testing....and writing to a file').getBytes()); 321 | outfile.close; 322 | except 323 | on E: Exception do 324 | Memo1.Lines.Append('Create file: '+E.ClassName + ': ' + E.Message); 325 | end; 326 | end; 327 | 328 | 329 | procedure TForm1.btnApplyClick(Sender: TObject); 330 | var 331 | ini : TIniFile; 332 | begin 333 | 334 | Ini := TIniFile.Create(System.IOUtils.TPath.Combine(System.IOUtils.tpath.GetHomePath,INIFILENAME)); 335 | try 336 | Ini.WriteString( 'Security', 'Username', UserEdit.Text ); 337 | Ini.WriteString( 'Security', 'Password', PassEdit.Text ); 338 | finally 339 | Ini.Free; 340 | end; 341 | 342 | try 343 | auth:=TJNtlmPasswordAuthentication.JavaClass.init(StringToJString(''),StringToJString(UserEdit.Text),StringToJString(PassEdit.Text)); 344 | networkshare := TJSmbFile.JavaClass.init(networkshare.toString,auth); 345 | GetFileList; 346 | except 347 | on E: Exception do 348 | Memo1.Lines.Append('Auth: '+E.ClassName + ': ' + E.Message); 349 | end; 350 | end; 351 | 352 | procedure TForm1.CopyFile(source : JSmbFile; dest : String); 353 | const 354 | bufferSize = 4096*2; 355 | var 356 | noOfBytes : Integer; 357 | b : TJavaArray; 358 | localinfile : JInputStream; 359 | localfileoutstream : JFileOutputStream; 360 | begin 361 | // Copy a file from share to local the Android way 362 | try 363 | localinfile := source.getInputStream; 364 | localfileoutstream := TJFileOutputStream.JavaClass.init(StringToJString(dest)); 365 | b := TJavaArray.Create(bufferSize); 366 | noOfBytes := localinfile.read(b); 367 | while (noOfBytes > 0) do 368 | begin 369 | localfileoutstream.write(b, 0, noOfBytes); 370 | noOfBytes := localinfile.read(b); 371 | end; 372 | localfileoutstream.close; 373 | localinfile.close; 374 | except 375 | on E: Exception do 376 | Memo1.Lines.Append('Copy file: '+E.ClassName + ': ' + E.Message); 377 | end; 378 | end; 379 | 380 | procedure Toast(const Msg: string; Duration: TToastLength); 381 | var 382 | ToastLength: Integer; 383 | begin 384 | if Duration = ShortToast then 385 | ToastLength := TJToast.JavaClass.LENGTH_SHORT 386 | else 387 | ToastLength := TJToast.JavaClass.LENGTH_LONG; 388 | CallInUiThread(procedure 389 | begin 390 | TJToast.JavaClass.makeText(SharedActivityContext, StrToJCharSequence(msg), 391 | ToastLength).show; 392 | end); 393 | end; 394 | 395 | end. 396 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | GNU GENERAL PUBLIC LICENSE 2 | Version 2, June 1991 3 | 4 | Copyright (C) 1989, 1991 Free Software Foundation, Inc., 5 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 6 | Everyone is permitted to copy and distribute verbatim copies 7 | of this license document, but changing it is not allowed. 8 | 9 | Preamble 10 | 11 | The licenses for most software are designed to take away your 12 | freedom to share and change it. By contrast, the GNU General Public 13 | License is intended to guarantee your freedom to share and change free 14 | software--to make sure the software is free for all its users. This 15 | General Public License applies to most of the Free Software 16 | Foundation's software and to any other program whose authors commit to 17 | using it. (Some other Free Software Foundation software is covered by 18 | the GNU Lesser General Public License instead.) You can apply it to 19 | your programs, too. 20 | 21 | When we speak of free software, we are referring to freedom, not 22 | price. Our General Public Licenses are designed to make sure that you 23 | have the freedom to distribute copies of free software (and charge for 24 | this service if you wish), that you receive source code or can get it 25 | if you want it, that you can change the software or use pieces of it 26 | in new free programs; and that you know you can do these things. 27 | 28 | To protect your rights, we need to make restrictions that forbid 29 | anyone to deny you these rights or to ask you to surrender the rights. 30 | These restrictions translate to certain responsibilities for you if you 31 | distribute copies of the software, or if you modify it. 32 | 33 | For example, if you distribute copies of such a program, whether 34 | gratis or for a fee, you must give the recipients all the rights that 35 | you have. You must make sure that they, too, receive or can get the 36 | source code. And you must show them these terms so they know their 37 | rights. 38 | 39 | We protect your rights with two steps: (1) copyright the software, and 40 | (2) offer you this license which gives you legal permission to copy, 41 | distribute and/or modify the software. 42 | 43 | Also, for each author's protection and ours, we want to make certain 44 | that everyone understands that there is no warranty for this free 45 | software. If the software is modified by someone else and passed on, we 46 | want its recipients to know that what they have is not the original, so 47 | that any problems introduced by others will not reflect on the original 48 | authors' reputations. 49 | 50 | Finally, any free program is threatened constantly by software 51 | patents. We wish to avoid the danger that redistributors of a free 52 | program will individually obtain patent licenses, in effect making the 53 | program proprietary. To prevent this, we have made it clear that any 54 | patent must be licensed for everyone's free use or not licensed at all. 55 | 56 | The precise terms and conditions for copying, distribution and 57 | modification follow. 58 | 59 | GNU GENERAL PUBLIC LICENSE 60 | TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 61 | 62 | 0. This License applies to any program or other work which contains 63 | a notice placed by the copyright holder saying it may be distributed 64 | under the terms of this General Public License. The "Program", below, 65 | refers to any such program or work, and a "work based on the Program" 66 | means either the Program or any derivative work under copyright law: 67 | that is to say, a work containing the Program or a portion of it, 68 | either verbatim or with modifications and/or translated into another 69 | language. (Hereinafter, translation is included without limitation in 70 | the term "modification".) Each licensee is addressed as "you". 71 | 72 | Activities other than copying, distribution and modification are not 73 | covered by this License; they are outside its scope. The act of 74 | running the Program is not restricted, and the output from the Program 75 | is covered only if its contents constitute a work based on the 76 | Program (independent of having been made by running the Program). 77 | Whether that is true depends on what the Program does. 78 | 79 | 1. You may copy and distribute verbatim copies of the Program's 80 | source code as you receive it, in any medium, provided that you 81 | conspicuously and appropriately publish on each copy an appropriate 82 | copyright notice and disclaimer of warranty; keep intact all the 83 | notices that refer to this License and to the absence of any warranty; 84 | and give any other recipients of the Program a copy of this License 85 | along with the Program. 86 | 87 | You may charge a fee for the physical act of transferring a copy, and 88 | you may at your option offer warranty protection in exchange for a fee. 89 | 90 | 2. You may modify your copy or copies of the Program or any portion 91 | of it, thus forming a work based on the Program, and copy and 92 | distribute such modifications or work under the terms of Section 1 93 | above, provided that you also meet all of these conditions: 94 | 95 | a) You must cause the modified files to carry prominent notices 96 | stating that you changed the files and the date of any change. 97 | 98 | b) You must cause any work that you distribute or publish, that in 99 | whole or in part contains or is derived from the Program or any 100 | part thereof, to be licensed as a whole at no charge to all third 101 | parties under the terms of this License. 102 | 103 | c) If the modified program normally reads commands interactively 104 | when run, you must cause it, when started running for such 105 | interactive use in the most ordinary way, to print or display an 106 | announcement including an appropriate copyright notice and a 107 | notice that there is no warranty (or else, saying that you provide 108 | a warranty) and that users may redistribute the program under 109 | these conditions, and telling the user how to view a copy of this 110 | License. (Exception: if the Program itself is interactive but 111 | does not normally print such an announcement, your work based on 112 | the Program is not required to print an announcement.) 113 | 114 | These requirements apply to the modified work as a whole. If 115 | identifiable sections of that work are not derived from the Program, 116 | and can be reasonably considered independent and separate works in 117 | themselves, then this License, and its terms, do not apply to those 118 | sections when you distribute them as separate works. But when you 119 | distribute the same sections as part of a whole which is a work based 120 | on the Program, the distribution of the whole must be on the terms of 121 | this License, whose permissions for other licensees extend to the 122 | entire whole, and thus to each and every part regardless of who wrote it. 123 | 124 | Thus, it is not the intent of this section to claim rights or contest 125 | your rights to work written entirely by you; rather, the intent is to 126 | exercise the right to control the distribution of derivative or 127 | collective works based on the Program. 128 | 129 | In addition, mere aggregation of another work not based on the Program 130 | with the Program (or with a work based on the Program) on a volume of 131 | a storage or distribution medium does not bring the other work under 132 | the scope of this License. 133 | 134 | 3. You may copy and distribute the Program (or a work based on it, 135 | under Section 2) in object code or executable form under the terms of 136 | Sections 1 and 2 above provided that you also do one of the following: 137 | 138 | a) Accompany it with the complete corresponding machine-readable 139 | source code, which must be distributed under the terms of Sections 140 | 1 and 2 above on a medium customarily used for software interchange; or, 141 | 142 | b) Accompany it with a written offer, valid for at least three 143 | years, to give any third party, for a charge no more than your 144 | cost of physically performing source distribution, a complete 145 | machine-readable copy of the corresponding source code, to be 146 | distributed under the terms of Sections 1 and 2 above on a medium 147 | customarily used for software interchange; or, 148 | 149 | c) Accompany it with the information you received as to the offer 150 | to distribute corresponding source code. (This alternative is 151 | allowed only for noncommercial distribution and only if you 152 | received the program in object code or executable form with such 153 | an offer, in accord with Subsection b above.) 154 | 155 | The source code for a work means the preferred form of the work for 156 | making modifications to it. For an executable work, complete source 157 | code means all the source code for all modules it contains, plus any 158 | associated interface definition files, plus the scripts used to 159 | control compilation and installation of the executable. However, as a 160 | special exception, the source code distributed need not include 161 | anything that is normally distributed (in either source or binary 162 | form) with the major components (compiler, kernel, and so on) of the 163 | operating system on which the executable runs, unless that component 164 | itself accompanies the executable. 165 | 166 | If distribution of executable or object code is made by offering 167 | access to copy from a designated place, then offering equivalent 168 | access to copy the source code from the same place counts as 169 | distribution of the source code, even though third parties are not 170 | compelled to copy the source along with the object code. 171 | 172 | 4. You may not copy, modify, sublicense, or distribute the Program 173 | except as expressly provided under this License. Any attempt 174 | otherwise to copy, modify, sublicense or distribute the Program is 175 | void, and will automatically terminate your rights under this License. 176 | However, parties who have received copies, or rights, from you under 177 | this License will not have their licenses terminated so long as such 178 | parties remain in full compliance. 179 | 180 | 5. You are not required to accept this License, since you have not 181 | signed it. However, nothing else grants you permission to modify or 182 | distribute the Program or its derivative works. These actions are 183 | prohibited by law if you do not accept this License. Therefore, by 184 | modifying or distributing the Program (or any work based on the 185 | Program), you indicate your acceptance of this License to do so, and 186 | all its terms and conditions for copying, distributing or modifying 187 | the Program or works based on it. 188 | 189 | 6. Each time you redistribute the Program (or any work based on the 190 | Program), the recipient automatically receives a license from the 191 | original licensor to copy, distribute or modify the Program subject to 192 | these terms and conditions. You may not impose any further 193 | restrictions on the recipients' exercise of the rights granted herein. 194 | You are not responsible for enforcing compliance by third parties to 195 | this License. 196 | 197 | 7. If, as a consequence of a court judgment or allegation of patent 198 | infringement or for any other reason (not limited to patent issues), 199 | conditions are imposed on you (whether by court order, agreement or 200 | otherwise) that contradict the conditions of this License, they do not 201 | excuse you from the conditions of this License. If you cannot 202 | distribute so as to satisfy simultaneously your obligations under this 203 | License and any other pertinent obligations, then as a consequence you 204 | may not distribute the Program at all. For example, if a patent 205 | license would not permit royalty-free redistribution of the Program by 206 | all those who receive copies directly or indirectly through you, then 207 | the only way you could satisfy both it and this License would be to 208 | refrain entirely from distribution of the Program. 209 | 210 | If any portion of this section is held invalid or unenforceable under 211 | any particular circumstance, the balance of the section is intended to 212 | apply and the section as a whole is intended to apply in other 213 | circumstances. 214 | 215 | It is not the purpose of this section to induce you to infringe any 216 | patents or other property right claims or to contest validity of any 217 | such claims; this section has the sole purpose of protecting the 218 | integrity of the free software distribution system, which is 219 | implemented by public license practices. Many people have made 220 | generous contributions to the wide range of software distributed 221 | through that system in reliance on consistent application of that 222 | system; it is up to the author/donor to decide if he or she is willing 223 | to distribute software through any other system and a licensee cannot 224 | impose that choice. 225 | 226 | This section is intended to make thoroughly clear what is believed to 227 | be a consequence of the rest of this License. 228 | 229 | 8. If the distribution and/or use of the Program is restricted in 230 | certain countries either by patents or by copyrighted interfaces, the 231 | original copyright holder who places the Program under this License 232 | may add an explicit geographical distribution limitation excluding 233 | those countries, so that distribution is permitted only in or among 234 | countries not thus excluded. In such case, this License incorporates 235 | the limitation as if written in the body of this License. 236 | 237 | 9. The Free Software Foundation may publish revised and/or new versions 238 | of the General Public License from time to time. Such new versions will 239 | be similar in spirit to the present version, but may differ in detail to 240 | address new problems or concerns. 241 | 242 | Each version is given a distinguishing version number. If the Program 243 | specifies a version number of this License which applies to it and "any 244 | later version", you have the option of following the terms and conditions 245 | either of that version or of any later version published by the Free 246 | Software Foundation. If the Program does not specify a version number of 247 | this License, you may choose any version ever published by the Free Software 248 | Foundation. 249 | 250 | 10. If you wish to incorporate parts of the Program into other free 251 | programs whose distribution conditions are different, write to the author 252 | to ask for permission. For software which is copyrighted by the Free 253 | Software Foundation, write to the Free Software Foundation; we sometimes 254 | make exceptions for this. Our decision will be guided by the two goals 255 | of preserving the free status of all derivatives of our free software and 256 | of promoting the sharing and reuse of software generally. 257 | 258 | NO WARRANTY 259 | 260 | 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 261 | FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 262 | OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 263 | PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 264 | OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 265 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 266 | TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 267 | PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 268 | REPAIR OR CORRECTION. 269 | 270 | 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 271 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 272 | REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 273 | INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 274 | OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 275 | TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 276 | YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 277 | PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 278 | POSSIBILITY OF SUCH DAMAGES. 279 | 280 | END OF TERMS AND CONDITIONS 281 | 282 | How to Apply These Terms to Your New Programs 283 | 284 | If you develop a new program, and you want it to be of the greatest 285 | possible use to the public, the best way to achieve this is to make it 286 | free software which everyone can redistribute and change under these terms. 287 | 288 | To do so, attach the following notices to the program. It is safest 289 | to attach them to the start of each source file to most effectively 290 | convey the exclusion of warranty; and each file should have at least 291 | the "copyright" line and a pointer to where the full notice is found. 292 | 293 | {description} 294 | Copyright (C) {year} {fullname} 295 | 296 | This program is free software; you can redistribute it and/or modify 297 | it under the terms of the GNU General Public License as published by 298 | the Free Software Foundation; either version 2 of the License, or 299 | (at your option) any later version. 300 | 301 | This program is distributed in the hope that it will be useful, 302 | but WITHOUT ANY WARRANTY; without even the implied warranty of 303 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 304 | GNU General Public License for more details. 305 | 306 | You should have received a copy of the GNU General Public License along 307 | with this program; if not, write to the Free Software Foundation, Inc., 308 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 309 | 310 | Also add information on how to contact you by electronic and paper mail. 311 | 312 | If the program is interactive, make it output a short notice like this 313 | when it starts in an interactive mode: 314 | 315 | Gnomovision version 69, Copyright (C) year name of author 316 | Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 317 | This is free software, and you are welcome to redistribute it 318 | under certain conditions; type `show c' for details. 319 | 320 | The hypothetical commands `show w' and `show c' should show the appropriate 321 | parts of the General Public License. Of course, the commands you use may 322 | be called something other than `show w' and `show c'; they could even be 323 | mouse-clicks or menu items--whatever suits your program. 324 | 325 | You should also get your employer (if you work as a programmer) or your 326 | school, if any, to sign a "copyright disclaimer" for the program, if 327 | necessary. Here is a sample; alter the names: 328 | 329 | Yoyodyne, Inc., hereby disclaims all copyright interest in the program 330 | `Gnomovision' (which makes passes at compilers) written by James Hacker. 331 | 332 | {signature of Ty Coon}, 1 April 1989 333 | Ty Coon, President of Vice 334 | 335 | This General Public License does not permit incorporating your program into 336 | proprietary programs. If your program is a subroutine library, you may 337 | consider it more useful to permit linking proprietary applications with the 338 | library. If this is what you want to do, use the GNU Lesser General 339 | Public License instead of this License. 340 | 341 | --------------------------------------------------------------------------------