Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 09.04.2023
Сообщений: 11

System.AccessViolationException: Попытка чтения или записи в защищенную память

09.04.2023, 08:58. Показов 936. Ответов 4

Студворк — интернет-сервис помощи студентам
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
using System;
using System.Collections.Generic;
using System.Data.Odbc;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input; 
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
 
namespace StudentRating
{
    /// <summary>
    /// Логика взаимодействия для MainWindow.xaml
    /// </summary>
    /// 
 
 
 
 
 
    
    public partial class MainWindow : Window
    {
        OdbcConnection conn;
 
        OdbcCommand cmd;
 
        OdbcDataAdapter adapter;
 
        DataTable dt;
 
        String ConnStr = "DRIVER={MySQL ODBC 5.1 Driver};" +
            "SERVER=MyHostName;" +
            "DATABASE=sql7611480;" +
            "UID=Username;" +
            "PWD=password;" +
            "MULTI_STATEMENTS=1;" +
            "STMT=SET CHARACTER SET utf8";
        String SelectText = "Select * From TableName";
 
        List<Record> RecordList;
 
        int i;
 
 
        public MainWindow()
        {
            InitializeComponent();
        }
 
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Refresh();
        }
 
 
 
 
 
 
        void Refresh()
 
        {
            try
            {
                MySQLConn mysql = new MySQLConn();
 
                dg.ItemsSource = null;
 
                conn = new OdbcConnection();
 
                conn.ConnectionString = ConnStr;
 
                cmd = new OdbcCommand();
 
                cmd.Connection = conn;
 
                cmd.CommandText = SelectText;
 
                adapter = new OdbcDataAdapter();
 
                adapter.SelectCommand = cmd;
 
                dt = new DataTable();
 
                RecordList = new List<Record>();
 
                adapter.Fill(dt); // Здесь при нажатии кнопки выдает ошибку System.AccessViolationException: Попытка чтения или 
                                       //записи в защищенную память. Я не знаю, как решить эту проблему
 
                for (i = 0; i <= dt.Rows.Count - 1; i++)
 
                    RecordList.Add(new Record((int)dt.Rows[i][0],
                                                (String)dt.Rows[i][1],
                                                (String)dt.Rows[i][2],
                                                (String)dt.Rows[i][3],
                                                (int)dt.Rows[i][4]
 
                                              )
                                  );
 
                dg.ItemsSource = RecordList;
            }
 
            catch (Exception exc) { MessageBox.Show(exc.Message); }
 
            RecordList = null;
 
            GC.Collect();
        }
    }
}


Возможно дето в устаревшем драйвере "MySQL ODBC 5.1 Driver", но я также пытаюсь использовать установленный драйвер "MySQL ODBC 8.0 Unicode Driver", но при нажатии на кнопку программа говорить,что такой драйвер не найден. Подскажите пожалуйста, что делать. Я и к базе на localhost и к базе на бесплатном хостинге пытался подключаться, но все равно все также. Вчера все было хорошо, а сегодня System.AccessViolationException
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.04.2023, 08:58
Ответы с готовыми решениями:

System.AccessViolationException не обработано Message: Попытка чтения или записи в защищенную память
AccessViolationException Сторонние библиотеки не использовал. Как избавиться от такого прерывания работы ? Добавлено через 13 минут ...

Попытка чтения или записи в защищенную память
Дело в том что у меня Windows 8, при попытке запуска проекта выдает ошибку: &quot;Необработанное исключение типа...

Попытка чтения или записи в защищенную память
Помогите, пожалуйста. В программе воспроизвожу аудиофайл, к примеру так: WMPLib.WindowsMediaPlayer WMP= new WMPLib.WindowsMediaPlayer(); ...

4
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18304 / 14228 / 5368
Регистрация: 17.03.2014
Сообщений: 28,901
Записей в блоге: 1
09.04.2023, 10:12
Лучший ответ Сообщение было отмечено Mitchelde как решение

Решение

Цитата Сообщение от Mitchelde Посмотреть сообщение
Возможно дето в устаревшем драйвере "MySQL ODBC 5.1 Driver"
Почему вы используете ODBC, а не родной пакет MySql.Data?
1
0 / 0 / 0
Регистрация: 09.04.2023
Сообщений: 11
09.04.2023, 10:48  [ТС]
А как его использовать? Есть ли какая-нибудь статья?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18304 / 14228 / 5368
Регистрация: 17.03.2014
Сообщений: 28,901
Записей в блоге: 1
09.04.2023, 11:07
Цитата Сообщение от Mitchelde Посмотреть сообщение
А как его использовать?
1. Устанавливаете NuGet пакет

2. Добавляете using MySql.Data.MySqlClient;

3. Заменяете Odbc классы на MySql
OdbcConnection -> MySqlConnection
OdbcCommand -> MySqlCommand
OdbcDataAdapter -> MySqlDataAdapter

4. Запускаете приложение

Цитата Сообщение от Mitchelde Посмотреть сообщение
Есть ли какая-нибудь статья?
Не знаю. Поищите если нужно.
1
 Аватар для Andrey-MSK
3360 / 2246 / 388
Регистрация: 14.08.2018
Сообщений: 7,589
Записей в блоге: 4
10.04.2023, 08:36
Цитата Сообщение от Mitchelde Посмотреть сообщение
А как его использовать?
Руководство по ADO.NET и работе с базами данных в .NET 6
Заменить SqlCommnad -> MySqlCommand и т.д.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.04.2023, 08:36
Помогаю со студенческими работами здесь

Попытка чтения или записи в защищенную память
Здравствуйте! Вот такая ошибка: &quot;Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память...

Попытка чтения или записи в защищенную память
Hello, ребят, такой вопрос. Есть програмка, суть ее - найти часть картинки на другой, ту что ищем, есть в ресурсах проекта, та на которой...

Попытка чтения или записи в защищенную память
Доброго времени суток, форумчане! Возникла такая проблема - при вызове функции из dll(написана на С++) в проекте C# компилятор...

Попытка чтения или записи в защищенную память
Здравствуйте. Толи c# тупит толи что но возникает ошибка Попытка чтения или записи в защещенную память Вот на этом моменте возникает...

Попытка чтения или записи в защищенную память
Я написал код в C++ и сделал как библиотеку и сделал dll и через importdll импортировал эту dll. Через public static extern void вызвал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru