Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695

Проблемы с кодировкой текста "перехваченного" из консоли

02.02.2024, 16:33. Показов 2150. Ответов 13

Студворк — интернет-сервис помощи студентам
Добрый день. Написал перехватчик информации команд CMD. При выводе информации в форму в место Кириллицы выдаёт кракозыбры

перепробовал все способы хотя их и не много в том числе
C#
1
Encoding encoding = Encoding.GetEncoding("windows-1251");
не помогает. Подскажите пожалуйста как исправить.
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace CMDHOOK
{
    public partial class Form1 : Form
    {
        
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
        public delegate void MyDelegate(object o, EventArgs e);
        public event MyDelegate ChildProcessEventHandler;
        private StringBuilder output = new StringBuilder();
        int lineCount = 0;
        private void button1_Click(object sender, EventArgs e)
        {
            System.Security.SecureString ssPwd = new System.Security.SecureString();
            Process myProcess = new Process();
            myProcess.StartInfo.FileName = "cmd ";
            myProcess.StartInfo.UserName = "Zevs";
            myProcess.StartInfo.Arguments = "/c net user";
            ssPwd.AppendChar('1');
            myProcess.StartInfo.Password = ssPwd;
            myProcess.StartInfo.UseShellExecute = false;
            myProcess.StartInfo.CreateNoWindow = true;
            myProcess.StartInfo.RedirectStandardOutput = true;
            myProcess.StartInfo.RedirectStandardError = true;
            string str = string.Empty;
            
            myProcess.OutputDataReceived += new DataReceivedEventHandler((sendere, ee) =>
            {
                
                if (!String.IsNullOrEmpty(ee.Data))
                {
                    lineCount++;
                    output.Append("\n[" + lineCount + "]: " + ee.Data);
                    
                }
            });
 
            myProcess.Start();
            myProcess.BeginOutputReadLine();
            myProcess.WaitForExit();
            str = output.ToString();
            
            
            richTextBox1.AppendText("CMD ID - " + myProcess.Id + ".  CMD дискриптор - " + OpenProcess(0xFFFF, false, myProcess.Id));
            richTextBox1.Invoke(new Action(() => richTextBox1.AppendText("" + str)));
 
            
 
        }
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.02.2024, 16:33
Ответы с готовыми решениями:

Интернет-контент в консоли: проблемы с кодировкой
Как включить русский язык в консоле?

Перенаправление вывода из консоли в файл, проблемы с кодировкой
Добрый день, столкнулся с проблемой. Необходимо написать небольшую программку, которая будет посылать в консоль команды(типа ping и т.д.) и...

Проблемы с кодировкой текста
Всем добрый день. История такая: Делаю пост на сайт, в ответ приходит json который красиво разбирается и все бы было прекрасное если бы...

13
sleep
 Аватар для I can
4931 / 4593 / 840
Регистрация: 13.04.2015
Сообщений: 9,752
02.02.2024, 16:37
Цитата Сообщение от VladimirU Посмотреть сообщение
перехватчик информации


Добавлено через 49 секунд
И что, "перехватывает"?
0
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
02.02.2024, 18:02  [ТС]
I can, не так выразился не перехватывает, программа операции асинхронного чтения с перенаправленного потока System.Diagnostics.Process.StandardOutpu t приложения.

Добавлено через 6 минут
I can, вроде это должно помочь myProcess.StartInfo.StandardOutputEncodi ng = System.Text.Encoding.ASCII; правда не фига не помогает.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18284 / 14207 / 5368
Регистрация: 17.03.2014
Сообщений: 28,887
Записей в блоге: 1
02.02.2024, 18:17
Лучший ответ Сообщение было отмечено VladimirU как решение

Решение

Цитата Сообщение от VladimirU Посмотреть сообщение
вроде это должно помочь myProcess.StartInfo.StandardOutputEncodi ng = System.Text.Encoding.ASCII; правда не фига не помогает.
Попробуйте 866 кодировку
C#
1
myProcess.StartInfo.StandardOutputEncoding = Encoding.GetEncoding(866);
1
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
02.02.2024, 19:28  [ТС]
OwenGlendower, да спасибо огромное помогло. Честно сказать надо очень много держать в мозгу инфы что бы кодить на языках высокого уровня.

Добавлено через 29 минут
OwenGlendower, думаю наладить через сокет и выполнять команды на удалённом пк. Что типо telnet.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18284 / 14207 / 5368
Регистрация: 17.03.2014
Сообщений: 28,887
Записей в блоге: 1
02.02.2024, 22:24
Лучший ответ Сообщение было отмечено VladimirU как решение

Решение

Цитата Сообщение от VladimirU Посмотреть сообщение
помогло
Хорошо, но жестко прописывать кодировку в коде плохая идея. Попробуйте сделать авто-определение кодировки с помощью команды chcp. При запуске без параметров она выводит строку с номером кодовой страницы.

Цитата Сообщение от VladimirU Посмотреть сообщение
Честно сказать надо очень много держать в мозгу инфы что бы кодить на языках высокого уровня.
По моему много инфы следует держать в мозгу независимо от ЯП.

Цитата Сообщение от VladimirU Посмотреть сообщение
думаю наладить через сокет и выполнять команды на удалённом пк. Что типо telnet.
Я в курсе. Видел другие ваши темы.
1
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
03.02.2024, 01:04  [ТС]
OwenGlendower, с моей то больной фантазией
0
 Аватар для volodin661
6686 / 2278 / 347
Регистрация: 10.12.2013
Сообщений: 7,873
07.02.2024, 04:28
и зачем тут cmd, если нужно выполнить net.exe ?

C#
1
2
3
myProcess.StartInfo.FileName = "net ";
myProcess.StartInfo.UserName = "Zevs";
myProcess.StartInfo.Arguments = "user";
1
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
07.02.2024, 21:09  [ТС]
Цитата Сообщение от volodin661 Посмотреть сообщение
и зачем тут cmd, если нужно выполнить net.exe ?
Всё разобрался. Допиливаю остатки к проекту telnet server and telnet client. Думал не осилю но осилил теперь под Win10 есть telnet server без оконном режиме не мешающий USER-у.
0
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
09.02.2024, 17:39  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Хорошо, но жестко прописывать кодировку в коде плохая идея. Попробуйте сделать авто-определение кодировки с помощью команды chcp. При запуске без параметров она выводит строку с номером кодовой страницы.
Только сейчас дошло, ещё раз спасибо. А ведь действительно можно столкнуться когда кодировку изменит какой нибудь шибко умный сисадмин. Ещё я столкнулся с проблемой дешифрации MD4 RFC 1186 не знаете случайно вообще возможно дешифрировать хеш строку обратно в пользовательское представления?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18284 / 14207 / 5368
Регистрация: 17.03.2014
Сообщений: 28,887
Записей в блоге: 1
09.02.2024, 21:09
Цитата Сообщение от VladimirU Посмотреть сообщение
Ещё я столкнулся с проблемой дешифрации MD4 RFC 1186 не знаете случайно вообще возможно дешифрировать хеш строку обратно в пользовательское представления?
MD4 нельзя дешифровать потому что это однонаправленный алгоритм хеширования. Где вы столкнулись с этой проблемой?
0
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
09.02.2024, 21:27  [ТС]
OwenGlendower, в наше время иметь боевой софт
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Где вы столкнулись с этой проблемой?
Ну есть онлайн ресурсы где спокойно дешифруют MD4. Я нашёл преблезительные алгоритмы шифрования не сложно и дешифрировать, заметил в этом алгоритме повторяемость.

Добавлено через 1 минуту
OwenGlendower, не то что бы столкнулся а хотелось бы дешифровать данный шифр.

Добавлено через 1 минуту
OwenGlendower, для меня это лишь вопрос времени, наверное.

Добавлено через 5 минут
OwenGlendower, тогда странно, значит не односторонней алгоритм шифрования.

Добавлено через 2 минуты
OwenGlendower, я сам окуел когда просто вытащил из файлов SAM И SYSTEM инфу а из этой инфы учётные данные.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18284 / 14207 / 5368
Регистрация: 17.03.2014
Сообщений: 28,887
Записей в блоге: 1
09.02.2024, 22:56
VladimirU, под дешифрованием я имел в виду официально предусмотренную возможность. Существует возможность подобрать значение которое даст нужный MD4, но я не буду давать подсказки по данной теме.
0
61 / 186 / 31
Регистрация: 14.02.2013
Сообщений: 1,695
09.02.2024, 23:37  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Существует возможность подобрать значение которое даст нужный MD4
подбором? оФИГЕТЬ что же там за подбор что раскешировал мой кеш за доли секунд.

Добавлено через 1 минуту
OwenGlendower, бротфост не варик, как то же онлайн ресурс резко расшифровывает.

Добавлено через 8 минут
скорей всего создатель по полиному шифровал не может такого быть чтобы он для себя лазейку не оставил.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.02.2024, 23:37
Помогаю со студенческими работами здесь

Проблемы с кодировкой текста
(не уверен что это та категория но предположим что я не ошибся) Здравствуйте, у меня есть консольное приложение которое отправляет запрос...

Проблемы с кодировкой текста
Есть самописный сайт с использованием codepage windows-1251 сейчас нужно перевести все в юникод. Я поправил уже файлы которые ниже ...

Ввод русского текста из консоли в файл (проблема с кодировкой)
Здравствуйте! Стоит казалось бы тривиальная задача - считать из консоли русский текст, записать его в файл, затем из этого файла данный...

Проблемы с кодировкой русского текста
Здраствуйте. Столкнулся с такой проблемой. Загрузил файлы сайта на хостинг. Указал кодировку страниц в мета-теге, отредактировал файл...

Ввод текста из файла: проблемы с кодировкой
Написал программу которая должна выводить на консоль текст из файла,русский не выводит,помогите.Спасибо using System; using...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru