Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
18 / 1 / 0
Регистрация: 28.02.2017
Сообщений: 110

Чтение в защищенной памяти

04.09.2017, 13:21. Показов 698. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
private: System::Void MyForm_Load_1(System::Object^  sender, System::EventArgs^  e) {
 
        Image ^ imagelogo = gcnew Bitmap("Bill.png"); // инициализация sфайл с фото
        pictureBoxLogo->Image = imagelogo;
 
        //USB
 
        HDEVINFO  hInfo = SetupDiGetClassDevs((LPGUID)&USBPRINT_GUID, NULL, NULL,
            DIGCF_PRESENT | DIGCF_INTERFACEDEVICE | DIGCF_ALLCLASSES | DIGCF_PROFILE);
 
        if (hInfo == INVALID_HANDLE_VALUE)
            return;
 
 
        SP_INTERFACE_DEVICE_DATA Interface_Info;
        Interface_Info.cbSize = sizeof(Interface_Info);     // Enumerate device   
 
                                                            SetupDiEnumDeviceInterfaces(hInfo, NULL, (LPGUID)&USBPRINT_GUID, 0, &Interface_Info);
 
        for (int i = 0;; i++)
        {
 
            if (!SetupDiEnumInterfaceDevice(hInfo, NULL, (LPGUID)&USBPRINT_GUID, i, &Interface_Info))
            {
                SetupDiDestroyDeviceInfoList(hInfo);
                break;
            }
 
 
            DWORD needed;                                       // get the required length   
            SetupDiGetInterfaceDeviceDetail(hInfo, &Interface_Info, NULL, 0, &needed, NULL);
            PSP_INTERFACE_DEVICE_DETAIL_DATA detail = (PSP_INTERFACE_DEVICE_DETAIL_DATA)malloc(needed);
            if (!detail)
            {
                SetupDiDestroyDeviceInfoList(hInfo);
                return;
            }
             //fill the device details   
            detail->cbSize = sizeof(SP_INTERFACE_DEVICE_DETAIL_DATA);
            if (!SetupDiGetInterfaceDeviceDetail(hInfo, &Interface_Info, detail, needed, NULL, NULL))
            {
                free((PVOID)detail);
                SetupDiDestroyDeviceInfoList(hInfo);
                return;
            }
 
 
            memcpy(DeviceName, detail->DevicePath, 260);
            printer.CreatePrinter(DeviceName);
            printer.SendComand(IdDevice);
 
            if (sim[0] == 0xA7) {
                DeviceNameCB->Items->Add("TG-2460H");
            }
            if (sim[0] == 0xA8) {
                DeviceNameCB->Items->Add("TG-2480H");
                TG2480H = DeviceName;
            }
            if (sim[0] == 0x5d) {
                DeviceNameCB->Items->Add("EL-331B");
                wcsncpy((wchar_t*)EL331B, DeviceName, 120); // ошибка выскакивает здесь 
                
            }
            if (sim[0] == 0xAC) {
                DeviceNameCB->Items->Add("TL 80");
            }
            if (sim[0] == 0xAD) {
                DeviceNameCB->Items->Add("TL 60");
            }
            memset(sim, 0, sizeof(sim));
 
            free((PVOID)detail);
        }
 
        SetupDiDestroyDeviceInfoList(hInfo);
Выдает попытка чтения или записи в защищенную память.
Как обойти данную проблему ?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.09.2017, 13:21
Ответы с готовыми решениями:

Чтение из не защищённой памяти
Вот код: /* * Created by SharpDevelop. * User: User * Date: 27.03.2016 * Time: 19:09 * * To change this template...

Чтение памяти
Не могу понять почему не читается память по адрессу, уже 3 дня гуглю. #include<windows.h> #include<tlhelp32.h> ...

Чтение из памяти
добрый день, нужна помощь у же не знаю что я не так делаю , вернее как мне нужно сделать void foo(char * inputfile, char * outputfile,...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.09.2017, 13:21
Помогаю со студенческими работами здесь

чтение из памяти
господа допустим есть - int a=5; мне нужно получить адрес переменной "а" и из адреса получить значение т.е. - 5 . Как возможно это...

Чтение из памяти
HWND hwnd = FindWindow(0, "Test Window"); DWORD proc_id; GetWindowThreadProcessId(hwnd, &proc_id); HANDLE handle =...

Чтение памяти не возможно
Начал изучаться ООП получил лабораторную, программа заупускается и на вводе размерности матрицы появляется ошибка. Табличка которая выходит...

Чтение из памяти процесса
Есть библиотека или обёртка win api, с помощью которой можно читать и записывать в память процесса?

Чтение памяти процесса
Имеется задача прочитать память некого процесса. Моя сборка для 32-битных систем (не могу перейти на 64 из-за совместимости). В общем...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru