Hi Paul,
I think I've found a strange bug in FF3.
I created a new project in FF3 with classes from an PB projekt.
In PB9 the classes are working well.
In FF3, it was not possible to compile the project.
The Compiler returned an error during compiling: Error 524: UNDEFINED TYPE
In the CODEGEN_MYSQL_DECLARES file I saw that the order of the functions and types is wrong.
First comes the class, then the Type and then the functions.
When I put the class by hand at the end of the file, I can compile with PB without errors.
If you want I can send you the project.
Part of the file CODEGEN_MYSQL_DECLARES:
'------------------------------------------------------------------------------
' Source code generated by FireFly Visual Designer Version: 3.06
' Generated: Samstag Mai 08, 2010 at 04:56:43
' Visit www.planetsquires.com for more information
'------------------------------------------------------------------------------
%MYSQL_OPT_CONNECT_TIMEOUT = 0
%MYSQL_OPT_COMPRESS = 1
%MYSQL_OPT_NAMED_PIPE = 2
%MYSQL_INIT_COMMAND = 3
%MYSQL_READ_DEFAULT_FILE = 4
%MYSQL_READ_DEFAULT_GROUP = 5
%FIELD_TYPE_TIME = 11
%FIELD_TYPE_DATETIME = 12
%FIELD_TYPE_YEAR = 13
%FIELD_TYPE_NEWDATE = 14
%FIELD_TYPE_ENUM = 247
%FIELD_TYPE_SET = 248
%FIELD_TYPE_TINY_BLOB = 249
%FIELD_TYPE_MEDIUM_BLOB = 250
%FIELD_TYPE_LONG_BLOB = 251
%FIELD_TYPE_BLOB = 252
%FIELD_TYPE_VAR_STRING = 253
%FIELD_TYPE_STRING = 254
Global HWND_FRMMYSQL As Dword
Global HWND_FRMMYSQL_CMDMYSQL() As Dword
Global IDC_FRMMYSQL_CMDMYSQL() As Long
Class cMySql ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|9|0
Instance sHostName As String ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|10|0
Instance lPortNummer As Long ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|11|0
Instance sDatabaseName As Asciiz * 255 ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|12|0
Instance sDatabaseUser As String ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|13|0
Instance sDatabasePwd As String ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|14|0
' '----------------------------------------------------------- ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|62|0
' ' interne Methode zur ermittlung des MySQL Fehlers ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|63|0
' '----------------------------------------------------------- ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|64|0
Interface MySqlConnection ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|73|0
Inherit IUnknown ' inherit the base class ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|74|0
Property Set SetHostName(ByVal sValue As String) ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|77|0
sHostName = sValue ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|78|0
End Property ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|79|0
Property Set SetPortNummer(ByVal lValue As Long) ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|82|0
lPortNummer = lValue ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|83|0
End Property ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|84|0
Property Set SetDatabaseName(ByVal sValue As String) ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|87|0
sDatabaseName = sValue ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|88|0
End Property ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|89|0
Property Set SetDatabaseUser(ByVal sValue As String) ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|92|0
sDatabaseUser = sValue ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|93|0
End Property ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|94|0
Property Set SetDatabasePwd(ByVal sValue As String) ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|97|0
sDatabasePwd = sValue ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|98|0
End Property ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|99|0
End Method ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|126|0
End Interface ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|284|0
End Class ':FILE:CODEGEN_MYSQL_MYSQL_CLASSINC_MODULE.inc|285|0
Type T_USED_MEM ' struct for once_alloc ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|62|0
ptNext As T_USED_MEM Ptr ' Next block in use ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|63|0
dwLeft As Dword ' memory left in block ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|64|0
dwSize As Dword ' size of block ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|65|0
End Type ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|66|0
Type T_MEM_ROOT ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|68|0
ptFree As T_USED_MEM Ptr ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|69|0
ptUsed As T_USED_MEM Ptr ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|70|0
ptPreAlloc As T_USED_MEM Ptr ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|71|0
dwMinMalloc As Dword ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|72|0
dwBlockSize As Dword ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|73|0
End Type ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|74|0
Type T_MYSQL_ROWS ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|182|0
ptNext As Dword 'list of rows ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|183|0
pszData As Asciiz Ptr ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|184|0
End Type ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|185|0
Type T_MYSQL_DATA ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|187|0
qRows As Quad ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|188|0
dwFields As Dword ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|189|0
ptData As T_MYSQL_ROWS Ptr ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|190|0
tAlloc As T_MEM_ROOT ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|191|0
End Type ':FILE:CODEGEN_MYSQL_MYSQL_LIBINC_MODULE.inc|192|0
Global cMySqlConn As MySqlConnection
Global lSqlConn As Long
Declare Function FRMMYSQL_Show( ByVal hwndParent As Dword, _
ByVal ShowModalFlag As Long, _
Optional ByVal UserData As Long _
) As Long
Declare Sub FRMMYSQL_CreateControls( ByVal hWndForm As Dword )
Declare Function FRMMYSQL_FORMPROCEDURE( ByVal hWndForm As Dword, _
ByVal wMsg As Dword, _
ByVal wParam As Long, _
ByVal lParam As Long _
) As Long
Declare Function FRMMYSQL_CODEPROCEDURE( ByVal hWndControl As Dword, _
ByVal wMsg As Dword, _
ByVal wParam As Long, _
ByVal lParam As Long _
) As Long
Declare Sub mysql_close Lib "libmySQL.DLL" Alias "mysql_close" (ByVal ptMYSQL As T_MYSQL Ptr)
Declare Function mysql_init Lib "libmySQL.DLL" Alias "mysql_init" (ByVal ptMYSQL As T_MYSQL Ptr) As Long
Declare Function mysql_options Lib "libmySQL.DLL" Alias "mysql_options" (ByVal ptMYSQL As T_MYSQL Ptr, ByVal lOption As Long, szArg As Asciiz) As Long
Declare Function mysql_ping Lib "libmySQL.DLL" Alias "mysql_ping" (ByVal ptMYSQL As T_MYSQL Ptr) As Long
Declare Function mysql_insert_id Lib "libmySQL.DLL" Alias "mysql_insert_id" (ByVal ptMYSQL As T_MYSQL Ptr) As Long
Declare Function mysql_num_fields Lib "libmySQL.DLL" Alias "mysql_num_fields" (ByVal ptResult As T_MYSQL_RES Ptr) As Long
Declare Function mysql_num_rows Lib "libmySQL.DLL" Alias "mysql_num_rows" (ByVal ptResult As T_MYSQL_RES Ptr) As Long
Declare Function mysql_store_result Lib "libmySQL.DLL" Alias "mysql_store_result" (ByVal ptMYSQL As T_MYSQL Ptr) As Long
Declare Function mysql_use_result Lib "libmySQL.DLL" Alias "mysql_use_result" (ByVal ptMYSQL As T_MYSQL Ptr) As Long
Declare Sub mysql_data_seek Lib "libmySQL.DLL" Alias "mysql_data_seek" (ByVal ptResult As T_MYSQL_RES Ptr, ByVal lOffset As Quad)
Declare Sub mysql_free_result Lib "libmySQL.DLL" Alias "mysql_free_result" (ByVal ptMYSQL As T_MYSQL Ptr)
Declare Function LibMain( ByVal hInstance As DWord, _
ByVal fwdReason As Long, _
ByVal lpvReserved As Long _
) As Long
Declare Function WinMain( ByVal hInstance As Dword, _
ByVal hPrevInstance As Dword, _
ByVal lpCmdLine As Asciiz Ptr, _
ByVal iCmdShow As Long _
) As Long
Declare Function FF_WINMAIN( ByVal hInstance As Dword, _
ByVal hPrevInstance As Dword, _
ByVal lpCmdLine As Asciiz Ptr, _
ByVal iCmdShow As Long ) As Long
Declare Function FF_PUMPHOOK( Msg As tagMsg ) As Long
Declare Sub FLY_InitializeVariables()
Declare Sub FLY_SetAppVariables()
Declare Function FLY_AdjustWindowRect( ByVal hWndForm As DWord, _
ByVal cxClient As Long, _
ByVal cyClient As Long _
) As Long
Declare Function FLY_EnumSysColorChangeProc( ByVal hWnd As Dword, lParam As Long ) As Long
Declare Function FLY_SetControlData( ByVal hWndControl As Dword, _
ByVal AllowSubclass As Long, _
ByVal AllowSetFont As Long, _
ByVal sFontString As String, _
ByVal nControlIndex As Long, _
ByVal nProcessColor As Long, _
ByVal IsForeSysColor As Long, _
ByVal IsBackSysColor As Long, _
ByVal nForeColor As Long, _
ByVal nBackColor As Long, _
ByVal nTransparentBrush As Long, _
ByVal CodeProcedure As Dword, _
ByVal nResizeRule As Long _
) As DWord
Declare Function FLY_GetActiveHandle( ByVal hWnd As DWord ) as DWord
Declare Function FLY_ResizeRuleInitEnum( ByVal hWnd As Long, ByVal lParam As Long ) As Long
Declare Function FLY_ResizeRuleEnum( ByVal hWnd As Long, ByVal lParam As Long ) As Long
Declare Function FF_Control_GetTag( ByVal hWndControl As Dword ) as String
Declare Function FF_Control_GetTag2( ByVal hWndControl As Dword ) as String
Declare Sub FF_Control_SetTag( ByVal hWnd As Dword, _
ByVal NewTag As String )
Declare Sub FF_Control_SetTag2( ByVal hWnd As Dword, _
ByVal NewTag As String )
Declare Function FF_EnumCharSet( _
elf As ENUMLOGFONT, _
ntm As NEWTEXTMETRIC, _
ByVal FontType As Long, _
CharSet As Long _
) As Long
Declare Function FF_MakeFontEX( ByVal sFont As String, _
ByVal PointSize As Long, _
ByVal fBold As Long, _
ByVal fItalic As Long, _
ByVal fUnderline As Long, _
ByVal StrikeThru As Long _
) As Long
Declare Function FF_MakeFontEx_Internal( ByVal sFont As String ) As DWord
Thanks Rudolf