C++ Builder XE、dbExpress 与 MySQL 5.x
我正在尝试让 dbExpress TSQLConnection
与 MySQL 5.x 服务器一起使用。 我在网上搜索过,但没有找到任何有关 C++ Builder XE 的有用说明。
我从只是软件解决方案dbxopenmysql50.dll驱动程序> 并按照其网站上的说明进行操作。
我从 mysql 下载了 libmysql.dll
并将 dll 放入C++ Builder XE 的 bin 文件夹并编辑 dbxdrivers.ini 以使用新的 DLL。
在 IDE 中,当我将 TSQLConnection
属性连接为 true 时,dbxopenmysql50.dll 崩溃,并出现 地址访问冲突
bla bla bla...
我不关心我的当前设置,但是有人可以使用此功能吗? 你是如何让它发挥作用的?请指示我在哪里下载 dbExpress 与 MySQL 5.x 的免费工作 DLL
以下是更多错误信息:
“模块 'dbxopenmysql50.dll' 中的地址 10395D99 中存在访问冲突。读取的 地址 0275C8D"。
来自 C++ Builder XE 错误对话框的详细转储。
(00004D99){dbxopenmysql50.dll} [10395D99]
[50037560]{rtl150.bpl } System.@FreeMem (Line 3768, "System.pas" + 20) + $0
[500415CF]{rtl150.bpl } System.LocaleCharsFromUnicode (Line 29632, "System.pas" + 1) + $17
[50052A6C]{rtl150.bpl } SysUtils.StrPosLen (Line 9617, "SysUtils.pas" + 8) + $13
[5003D9B4]{rtl150.bpl } System.@UStrDelete (Line 22863, "System.pas" + 10) + $5
[50037560]{rtl150.bpl } System.@FreeMem (Line 3768, "System.pas" + 20) + $0
[5003C0B0]{rtl150.bpl } System.@UStrClr (Line 16968, "System.pas" + 14) + $0
[500A0F89]{rtl150.bpl } Classes.TStrings.GetValueFromIndex (Line 5756, "Classes.pas" + 12) + $10
[51D1B35B]{DbxCommonDriver150.bpl} Dbxdynalink.TDBXDynalinkDriverCommonLoader.LoadDriverLibraryAndMethodTable + $E3
[51D1AFE9]{DbxCommonDriver150.bpl} Dbxdynalink.TDBXDynalinkDriver.LoadDriver + $35
[51D1DCD8]{DbxCommonDriver150.bpl} Dbxdynalinknative.TDBXDynalinkDriverNative.CreateConnection + $C
[51CF0C19]{DbxCommonDriver150.bpl} Dbxcommon.TDBXDelegateDriver.CreateConnection + $5
[51CF6666]{DbxCommonDriver150.bpl} Dbxcommon.TDBXConnectionBuilder.CreateConnection + $B6
[51CE7B5C]{DbxCommonDriver150.bpl} Dbxcommon.TDBXConnectionFactory.GetConnection + $E8
[51CE7A6D]{DbxCommonDriver150.bpl} Dbxcommon.TDBXConnectionFactory.GetConnection + $5
[50FFC77F]{dbexpress150.bpl} SqlExpr.TSQLConnection.DoConnect (Line 2537, "SqlExpr.pas" + 52) + $5
[5070E10D]{dbrtl150.bpl} DB.TCustomConnection.SetConnected (Line 3167, "DB.pas" + 8) + $4
[50089A3E]{rtl150.bpl } TypInfo.SetOrdProp (Line 1791, "TypInfo.pas" + 28) + $0
[2105A0A6]{designide150.bpl} DesignEditors.TPropertyEditor.SetOrdValue (Line 841, "DesignEditors.pas" + 2) + $E
[2109E55B]{designide150.bpl} VCLEditors.TBooleanProperty.MouseUp (Line 1840, "VCLEditors.pas" + 5) + $10
[21194BD9]{vclide150.bpl} PropBox.TCustomPropListBox.ItemMouseUp (Line 1625, "PropBox.pas" + 16) + $1B
[21194DCF]{vclide150.bpl} PropBox.TCustomPropListBox.MouseUp (Line 1690, "PropBox.pas" + 1) + $D
[5027E90C]{vcl150.bpl } Controls.TControl.DoMouseUp (Line 7318, "Controls.pas" + 2) + $28
[5027E988]{vcl150.bpl } Controls.TControl.WMLButtonUp (Line 7331, "Controls.pas" + 9) + $6
[2119A4C0]{vclide150.bpl} IDEInspListBox.TInspListBox.WMLButtonUp (Line 1631, "IDEInspListBox.pas" + 3) + $4
[5027DF6C]{vcl150.bpl } Controls.TControl.WndProc (Line 7074, "Controls.pas" + 91) + $6
[06D19928]{AQtime7BDS8.bpl} Aqsyncedit.TaqEditPainter.HasHintInfo + $9B8
[502820C3]{vcl150.bpl } Controls.TWinControl.IsControlMouseMsg (Line 9608, "Controls.pas" + 1) + $9
[50282830]{vcl150.bpl } Controls.TWinControl.WndProc (Line 9831, "Controls.pas" + 144) + $6
[502B8409]{vcl150.bpl } StdCtrls.TCustomListBox.WndProc (Line 6217, "StdCtrls.pas" + 54) + $6
[50281ED0]{vcl150.bpl } Controls.TWinControl.MainWndProc (Line 9552, "Controls.pas" + 3) + $6
[500AFA64]{rtl150.bpl } Classes.StdWndProc (Line 13491, "Classes.pas" + 8) + $0
[50358AF7]{vcl150.bpl } Forms.TApplication.ProcessMessage (Line 9760, "Forms.pas" + 23) + $1
[50358B3A]{vcl150.bpl } Forms.TApplication.HandleMessage (Line 9790, "Forms.pas" + 1) + $4
[50358E65]{vcl150.bpl } Forms.TApplication.Run (Line 9927, "Forms.pas" + 26) + $3
提前致谢。
I'm trying to get the dbExpress TSQLConnection
to work with a MySQL 5.x server.
I have searched the net but not found any helpfull instruction for C++ Builder XE.
I downloaded the dbxopenmysql50.dll
driver from just software solutions and followed the instructions on their site.
I downloaded the libmysql.dll
from mysql and put the dll's in the bin folder of C++ Builder XE and edited the dbxdrivers.ini to use the new DLLs.
In the IDE when I tset the TSQLConnection
property connected to true, the dbxopenmysql50.dll crash with Access Violation in address
bla bla bla...
I don't care about my current setup, but is there ANYONE that have this working?
How did you make it work? Please direct me where to download free working DLLs for dbExpress with MySQL 5.x
Here is some more error information:
"Access violation in address 10395D99 in module 'dbxopenmysql50.dll'. Read of
address 0275C8D".
Detailed dump from C++ Builder XE Error dialog.
(00004D99){dbxopenmysql50.dll} [10395D99]
[50037560]{rtl150.bpl } System.@FreeMem (Line 3768, "System.pas" + 20) + $0
[500415CF]{rtl150.bpl } System.LocaleCharsFromUnicode (Line 29632, "System.pas" + 1) + $17
[50052A6C]{rtl150.bpl } SysUtils.StrPosLen (Line 9617, "SysUtils.pas" + 8) + $13
[5003D9B4]{rtl150.bpl } System.@UStrDelete (Line 22863, "System.pas" + 10) + $5
[50037560]{rtl150.bpl } System.@FreeMem (Line 3768, "System.pas" + 20) + $0
[5003C0B0]{rtl150.bpl } System.@UStrClr (Line 16968, "System.pas" + 14) + $0
[500A0F89]{rtl150.bpl } Classes.TStrings.GetValueFromIndex (Line 5756, "Classes.pas" + 12) + $10
[51D1B35B]{DbxCommonDriver150.bpl} Dbxdynalink.TDBXDynalinkDriverCommonLoader.LoadDriverLibraryAndMethodTable + $E3
[51D1AFE9]{DbxCommonDriver150.bpl} Dbxdynalink.TDBXDynalinkDriver.LoadDriver + $35
[51D1DCD8]{DbxCommonDriver150.bpl} Dbxdynalinknative.TDBXDynalinkDriverNative.CreateConnection + $C
[51CF0C19]{DbxCommonDriver150.bpl} Dbxcommon.TDBXDelegateDriver.CreateConnection + $5
[51CF6666]{DbxCommonDriver150.bpl} Dbxcommon.TDBXConnectionBuilder.CreateConnection + $B6
[51CE7B5C]{DbxCommonDriver150.bpl} Dbxcommon.TDBXConnectionFactory.GetConnection + $E8
[51CE7A6D]{DbxCommonDriver150.bpl} Dbxcommon.TDBXConnectionFactory.GetConnection + $5
[50FFC77F]{dbexpress150.bpl} SqlExpr.TSQLConnection.DoConnect (Line 2537, "SqlExpr.pas" + 52) + $5
[5070E10D]{dbrtl150.bpl} DB.TCustomConnection.SetConnected (Line 3167, "DB.pas" + 8) + $4
[50089A3E]{rtl150.bpl } TypInfo.SetOrdProp (Line 1791, "TypInfo.pas" + 28) + $0
[2105A0A6]{designide150.bpl} DesignEditors.TPropertyEditor.SetOrdValue (Line 841, "DesignEditors.pas" + 2) + $E
[2109E55B]{designide150.bpl} VCLEditors.TBooleanProperty.MouseUp (Line 1840, "VCLEditors.pas" + 5) + $10
[21194BD9]{vclide150.bpl} PropBox.TCustomPropListBox.ItemMouseUp (Line 1625, "PropBox.pas" + 16) + $1B
[21194DCF]{vclide150.bpl} PropBox.TCustomPropListBox.MouseUp (Line 1690, "PropBox.pas" + 1) + $D
[5027E90C]{vcl150.bpl } Controls.TControl.DoMouseUp (Line 7318, "Controls.pas" + 2) + $28
[5027E988]{vcl150.bpl } Controls.TControl.WMLButtonUp (Line 7331, "Controls.pas" + 9) + $6
[2119A4C0]{vclide150.bpl} IDEInspListBox.TInspListBox.WMLButtonUp (Line 1631, "IDEInspListBox.pas" + 3) + $4
[5027DF6C]{vcl150.bpl } Controls.TControl.WndProc (Line 7074, "Controls.pas" + 91) + $6
[06D19928]{AQtime7BDS8.bpl} Aqsyncedit.TaqEditPainter.HasHintInfo + $9B8
[502820C3]{vcl150.bpl } Controls.TWinControl.IsControlMouseMsg (Line 9608, "Controls.pas" + 1) + $9
[50282830]{vcl150.bpl } Controls.TWinControl.WndProc (Line 9831, "Controls.pas" + 144) + $6
[502B8409]{vcl150.bpl } StdCtrls.TCustomListBox.WndProc (Line 6217, "StdCtrls.pas" + 54) + $6
[50281ED0]{vcl150.bpl } Controls.TWinControl.MainWndProc (Line 9552, "Controls.pas" + 3) + $6
[500AFA64]{rtl150.bpl } Classes.StdWndProc (Line 13491, "Classes.pas" + 8) + $0
[50358AF7]{vcl150.bpl } Forms.TApplication.ProcessMessage (Line 9760, "Forms.pas" + 23) + $1
[50358B3A]{vcl150.bpl } Forms.TApplication.HandleMessage (Line 9790, "Forms.pas" + 1) + $4
[50358E65]{vcl150.bpl } Forms.TApplication.Run (Line 9927, "Forms.pas" + 26) + $3
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我的 DBExpress 在 Delphi 2010 中与 MySQL 5.1 配合得很好。
因此,尝试将 libMySQL.DLL 放入您的 exe 目录中可能会有所帮助,因为这是它首先查找的位置。
检查是否需要任何其他 DLL(我也需要 dbxmys.dll,但使用 MySQL)
设置参数以适合您的 MySQL 服务器 - (Localhost、MyDBName、MyUSerName MyPasswd),然后尝试在 IDE 中进行连接。这对我有用!
克里斯
I have DBExpress working fine with MySQL 5.1 in Delphi 2010.
So try putting the libMySQL.DLL in your exe directory may help, as this is first place it will look.
check if you need any other DLL's (I needed dbxmys.dll as well , but working with MySQL)
Set the Params to suit your MySQL server - (Localhost, MyDBName, MyUSerName MyPasswd) then try and connect in the IDE. It works for me!
Chris