Режим ядра: BSOD для получения базы изображений модуля win32k.sys [дубликат]

Вам не разрешено выполнять сетевые операции в потоке пользовательского интерфейса на Android. Вам нужно будет использовать класс AsyncTask для выполнения связанных с сетью операций, таких как отправка запроса API, загрузка изображения с URL-адреса и т. Д. И использование методов обратного вызова AsyncTask, вы можете получить результат inPostExecute menthod, и вы попадете в поток пользовательского интерфейса, и вы может заполнять пользовательский интерфейс данными из веб-службы или что-то в этом роде.

Пример: Предположим, вы хотите загрузить изображение с URL-адреса: https://www.samplewebsite.com/sampleimage.jpg

Решение с использованием AsyncTask: соответственно.

    public class MyDownloader extends AsyncTask
    {
        @Override
        protected void onPreExecute() {
            // Show progress dialog
            super.onPreExecute();
        }

        @Override
        protected void onPostExecute(Bitmap bitmap) {
            //Populate Ui
            super.onPostExecute(bitmap);
        }

        @Override
        protected Bitmap doInBackground(String... params) {
            // Open URL connection read bitmaps and return form here
            return result;
        }

        @Override
        protected void onProgressUpdate(Void... values) {
            // Show progress update
            super.onProgressUpdate(values);
        }


    }
}

Примечание. Не забудьте добавить разрешение Интернета в файл манифеста Android. Он будет работать как шарм. :)

1
задан SomeWittyUsername 21 March 2014 в 17:49
поделиться

3 ответа

Сессионное пространство не отображается в системном адресном пространстве (эти драйверы совместно используют, если они не привязаны к какому-либо процессу). Те, кто получает BSOD при доступе к win32k.

Для выполнения этой операции вам необходимо подключиться к EPROCESS через KeStackAttachProcess. Вы можете получить идентификатор сеанса с помощью функции ZwQueryInformationProcess (ProcessSessionInformation).

2
ответ дан Evgenii Gostiukhin 26 August 2018 в 11:04
поделиться

Объем памяти ядра распределяется между всеми объектами ядра (как реальный / незащищенный режим в DOS и ранних версиях Windows). Драйвер ядра может получить доступ к любому адресу в пространстве ядра, независимо от того, принадлежит он ему или нет.

1
ответ дан SomeWittyUsername 26 August 2018 в 11:04
поделиться

Вы должны найти и приложить к процессу csrss! win32k.sys не загружается в системное адресное пространство всего процесса только для csrss.

Вы должны сделать прикрепление стека к процессу csrss.

0
ответ дан user3409863 26 August 2018 в 11:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: