USERLIB DECLS TO CSharp (Unity 3D) converter
Blitz3D Forums/Blitz3D Userlibs/USERLIB DECLS TO CSharp (Unity 3D) converter
| ||
Hi,; ; Blitz3D USERLIB DECLS (DLL) TO CSharp (Unity 3D) (c) 2015 ZJP ; PUBLIC DOMAIN ; Dim parameter$(10) Global i% Global DECLS_INPUT_FILE$ Global CPP_OUTPUT_FILE$ Global DECLS_FIRST_CAR$ Global line_input_file$ Global Found_char% Global Alias_Dll$ Global middle$ Global tempo_string$ Global car$ Global nb_param% Global DLL_lib$ Global CALLING_example$ Global tempo$ Global PROC_Def$ Global Position% Global Var_TYPE$ Global bof$ Global ok$ ; ; Fichier DECLS - DECLS File <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Change this !!! DECLS_INPUT_FILE = "Cheetah2.DECLS" ; Lines begin with...<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Change this !!! DECLS_FIRST_CAR = "xdb" ; DLL Name<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Change this !!! DLL_lib = "Cheetah2" CPP_OUTPUT_FILE = DLL_lib + ".cs" ; file_in% = OpenFile(DECLS_INPUT_FILE) file_out% = WriteFile(CPP_OUTPUT_FILE) ; WriteLine(file_out,"") WriteLine(file_out,"using UnityEngine;") WriteLine(file_out,"using System.Collections;") WriteLine(file_out,"using System.Runtime.InteropServices;") WriteLine(file_out,"") WriteLine(file_out,"public class " + DLL_lib + " : MonoBehaviour") WriteLine(file_out,"{") ; While Not Eof(file_in) line_input_file$ = ReadLine$( file_in ) ; Remove all spaces in the input line tempo="" For i=1 To Len(line_input_file$) car$=Mid(line_input_file$,i,1) If car$<>" " Then tempo$=tempo$+car$ Next line_input_file$=tempo$ ; Select only the line began with "px" in this example If Left(line_input_file, Len(DECLS_FIRST_CAR)) <> DECLS_FIRST_CAR Then Goto suivant ; find the Alias Found_char = Instr(line_input_file, ":", 1) Alias_Dll = Mid(line_input_file, Found_char + 1) ; CALLING_example = "[DllImport (" + Chr(34) + DLL_lib + Chr(34) + ", EntryPoint = " + Alias_Dll + ")]" + Chr(13) + Chr(9) + Chr(9) + "private static extern " CALLING_example = Chr(9)+ "[DllImport (" + Chr(34) + DLL_lib + Chr(34) + ", EntryPoint = " + Alias_Dll + ")] private static extern " middle = " " ; Var_TYPE >> % # Or $ * Found_char = Instr(line_input_file, "(", 1) Var_TYPE = Mid(line_input_file, Found_char - 1, 1) ; % Integer If Var_TYPE = "%" Then tempo = Left(line_input_file, Found_char - 2) CALLING_example = CALLING_example + "int " End If ; # Float If Var_TYPE = "#" Then tempo = Left(line_input_file, Found_char - 2) CALLING_example = CALLING_example + "float " End If ; $ STRING If Var_TYPE = "$" Then tempo = Left(line_input_file, Found_char - 2) CALLING_example = CALLING_example + "string " End If ; * POINTER If Var_TYPE = "*" Then tempo = Left(line_input_file, Found_char - 2) CALLING_example = CALLING_example + "ptr " End If ; void If Var_TYPE <> "#" And Var_TYPE <> "%" And Var_TYPE <> "$" And Var_TYPE <> "*" Then tempo = Left(line_input_file, Found_char - 1) CALLING_example = CALLING_example + "void " End If ; Nbr of parameters If Mid(line_input_file, Found_char + 1, 1) = ")" Then middle = ");" Goto continue End If ; parameters ; remove the ( ) tempo_string = "" nb_param = 0 For i = Found_char + 1 To 1000 car = Mid(line_input_file, i, 1) If car = "," Then nb_param = nb_param + 1 parameter(nb_param) = Trim(tempo_string) car = "" tempo_string = "" End If If car = ")" Then nb_param = nb_param + 1 parameter(nb_param) = Trim(tempo_string) tempo_string = "" Exit End If tempo_string = tempo_string + car Next ; parameters middle = " " For i = 1 To nb_param ; % interger If Right(parameter(i), 1) = "%" Then ok = " int " + Left(parameter(i), Len(parameter(i)) - 1) + "," End If ; * pointer If Right(parameter(i), 1) = "*" Then ok = " System.IntPtr " + Left(parameter(i), Len(parameter(i)) - 1) + "," End If ; # float If Right(parameter(i), 1) = "#" Then ok = " float " + Left(parameter(i), Len(parameter(i)) - 1) + "," End If ; $ string If Right(parameter(i), 1) = "$" Then ok = " string " + Left(parameter(i), Len(parameter(i)) - 1) + "," End If middle = middle + ok ok = "" Next ; remove the last ";" If Len(middle)>1 Then middle=Trim(middle) middle = Left(middle, Len(middle) - 1) + ");" .continue WriteLine( file_out,Chr(9)+"// Original DECLS line ==> " + line_input_file) WriteLine( file_out,CALLING_example + tempo + "(" + Trim(middle)) .suivant Wend ; ; WriteLine(file_out,"") WriteLine(file_out,"") WriteLine(file_out,Chr(9)+"void Start ()") WriteLine(file_out,Chr(9)+"{") WriteLine(file_out,Chr(9)+"}") WriteLine(file_out,"}") CloseFile file_in CloseFile file_out End Example of convertion using UnityEngine; using System.Collections; using System.Runtime.InteropServices; public class Cheetah2 : MonoBehaviour { //*********************************************************************************************************** // CHEETAH2 DECLARATIONS * //*********************************************************************************************************** // DATABASE ROUTINES - Creation/Opening/Closing * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBCREATE_Z")] private static extern void xdbCreate(string dbFile, string AllFields); [DllImport ("Cheetah2", EntryPoint = "XDBCREATEEXTENDED_Z")] private static extern void xdbCreateExtended(string tFileName, string AllFields, int MemoBlockSize, int Algorithm, string EncryptionKey); [DllImport ("Cheetah2", EntryPoint = "XDBOPEN_Z")] private static extern int xdbOpen(string dbFile, string EncryptionKey); [DllImport ("Cheetah2", EntryPoint = "XDBOPENEX_Z")] private static extern int xdbOpenEX(string dbFile, int AccessMode, int ShareMode, string EncryptionKey); [DllImport ("Cheetah2", EntryPoint = "XDBALIAS_Z")] private static extern int xdbAlias(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBSETALIAS_Z")] private static extern void xdbSetAlias(int dbHandle, string AliasName); [DllImport ("Cheetah2", EntryPoint = "XDBCREATEFIELDS_Z")] private static extern void xdbCreateFields(string mFileName); [DllImport ("Cheetah2", EntryPoint = "XDBCREATEFIELDSEXTENDED_Z")] private static extern void xdbCreateFieldsExtended(string mFileName, int MemoBlockSize, int Algorithm, string EncryptionKey); [DllImport ("Cheetah2", EntryPoint = "XDBADDFIELD_Z")] private static extern void xdbAddField(string FieldInfoString); [DllImport ("Cheetah2", EntryPoint = "XDBCLOSE_Z")] private static extern void xdbClose(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBCLOSEALLINDEXES_Z")] private static extern void xdbCloseAllIndexes(int dbHandle); //*********************************************************************************************************** // DATABASE ROUTINES - MultiUser % Locking * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBMULTIUSER_Z")] private static extern void xdbMultiUser(int TrueFalse, int NumRetries, int WaitTime); [DllImport ("Cheetah2", EntryPoint = "XDBFAILEDLOCKINFO_Z")] private static extern void xdbFailedLockInfo(int DBFhandle, int zReason, int zUsername, int zWorkstation, int zLockDate, int zLockTime); [DllImport ("Cheetah2", EntryPoint = "XDBSETEXCLUSIVELOCK_Z")] private static extern int xdbSetExclusiveLock(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBREMOVEEXCLUSIVELOCK_Z")] private static extern void xdbRemoveExclusiveLock(int DBFhandle, int LOCK_NUM); [DllImport ("Cheetah2", EntryPoint = "XDBSETEDITLOCK_Z")] private static extern int xdbSetEditLock(int DBFhandle, int RecordNumber); [DllImport ("Cheetah2", EntryPoint = "XDBREMOVEEDITLOCK_Z")] private static extern void xdbRemoveEditLock(int DBFhandle, int LOCK_NUM); [DllImport ("Cheetah2", EntryPoint = "XDBISEDITLOCK_Z")] private static extern int xdbIsEditLock(int DBFhandle, int RecordNumber); //*********************************************************************************************************** // DATABASE ROUTINES - Adding/Deleting Records * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBADDRECORD_Z")] private static extern void xdbAddRecord(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBAPPENDRECORD_Z")] private static extern void xdbAppendRecord(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBCLEARBUFFER_Z")] private static extern void xdbClearBuffer(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBPUTRECORD_Z")] private static extern void xdbPutRecord(int dbHandle, int RN); [DllImport ("Cheetah2", EntryPoint = "XDBGETRECORD_Z")] private static extern void xdbGetRecord(int dbHandle, int RN); [DllImport ("Cheetah2", EntryPoint = "XDBDELETERECORD_Z")] private static extern void xdbDeleteRecord(int DBFhandle, int RecordNumber); [DllImport ("Cheetah2", EntryPoint = "XDBRECALLRECORD_Z")] private static extern void xdbRecallRecord(int DBFhandle, int RecordNumber); [DllImport ("Cheetah2", EntryPoint = "XDBDELETED_Z")] private static extern int xdbDeleted(int DBFhandle, int RecordNumber); [DllImport ("Cheetah2", EntryPoint = "XDBFLUSHDATABASE_Z")] private static extern void xdbFlushDatabase(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBPACK_Z")] private static extern void xdbPack(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBZAP_Z")] private static extern void xdbZap(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBRECORDBUFFER_Z")] private static extern int xdbRecordBuffer(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBSPEEDAPPEND_Z")] private static extern void xdbSpeedAppend(int DBFhandle, int TrueFalse); //*********************************************************************************************************** // DATABASE ROUTINES - Database Information * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBRECORDCOUNT_Z")] private static extern int xdbRecordCount(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDCOUNT_Z")] private static extern int xdbFieldCount(int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDNUMBER_Z")] private static extern int xdbFieldNumber(int dbHandle, string FieldName); [DllImport ("Cheetah2", EntryPoint = "XDBRECORDNUMBER_Z")] private static extern int xdbRecordNumber(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBLASTUPDATED_Z")] private static extern void xdbLastUpdated(int dbHandle, int YearNr, int MonthNr, int DayNr); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDINFO_Z")] private static extern void xdbFieldInfo(int DBFhandle, int FieldNumber, int zFieldName, int zFieldType, int FieldLength, int FieldDecimals); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDNAME_Z")] private static extern int xdbFieldName(int DBFhandle, int FieldNumber); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDTYPE_Z")] private static extern int xdbFieldType(int DBFhandle, int FieldNumber); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDLENGTH_Z")] private static extern int xdbFieldLength(int DBFhandle, int FieldNumber); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDDECIMALS_Z")] private static extern int xdbFieldDecimals(int DBFhandle, int FieldNumber); [DllImport ("Cheetah2", EntryPoint = "XDBDATABASEHANDLES_Z")] private static extern void xdbDatabaseHandles(string DBFfilename, int CheetahHandle, int WindowsHandle); [DllImport ("Cheetah2", EntryPoint = "XDBINDEXHANDLES_Z")] private static extern void xdbIndexHandles(string IDXfilename, int CheetahHandle, int WindowsHandle); //*********************************************************************************************************** // DATABASE ROUTINES - Navigating the Database * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBEOF_Z")] private static extern int xdbEOF(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBBOF_Z")] private static extern int xdbBOF(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBMOVEFIRST_Z")] private static extern void xdbMoveFirst(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBMOVENEXT_Z")] private static extern void xdbMoveNext(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBMOVELAST_Z")] private static extern void xdbMoveLast(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBMOVEPREV_Z")] private static extern void xdbMovePrev(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBSKIPDELETED_Z")] private static extern void xdbSkipDeleted(int DBFhandle, int TrueFalse); [DllImport ("Cheetah2", EntryPoint = "XDBKEYPOSITION_Z")] private static extern int xdbKeyPosition(int IDXhandle, int KeyPosition); //*********************************************************************************************************** // DATABASE ROUTINES - Assigning Field Values * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBASSIGNFIELD_Z")] private static extern void xdbAssignField(int dbHandle, string FieldName, int FieldNumber, string FieldString); [DllImport ("Cheetah2", EntryPoint = "XDBASSIGNFIELDINT_Z")] private static extern void xdbAssignFieldINT(int dbHandle, string FieldName, int FieldNumber, int FieldInteger); [DllImport ("Cheetah2", EntryPoint = "XDBASSIGNFIELDLNG_Z")] private static extern void xdbAssignFieldLNG(int dbHandle, string FieldName, int FieldNumber, int FieldLong); [DllImport ("Cheetah2", EntryPoint = "XDBASSIGNFIELDSNG_Z")] private static extern void xdbAssignFieldSNG(int dbHandle, string FieldName, int FieldNumber, float FieldSingle); //*********************************************************************************************************** // DATABASE ROUTINES - Retrieving Field Values * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBFIELDVALUE_Z")] private static extern string xdbFieldValue(int DBFhandle, string FieldName, int FieldCode); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDVALUEINT_Z")] private static extern int xdbFieldValueINT(int DBFhandle, string FieldName, int FieldCode); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDVALUELNG_Z")] private static extern int xdbFieldValueLNG(int DBFhandle, string FieldName, int FieldCode); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDVALUESNG_Z")] private static extern float xdbFieldValueSNG(int DBFhandle, string FieldName, int FieldCode); [DllImport ("Cheetah2", EntryPoint = "XDBFIELDPADDING_Z")] private static extern void xdbFieldPadding(int DBFhandle, int TrueFalse); //*********************************************************************************************************** // INDEX ROUTINES - Creation/Opening/Closing * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBCREATEINDEX_Z")] private static extern void xdbCreateIndex(string iFilename, int dbHandle, string IndexExpression, int Duplicates); [DllImport ("Cheetah2", EntryPoint = "XDBOPENINDEX_Z")] private static extern int xdbOpenIndex(string iFilename, int dbHandle); [DllImport ("Cheetah2", EntryPoint = "XDBCLOSEINDEX_Z")] private static extern void xdbCloseIndex(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBREINDEX_Z")] private static extern void xdbReindex(int DBFhandle, int idxHandle, int ContinueOrError); [DllImport ("Cheetah2", EntryPoint = "XDBREINDEXALL_Z")] private static extern void xdbReindexAll(int DBFhandle, int ContinueOrError); [DllImport ("Cheetah2", EntryPoint = "XDBSEEK_Z")] private static extern int xdbSeek(int DBFhandle, int idxHandle, string LookForKey); [DllImport ("Cheetah2", EntryPoint = "XDBSEEKNEXT_Z")] private static extern int xdbSeekNext(int dbHandle, int idxHandle, string LookForKey); [DllImport ("Cheetah2", EntryPoint = "XDBSEEKPARTIAL_Z")] private static extern int xdbSeekPartial(int dbHandle, int idxHandle, string LookForKey); [DllImport ("Cheetah2", EntryPoint = "XDBSEEKPARTIALNEXT_Z")] private static extern int xdbSeekPartialNext(int dbHandle, int idxHandle, string LookForKey); [DllImport ("Cheetah2", EntryPoint = "XDBSETCALLBACK_Z")] private static extern void xdbSetCallback(int hWnd); //*********************************************************************************************************** // INDEX ROUTINES - Index information * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBKEYLENGTH_Z")] private static extern int xdbKeyLength(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBKEYCOUNT_Z")] private static extern int xdbKeyCount(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBKEYUNIQUE_Z")] private static extern int xdbKeyUnique(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBKEYEXPRESSION_Z")] private static extern int xdbKeyExpression(int DBFhandle, int idxHandle); [DllImport ("Cheetah2", EntryPoint = "XDBMKL_Z")] private static extern void xdbMKL(int LongValue); [DllImport ("Cheetah2", EntryPoint = "XDBMKI_Z")] private static extern void xdbMKI(int IntegerValue); //*********************************************************************************************************** // QUERY ROUTINES * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBCREATEQUERY_Z")] private static extern int xdbCreateQuery(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYCONDITION_Z")] private static extern void xdbQueryCondition(int QueryHandle, int JoinPhrase, string FieldName, int Equality, string vParameter1, string vParameter2); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYSORT_Z")] private static extern void xdbQuerySort(int QueryHandle, string FieldName, int SortDirection); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYEXECUTE_Z")] private static extern void xdbQueryExecute(int QueryHandle); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYSUM_Z")] private static extern float xdbQuerySUM_Z(int QueryHandle, string FieldName); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYMIN_Z")] private static extern float xdbQueryMIN_Z(int QueryHandle, string FieldName); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYMAX_Z")] private static extern float xdbQueryMAX_Z(int QueryHandle, string FieldName); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYAVG_Z")] private static extern float xdbQueryAVG_Z(int QueryHandle, string FieldName); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYDISTINCT_Z")] private static extern void xdbQueryDistinct(int QueryHandle, string DistinctFieldName); [DllImport ("Cheetah2", EntryPoint = "XDBHTMLSTRIPTAG_Z")] private static extern void xdbHtmlStripTag(int QueryHandle, int TrueFalse); [DllImport ("Cheetah2", EntryPoint = "XDBDESTROYQUERY_Z")] private static extern void xdbDestroyQuery(int QueryHandle); [DllImport ("Cheetah2", EntryPoint = "XDBQUERYINDEX_Z")] private static extern int xdbQueryIndex(int QueryHandle); //*********************************************************************************************************** // MISCELLANEOUS ROUTINES * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBRESETERROR_Z")] private static extern void xdbResetError(); [DllImport ("Cheetah2", EntryPoint = "XDBERROR_Z")] private static extern int xdbError(); [DllImport ("Cheetah2", EntryPoint = "XDBVERSION_Z")] private static extern int xdbVersion(); [DllImport ("Cheetah2", EntryPoint = "XDBREGISTEREDTO_Z")] private static extern int xdbRegisteredTo(); [DllImport ("Cheetah2", EntryPoint = "XDBDEBUGMODE_Z")] private static extern void xdbDebugMode(int UserMode); [DllImport ("Cheetah2", EntryPoint = "XDBAPPPATH_Z")] private static extern int xdbAppPath(); [DllImport ("Cheetah2", EntryPoint = "XDBACTIVATE_Z")] private static extern void xdbActivate(int ActivateNumber); [DllImport ("Cheetah2", EntryPoint = "XDBFREEDLL_Z")] private static extern void xdbFreeDLL(); [DllImport ("Cheetah2", EntryPoint = "XDBISENCRYPTED_Z")] private static extern int xdbIsEncrypted(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBENCRYPTIONMETHOD_Z")] private static extern int xdbEncryptionMethod(int DBFhandle); [DllImport ("Cheetah2", EntryPoint = "XDBTEMPFILENAME_Z")] private static extern int xdbTempFileName(); //*********************************************************************************************************** // DATE ROUTINES * //*********************************************************************************************************** [DllImport ("Cheetah2", EntryPoint = "XDBDAYSAPART_Z")] private static extern int xdbDaysApart(string DateFrom, string DateTo); [DllImport ("Cheetah2", EntryPoint = "XDBDAYSINMONTH_Z")] private static extern int xdbDaysInMonth(int Year, int Month); [DllImport ("Cheetah2", EntryPoint = "XDBADDDATE_Z")] private static extern void xdbAddDate(string StartDate, int Days); [DllImport ("Cheetah2", EntryPoint = "XDBNAMEOFDAY_Z")] private static extern int xdbNameOfDay(string DateCheck); [DllImport ("Cheetah2", EntryPoint = "XDBTODAYSDATE_Z")] private static extern int xdbTodaysDate(); [DllImport ("Cheetah2", EntryPoint = "XDBVALIDDATE_Z")] private static extern int xdbValidDate(string DateCheck); [DllImport ("Cheetah2", EntryPoint = "XDBDATETOJULIAN_Z")] private static extern int xdbDateToJulian(string DateString); [DllImport ("Cheetah2", EntryPoint = "XDBJULIANTODATE_Z")] private static extern int xdbJulianToDate(int JulianNumber); [DllImport ("Cheetah2", EntryPoint = "CTOD_Z")] private static extern int CTOD(string PBDate); [DllImport ("Cheetah2", EntryPoint = "DTOS_Z")] private static extern int DTOS(string xDate); //*********************************************************************************************************** const int XDBTRUE = 1; const int XDBFALSE = 0; const int MAX_INDEXES = 100; const int MAX_FIELDS = 1000; const int MAX_CONDITIONS = 50; const int MAX_INDEXKEYS = 6; const int MAX_CHARFIELD_SIZE = 256; const int MAX_NUMFIELD_SIZE = 20; const int ENCRYPT_NONE = 0; const int ENCRYPT_RC4 = 1; const int ENCRYPT_KEYEDXOR = 2; const int ENCRYPT_SUPERSCRAMBLE = 3; const int QUERY_AND = 1; const int QUERY_OR = 2; const int EQUAL_TO = 1; const int NOT_EQUAL_TO = 2; const int LESS_THAN = 3; const int GREATER_THAN = 4; const int LESS_THAN_EQUAL_TO = 5; const int GREATER_THAN_EQUAL_TO = 6; const int CONTAINS = 7; const int BETWEEN = 8; const int SUM = 9; const int MINIMUM = 10; const int MAXIMUM = 11; const int AVERAGE = 12; const int WILDCARD = 13; const int SORT_ASCEND = 1; const int SORT_DESCEND = 0; const int XDBREADONLY = 0; const int XDBWRITEONLY = 1; const int XDBREADWRITE = 2; const int XDBDENYREADWRITE = 1; const int XDBDENYWRITE = 2; const int XDBDENYREAD = 3; const int XDBDENYNONE = 4; const int XDBUNIQUE_CONTINUE = 0; const int XDBUNIQUE_ERROR = 1; const int FILE_ACCESS_ERROR = 4000; const int INVALID_DATE_FORMAT = 4001; const int FILE_READ_ONLY = 4002; const int FILE_WRITE_ONLY = 4003; const int INVALID_FILENAME = 4004; const int ENGINE_NOT_INITIALIZED = 5000; const int FILE_NOT_FOUND = 5001; const int TOO_MANY_FILES_OPEN = 5002; const int INVALID_STRUCTURE = 5003; const int FILE_NOT_OPEN = 5004; const int RECORD_OUT_OF_RANGE = 5005; const int FIELD_NOT_FOUND = 5006; const int INVALID_FILE_HANDLE = 5007; const int INVALID_FIELD_LENGTH = 5008; const int DUPLICATE_ALIAS_NAME = 5009; const int INVALID_ACCESSMODE = 5010; const int INVALID_SHAREMODE = 5011; const int RECORD_BUSY = 5012; const int INCOMPATIBLE_MEMO_FIELDS = 5013; const int RECORDSIZE_EXCEEDED = 5014; const int INVALID_ENCRYPTIONKEY = 5015; const int DATABASE_NOT_OPEN = 7000; const int TOO_MANY_INDEXES_OPEN = 7002; const int INVALID_KEY_EXPRESSION = 7003; const int INDEX_NOT_OPEN = 7004; const int INDEX_UNIQUE_KEYS_ONLY = 7005; const int SEEK_NO_INDEX_SET = 7006; const int INDEX_NOT_FOUND = 7007; const int QUERY_NOT_GENERATED = 9000; const int QUERY_INVALID_FIELDNAME = 9001; const int QUERY_INVALID_COMPARISON = 9002; const int QUERY_MISSING_DELIMITERS = 9003; const int QUERY_MISSING_SEARCHSTRING = 9004; const int QUERY_TOO_MANY_EXPRESSIONS = 9005; const int QUERY_EXPECTED_NUMERIC_STRING = 9006; const int QUERY_ERROR_GETRECORD = 9007; const int QUERY_INVALID_HANDLE = 9008; const int QUERY_INVALID_JOINPHRASE = 9009; const int QUERY_NO_WILDCARD_FOUND = 9010; const int QUERY_INVALID_PARENTHESIS = 9011; //*********************************************************************************************************** // END OF CHEETAH2 DECLARATIONS * //*********************************************************************************************************** void Start () { } } From : http://www.blitzbasic.com/Community/posts.php?topic=45509 Have fun |