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

Разобраться с кодом

01.01.2016, 09:49. Показов 1699. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, помогите разобраться. У меня мозг уже потёк. Подскажите пожалуйста, где и как это исправлять.


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
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
namespace System {
    using System;
    using System.IO;
    using System.Text;
    using System.Globalization;
    using System.Security;
    using System.Security.Permissions;
    using Microsoft.Win32;
    using System.Runtime.CompilerServices;
    using System.Threading;
    using System.Runtime.InteropServices;
    using Microsoft.Win32.SafeHandles;
    using System.Runtime.ConstrainedExecution;
    using System.Runtime.Versioning;
    using System.Diagnostics.Contracts;
    using System.Diagnostics.CodeAnalysis;
    using System.Collections.Generic;
 
    // Provides static fields for console input & output.  Use 
    // Console.In for input from the standard input stream (stdin),
    // Console.Out for output to stdout, and Console.Error
    // for output to stderr.  If any of those console streams are 
    // redirected from the command line, these streams will be redirected.
    // A program can also redirect its own output or input with the 
    // SetIn, SetOut, and SetError methods.
    // 
    // The distinction between Console.Out & Console.Error is useful
    // for programs that redirect output to a file or a pipe.  Note that
    // stdout & stderr can be output to different files at the same
    // time from the DOS command line:
    // 
    // someProgram 1> out 2> err
    // 
    //Contains only static data.  Serializable attribute not required.
    public static class Console
    {   
        private const int DefaultConsoleBufferSize = 256;
        private const short AltVKCode = 0x12;
 
#if !FEATURE_PAL
        private const int NumberLockVKCode = 0x90;  // virtual key code
        private const int CapsLockVKCode = 0x14;
 
        // Beep range - see MSDN.
        private const int MinBeepFrequency = 37;
        private const int MaxBeepFrequency = 32767;
 
        // MSDN says console titles can be up to 64 KB in length.
        // But I get an exception if I use buffer lengths longer than
        // ~24500 Unicode characters.  Oh well.
        private const int MaxConsoleTitleLength = 24500;
#endif // !FEATURE_PAL
 
#if !FEATURE_CORECLR
        private static readonly UnicodeEncoding StdConUnicodeEncoding = new UnicodeEncoding(false, false);
#endif  // !FEATURE_CORECLR
 
        private static volatile TextReader _in;
        private static volatile TextWriter _out;
        private static volatile TextWriter _error;
 
        private static volatile ConsoleCancelEventHandler _cancelCallbacks;
        private static volatile ControlCHooker _hooker;
 
#if !FEATURE_PAL
        // ReadLine & Read can't use this because they need to use ReadFile
        // to be able to handle redirected input.  We have to accept that
        // we will lose repeated keystrokes when someone switches from
        // calling ReadKey to calling Read or ReadLine.  Those methods should 
        // ideally flush this cache as well.
        [System.Security.SecurityCritical] // auto-generated
        private static Win32Native.InputRecord _cachedInputRecord;
 
        // For ResetColor
        private static volatile bool _haveReadDefaultColors;
        private static volatile byte _defaultColors;
#endif // !FEATURE_PAL
#if FEATURE_CODEPAGES_FILE    // if no codepages file then locked into default       
        private static volatile bool _isOutTextWriterRedirected = false;
        private static volatile bool _isErrorTextWriterRedirected = false;
#endif        
        private static volatile Encoding _inputEncoding = null;
        private static volatile Encoding _outputEncoding = null;
 
#if !FEATURE_CORECLR
        private static volatile bool _stdInRedirectQueried = false;
        private static volatile bool _stdOutRedirectQueried = false;
        private static volatile bool _stdErrRedirectQueried = false;
 
        private static bool _isStdInRedirected;
        private static bool _isStdOutRedirected;
        private static bool _isStdErrRedirected;
#endif  // !FEATURE_CORECLR
 
        // Private object for locking instead of locking on a public type for SQL reliability work.
        // Use this for internal synchronization during initialization, wiring up events, or for short, non-blocking OS calls.
        private static volatile Object s_InternalSyncObject;
        private static Object InternalSyncObject {
            get {
                Contract.Ensures(Contract.Result<Object>() != null);
                if (s_InternalSyncObject == null) {
                    Object o = new Object();
#pragma warning disable 0420
                    Interlocked.CompareExchange<Object>(ref s_InternalSyncObject, o, null);
#pragma warning restore 0420
                }
                return s_InternalSyncObject;
            }
        }
 
        // Use this for blocking in Console.ReadKey, which needs to protect itself in case multiple threads call it simultaneously.
        // Use a ReadKey-specific lock though, to allow other fields to be initialized on this type.
        private static volatile Object s_ReadKeySyncObject;
        private static Object ReadKeySyncObject
        {
            get
            {
                Contract.Ensures(Contract.Result<Object>() != null);
                if (s_ReadKeySyncObject == null)
                {
                    Object o = new Object();
#pragma warning disable 0420
                    Interlocked.CompareExchange<Object>(ref s_ReadKeySyncObject, o, null);
#pragma warning restore 0420
                }
                return s_ReadKeySyncObject;
            }
        }
 
        // About reliability: I'm not using SafeHandle here.  We don't 
        // need to close these handles, and we don't allow the user to close
        // them so we don't have many of the security problems inherent in
        // something like file handles.  Additionally, in a host like SQL 
        // Server, we won't have a console.
        private static volatile IntPtr _consoleInputHandle;
        private static volatile IntPtr _consoleOutputHandle;
 
        private static IntPtr ConsoleInputHandle {
            [System.Security.SecurityCritical]  // auto-generated
            [ResourceExposure(ResourceScope.Process)]
            [ResourceConsumption(ResourceScope.Process)]
            get {
                if (_consoleInputHandle == IntPtr.Zero) {
                    _consoleInputHandle = Win32Native.GetStdHandle(Win32Native.STD_INPUT_HANDLE);
                }
                return _consoleInputHandle;
            }
        }

Добавлено через 3 минуты
Чуть позже выложу полный файл с расширением txt
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.01.2016, 09:49
Ответы с готовыми решениями:

Надо разобраться с кодом и найти ошибки
Программа нахождения значения функции по значению аргумента xf, если известна таблица значений - массив y соответствующий значениям массива...

Помогите разобраться с кодом метода парабол (Симпсона)
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Simpson_cs { class...

Помогите разобраться с кодом расчета min, max, average
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace...

11
0 / 0 / 0
Регистрация: 01.01.2016
Сообщений: 12
01.01.2016, 09:51  [ТС]
В текстовом формате не получилось, файл большой.
Вложения
Тип файла: zip Collection-1.zip (17.1 Кб, 3 просмотров)
0
141 / 117 / 26
Регистрация: 07.12.2014
Сообщений: 371
01.01.2016, 15:17
Стесняюсь спросить, а что Вы хотите исправлять в библиотечном классе от Microsoft?
2
0 / 0 / 0
Регистрация: 01.01.2016
Сообщений: 12
02.01.2016, 05:07  [ТС]
Class: Console
Purpose: This class provides access to the standard input, standard output
and standard error streams.

Выдуются ошибки множественного характера.

Ошибка 17 Не удалось найти имя типа или пространства имен "__ConsoleStream" (пропущена директива using или ссылка на сборку?) C:\Users\All\documents\visual studio 2013\Projects\ConsoleEvents\ConsoleEvent s\Program.cs 547 34 ConsoleEvents

Ошибка 1 Не удалось найти имя типа или пространства имен "Win32Native" (пропущена директива using или ссылка на сборку?) C:\Users\All\documents\visual studio 2013\Projects\ConsoleEvents\ConsoleEvent s\Program.cs 88 24 ConsoleEvents

Ошибка 67 Невозможно получить адрес, определить размер или объявить указатель на управляемый тип ("Win32Native.CHAR_INFO") C:\Users\All\documents\visual studio 2013\Projects\ConsoleEvents\ConsoleEvent s\Program.cs 963 43 ConsoleEvents

Ошибка 27 Элемент "__Error" не существует в текущем контексте. C:\Users\All\documents\visual studio 2013\Projects\ConsoleEvents\ConsoleEvent s\Program.cs 746 17 ConsoleEvents

И вот такая петрушка по всему коду. А если учесть что там почти 2500 строк, тоооо....
0
141 / 117 / 26
Регистрация: 07.12.2014
Сообщений: 371
02.01.2016, 09:16
Что у Вас program.cs творится? Вы руками сами пытаетесь собрать класс Console из System?Зачем?
0
0 / 0 / 0
Регистрация: 01.01.2016
Сообщений: 12
02.01.2016, 09:33  [ТС]
Я использую лицензионную програмку visual studio 2013 Professional На этапе сборки данного кода в програме вылазят ошибки.
0
141 / 117 / 26
Регистрация: 07.12.2014
Сообщений: 371
02.01.2016, 09:55
Лучший ответ Сообщение было отмечено Alexey8 как решение

Решение

Alexey8, ну что тут можно сказать.По Вашим словам можно сделать вывод, что Вы просто скопировали исходники класса Console из стандартной библиотеки .Net и пытаетесь их собрать в отрыве от всего остального. Конечно же, это не прокатывает. Ответ тут простой. Не занимайтесь непонятно чем. В чём мотивация вообще самостоятельной сборки Console? Почему не пользоваться тем, что уже есть?
1
0 / 0 / 0
Регистрация: 01.01.2016
Сообщений: 12
02.01.2016, 10:07  [ТС]
А вот за такого рода ответ, спасибо. Очень сильно помогло. Натолкнув на определённые мысли. Поверьте мотивация есть!!! И она настолько сильная, что хочется рвать и метать!!! Иногда даже хочется... но не будем о фашизме))) Код действительно скопирован из обширной коллекции. Если надо, могу дать ссылку.
0
141 / 117 / 26
Регистрация: 07.12.2014
Сообщений: 371
02.01.2016, 10:12
Alexey8, спасибо, но незачем)) Я как-то обхожусь уже собранными библиотеками .Net'а. Ну а если что, то всё есть на гитхабе в открытом доступе. Смотреть можно сколько влезет. И даже собрать самому
0
0 / 0 / 0
Регистрация: 01.01.2016
Сообщений: 12
02.01.2016, 10:19  [ТС]
На самом деле беспокоит один вопрос связанный с Security Если правила не запрещают, можно обсудить. В связи с этим и начал всё трести. Уж ооочень допекло.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18267 / 14190 / 5368
Регистрация: 17.03.2014
Сообщений: 28,879
Записей в блоге: 1
02.01.2016, 12:18
Alexey8, правила форума не запрещают обсуждение вопросов связанных с безопасностью.
1
0 / 0 / 0
Регистрация: 01.01.2016
Сообщений: 12
03.01.2016, 03:34  [ТС]
Спасибо за пояснение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.01.2016, 03:34
Помогаю со студенческими работами здесь

Не могу разобраться разобраться с кодом меню
Добрый день. Я понимаю, что тут все, наверное, элементарно. Но я только начала изучение js и пока для меня все страшно и сложно. Проблема...

Разобраться с кодом
Здравствуйте! Помогите, пожалуйста разобраться с кодом. Моя задача. передать параметры ячейки в модальное окно. Использую решение: ...

Разобраться с кодом
Всем привет, есть готовая программа, ее нужно немного изменить но я ничего не понимаю в коде, помогите разобраться с кодом Option...

Разобраться с кодом
Для чего нужна вот эта часть кода? зачем нужен этот конструктор ? как он работает? // класс строки public class my_string ...

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


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru