- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个连接到 MySQL 数据库的 C#.NET 应用程序,并使用一些不安全的代码来使用旧的 C++ dll。
程序一启动,就会加载dll并分配一个指针,然后初始化一些C#变量,然后删除指针。
在程序中,我有一个对话框,其中有一个选项卡控件。这个“对话框”的构造函数从用旧 dll 初始化的变量和数据库中获取数据,这里开始出现问题:
Dictionary<String, int> dizUM;
MySqlCommand myCom;
MySqlConnection myConn;
MySqlDataReader myRead;
cmbRigheCons.Items.Add( MosaicoS.Properties.Resources.STR_CONS_DESC_GEN );
cmbRigheCons.Items.Add( MosaicoS.Properties.Resources.STR_CONS_TIP_SOTT );
cmbRigheCons.Items.Add( MosaicoS.Properties.Resources.STR_CONS_SOTT );
cmbRigheCons.Items.Add( MosaicoS.Properties.Resources.STR_CONS_NOM_PEZ_CONS );
cmbRigheCons.SelectedIndex = MosaicoMain.CFG.DescCons;
cmbRigheVarMat.Items.Add( MosaicoS.Properties.Resources.STR_CONS_DESC_GEN );
cmbRigheVarMat.Items.Add( MosaicoS.Properties.Resources.STR_CONS_TIP_SOTT );
cmbRigheVarMat.Items.Add( MosaicoS.Properties.Resources.STR_CONS_SOTT );
cmbRigheVarMat.Items.Add( MosaicoS.Properties.Resources.STR_CONS_NOM_PEZ_CONS );
cmbRigheVarMat.Items.Add( MosaicoS.Properties.Resources.STR_CONS_NOM_PEZ_NEL_CONS );
cmbRigheVarMat.SelectedIndex = MosaicoMain.CFG.DescVarMat;
try
{
string connessione;
connessione = MosaicoMain.CFG.DBConnection.Replace( "Option=3;", "" );
connessione = connessione.Replace( "Driver={MySQL ODBC 5.1 Driver};", "" );
myConn = new MySqlConnection( connessione );
myCom = new MySqlCommand();
myConn.Open();
myCom.Connection = myConn;
myCom.CommandText = @"SELECT umi_id, umi_um FROM unimis WHERE umi_tipoum = 0 ORDER BY umi_um;";
myRead = myCom.ExecuteReader();
dizUM = new Dictionary<String, int>();
while( myRead.Read() )
dizUM.Add( myRead.GetString( 1 ), myRead.GetInt32( 0 ) );
cmbUMSup.DataSource = new BindingSource( dizUM, null );
cmbUMSup.DisplayMember = "Key";
cmbUMSup.ValueMember = "Value";
myRead.Close();
myConn.Close();
}
catch( MySqlException mySqlException )
{
MessageBox.Show( mySqlException.ToString() );
}
在这里,如果我从 myConn.Open() 发表评论;到 myConn.Close();我没有遇到任何问题,但是打开连接会导致程序立即崩溃当我在表之间切换时,但不是在程序的这一部分而是在:
private void configurazioniToolStripMenuItem1_Click( object sender, EventArgs e )
{
try
{
frmConfig = new FrmConfigurazioni();
frmConfig.ShowDialog();
}
catch( Exception exception )
{
MessageBox.Show( exception.ToString() );
}
}
这是我加载上一个代码片段的地方。错误是:
Managed Debugging Assistant 'FatalExecutionEngineError' has detected a problem in
'C:\DEVELOP\MosaicoS\MosaicoS\bin\Debug\MosaicoS.vshost.exe'.
Additional Information: The runtime has encountered a fatal error.
The address of the error was at 0x792380d9, on thread 0x824.
The error code is 0xc0000005.
This error may be a bug in the CLR or in the unsafe or non-verifiable portions of user code.
Common sources of this bug include user marshaling errors for COM-interop or PInvoke, which may corrupt the stack.
这不是异常(exception)。如果我评论代码,我不会崩溃,而且,如果我尝试在另一个解决方案中使用相同的字符串连接到相同的数据库,我也没有问题。我该如何解决这个问题?
提前致谢。
最佳答案
'0xc0000005' 是访问冲突异常。很难从您提供的代码中找出问题所在。我建议找到那个旧的 c++ dll 的源代码并在一个解决方案中一起调试它们。您可以通过选中 .net 项目属性中“调试”部分下的“启用非托管代码调试”复选框来从 .net 调试 c++ dll。
关于c# - MySQLConnector/Net 的 FatalExecutionEngineError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16085060/
我使用 Visual Studio 2012。我有控制台应用程序。我应该连接到mysql服务器,我使用mysql连接器/C++,但是当我从表中读取时,例如,如果我应该得到“word”,我会得到四个未知
这是我的问题,我正在尝试将 Java 程序连接到 MySQL 数据库。我这里没有使用IDE。发生的情况是,当我将 mysql-connector-java-bin.jar 添加为 CLASSPATH
我在 C# 中有一个 foreach 循环,它执行 MySql 命令来检查结果是否存在,问题是我不知道如何更新与 @id_line 对应的参数中的值,错误是在第二次迭代时抛出 foreach (Str
前言:我对 C# 的 MySqlConnector 和一般的 MySql 还很陌生。 我想实现的目标是执行一个查询,然后通过FOUND_ROWS获取SqlDataReader中返回的记录数。 这是我正
我正在使用 MySQLConnector 和 C# 连接到我的数据库。一切运行正常,但是当我在另一台机器上尝试我的程序时,我收到“无法加载文件或程序集'MySql.Data”错误。我刚刚将 .exe
我正在尝试将时间从 UTC 格式的 Unix 时间戳插入到 MySQL 表中。使用from_unixtime(timestamp)可以进行解析,但它使用的时区是“当前时区”,这显然是连接的当前时区,而
我正在开发一个连接到 MySQL 数据库的 C#.NET 应用程序,并使用一些不安全的代码来使用旧的 C++ dll。 程序一启动,就会加载dll并分配一个指针,然后初始化一些C#变量,然后删除指针。
需要帮助解决一些愚蠢的密码问题。以下问题: 不能用一些密码连接到mysql服务器^^ 如果我使用具有相同“连接字符串”详细信息的密码,例如: 以下密码完全在MySql Server中(引号、双引号、分
我从 MySqlCommand.ExecuteNonQuery() 得到这个异常: Index and length must refer to a location within the strin
我正在使用: MySqlCommand comHash = new MySqlCommand("MY_FUNCTION", con); comHash.CommandType = CommandTyp
我需要别人的帮助。 我遵循教程 Streaming Data from MySQL into Kafka with Kafka Connect and Debezium但我无法使用 Debezium
我有以下代码: 导入 MySql.Data.MySqlClient导入 MySql.Data.Types 公开课FormMain 私有(private)子表单Main_Load ... ' Ope
我正在编写单元测试(技术上是集成测试,因为我正在连接到数据库)并且我想在测试中的事务中创建记录,并在测试完成后回滚所有数据库修改。我的想法是,我将通过一个 API 调用创建另一个 API 调用期望在数
我在 MySql 中有一个存储过程,它插入 10.000 个寄存器。当我从 MySql 命令行执行它时,查询需要 1 秒,但是当我从我编写的 .NET C# 应用程序执行它时,它需要大约 8 秒。 你
SELECT CONVERT(LAST_INSERT_ID(), SIGNED INTEGER); MySqlCommand.ExecuteScalar() 和 MySqlDataReader.Get
我正在使用 Unity 2018 开发 WebGL 应用。 我需要访问托管在同一台服务器上的 MySQL 数据库。 我的问题是:我可以使用 C# 和 MySqlConnector(我更喜欢的解决方案)
我正在尝试使用 C# 中的 MySqlCommand 对象(使用 MySQL 连接器库)在一个查询中将多条记录插入到一个表中。 我知道如何做到这一点的唯一方法是自己动态构建查询并设置 comman
我有这个问题:我正在编写一些 Python 脚本,而直到现在,在整个脚本中使用单个 MySQLConnector 连接(仅在脚本末尾关闭它)我完全没有问题,最近我遇到了一些问题。 如果我在脚本开头创建
我有这个问题:我正在编写一些 Python 脚本,而直到现在,在整个脚本中使用单个 MySQLConnector 连接(仅在脚本末尾关闭它)我完全没有问题,最近我遇到了一些问题。 如果我在脚本开头创建
我正在使用 pandas 和 sqlalchemy,并且希望将 DataFrame 加载到 MySQL 数据库中。我目前正在使用此代码片段: db_connection = sqlalchemy.cr
我是一名优秀的程序员,十分优秀!