Интернет-магазин My-shop.ru
Акции   
Персональный раздел v
   Доставка    Оплата    Скидки    Форум    Помощь
для Москвы  +7 (495) 638-53-38
бесплатно для РФ  +7 (800) 100-53-38
 
0
Красиво и практично!Новогодние наборы My-shop.ru — лучшее решение вопроса с подарками под ёлку!Удобно и выгодно!
• 
Книги (688840)
• 
Компьютерная литература (3896)
• 
Разработка ПО (1247)
• 
Языки и среды программирования, технологии и т.п. (779)
• 
.NET, ASP.NET, VB.NET, C# (143)



C#. Сборник рецептов

Агуров П.В. (найти все товары)

+ CD-ROM
C#. Сборник рецептовВ книге содержатся советы, алгоритмы и готовые примеры программ из различных областей: шифрование, файловые и сетевые операции, XML, ASP.NET, взаимодействие с MS Office и Internet Explorer и др. Описаны синтаксис языка С#, вопросы отладки и профилирования приложений, а также проблемы, возникающие при переходе с других языков программирования на язык С#. Рассматриваются примеры наиболее часто используемых регулярных выражений. Отдельная глава посвящена работе с аппаратурой. На компакт-диске размещены все исходные коды, приведенные в книге.

Издательство: БХВ-Петербург
Серия: Профессиональное программирование

Рейтинг: 3.8 (голосов: 4)
Ваша оценка: 1 2 3 4 5  

дата выпуска: 2007 г. 
язык: русский
количество томов: 1
количество страниц: 432 стр.
переплет: мягкий
размеры: 170x240 мм
формат: 70x100/16 (170x240 мм)
тираж: 2000 экз.
стандарт: 8 шт.
возрастная категория: 18+ (нет данных)
код системы скидок: 25
код в My-shop.ru: 194354

ISBN: 5-94157-969-1, 978-5-94157-969-3


Агуров П.В.автор/составительАгуров П.В., найти все товары


Содержание:

Оглавление Введение 1
Для кого эта книга 1
О программном коде 1
Краткое описание глав 2
Благодарности 3
Обратная связь 4

Глава 1. Технология .NET

5
1.1. На каких платформах запускается .NET? 5
1.2. Какие компиляторы существуют для .NET? 5
1.3. Можно ли запустить программу без .NET Framework? 5
1.4. Можно ли вызывать функции Win32 из .NET-программ? 6
1.5. Проблемы установки Framework 6
1.6. Ускорение загрузки модулей 7
1.7. Одновременная установка Visual Studio 2003 и 2005 7
1.8. Не запускается отладчик в Visual Studio 8
1.8.1. Ошибка безопасности 8
1.8.2. Ошибка конфигурирования 8
1.8.3. Ошибка 401 9
1.9. Не запускается отладчик в Visual Studio 2005 9

Глава 2. Вопросы синтаксиса C#

11
2.1. Как выглядит простая C#-программа? 11
2.2. Оператор switch можно использовать для строк 11
2.3. Выходные параметры без инициализации 12
2.4. Константы и поля "только для чтения" 13
2.5. Как определить ссылочный тип? 14
2.6. Псевдонимы 15
2.7. Что означает символ @ в начале строки? 15
2.8. Что означает символ @ перед идентификатором? 15
2.9. Какая разница между оператором is и методом IsSubclassOf? 16
2.10. Какая разница между оператором as и прямым приведением типа? 16
2.11. Какая разница между string и System.String? 16
2.12. Какая разница между override и new? 17
2.13. Какая разница между == и Equals? 18
2.14. Перекрытие операторов 19
2.15. Как создать наследника, если конструктор класса имеет параметры? 22
2.16. Что такое делегат? 23
2.17. В чем разница между полем и свойством? 24
2.18. Свойство с индексатором 25
2.19. Можно ли сделать свойство с разным уровнем доступа для get и set? 26
2.20. Как вызвать методы с одинаковыми именами из интерфейсов? 27
2.21. В чем разница byte и sbyte? 28
2.22. Как сгенерировать документацию по коду? 28
2.23. Как инициализировать поля класса до вызова конструктора? 29
2.24. Использование переменного числа параметров 29
2.25. Указатели 30
2.26. Слабые ссылки 32
2.27. Файлы ресурсов 33

Глава 3. Для программистов C++ и Delphi

35
3.1. Как удалить объекты, созданные с помощью оператора new? 35
3.2. Как создать экземпляр класса на стеке? 35
3.3. Почему не вызывается деструктор? 35
3.4. Почему в операторе if больше нельзя использовать условия типа int? 35
3.5. Как создать массив констант? 36
3.6. Как инициализировать массив структур? 36
3.7. Оператор switch работает не так, как в C++ 37
3.8. Есть ли в C# макросы и препроцессор? 38
3.9. Как описать битовые поля? 38

Глава 4. Отражение и связанные с ним вопросы

41
4.1. Создание объекта по имени типа 41
4.2. Вызов метода по имени 43
4.3. Загрузка и создание класса из другой сборки 44
4.4. Получение списка типов из сборки 44
4.5. Получение всех свойств класса 45
4.6. Установка значения private-поля 45
4.7. Получение списка полей структуры 47
4.8. Получение полного имени сборки и ее свойств 48
4.9. Компиляция кода из программы 49
4.10. Перехват загрузки типов и модулей 50

Глава 5. Отладка и условная компиляция

53
5.1. Условная компиляция в режиме отладки 53
5.2. Методы ASSERT и TRACE 53
5.3. Перенаправление вывода Trace 54
5.4. Почему дублируются строки в отладочной информации? 55
5.5. Трассировка исключения 55
5.6. Трассировка стека вызовов 56
5.7. Оценка времени выполнения кода 58
5.7.1. Измерение с помощью TickCount (наименьшая точность) 58
5.7.2. Измерение с помощью Ticks (средняя точность) 59
5.7.3. Измерение с помощью QueryPerformance (высокая точность) 59
5.8. Как включить полный режим отладки кода? 59
5.9. Отладочная информация для ASP.NET 60
5.10. Как отлаживать remoting-код? 60
5.11. Глобальная обработка исключений 60

Глава 6. Командная строка, свойства программы, конфигурационные файлы

63
6.1. Параметры командной строки 63
6.2. Имя исполняемого файла 64
6.3. Установка свойства CompanyName 64
6.4. Конфигурационный файл 64
6.5. Где найти класс ConfigurationManager? 65
6.6. Нестандартный конфигурационный файл 65
6.7. Как заставить программу использовать только Framework 2.0? 71
6.8. Версия и информация о модуле 72
6.9. Как обновлять AssemblyInfo для всего проекта сразу? 72

Глава 7. Преобразования

73
7.1. Преобразование числа в шестнадцатеричную строку 73
7.2. Преобразование строки в число 73
7.3. Преобразование строки с пробелами в число 74
7.4. Преобразование шестнадцатеричной строки в число 74
7.5. Преобразование двоичной строки в число 74
7.6. Преобразование числа в двоичную строку 74
7.7. Преобразование числа с плавающей точкой в строку 74
7.8. Преобразование строки в число с плавающей точкой 75
7.9. Перекодировка текста 77
7.10. Преобразование в Base64 и обратно 77
7.11. Преобразование из Win1251 в KOI8 и обратно 77
7.12. Преобразование цвета в строку и обратно 78
7.13. Преобразование цвета в HTML-формат 78
7.14. Преобразование цвета в целое число и обратно 79
7.15. Преобразование HTML-текста 79
7.16. Преобразование массива байтов в базовые типы и обратно 80

Глава 8. Массивы, списки, таблицы, перечисления

81
8.1. Отображение всех элементов перечисления 81
8.2. Перевод перечисления в строковый вид и обратно 81
8.3. Проверка наличия элемента в перечислении 82
8.4. Одномерные массивы постоянного размера 82
8.4.1. Изменение размерности массива 83
8.4.2. Перебор всех элементов массива 83
8.4.3. Изменение порядка элементов на обратный 84
8.4.4. Поиск 84
8.4.5. Копирование элементов массива 85
8.4.6. Преобразование массива одного типа в массив другого типа 85
8.5. Многомерные массивы постоянного размера 85
8.6. Невыровненный массив 86
8.7. Свойства массивов 86
8.8. Методы, возвращающие массивы 87
8.9. Массивы переменного размера 88
8.10. Массив битов 88
8.11. Хранение таблицы "ключ/значение" 89
8.11.1. Добавление элементов 90
8.11.2. Отображение содержимого Hashtable 90
8.11.3. Порядок элементов Hashtable 90
8.11.4. Удаление элемента из Hashtable 91
8.11.5. Специальный Hashtable 91
8.12. Сортированный список 92
8.13. Очередь 94
8.14. Стек 94
8.15. Преобразование IList в ArrayList 95

Глава 9. Шифрование, кодирование, сжатие, математика

97
9.1. Вычисление контрольной суммы строки 97
9.2. Шифрование строк 98
9.3. Контроль арифметических операций 103
9.4. Вычисление математических выражений 104

Глава 10. Строковые и символьные операции

105
10.1. Проверка символов 105
10.2. Создание строки одинаковых символов 105
10.3. Проверка, является ли строка числом 106
10.4. Проверка, является ли строка допустимой датой 106
10.5. Разбиение строки по разделителям 106
10.6. Объединение строк через разделитель 107
10.7. Какие преимущества дает класс StringBuilder? 107
10.8. Как сравнить все строки без учета регистра символов? 108
10.9. Прямая модификация содержимого строки 108
10.10. Специальные символы в строке 108

Глава 11. Консольные программы

111
11.1. Вывод цветного текста 111
11.2. Задержка закрытия консольной программы 114
11.3. Перенаправление вывода консольной программы 114
11.4. Изменение заголовка консольной программы 115
11.5. Получение размера окна консольной программы 116

Глава 12. Производительность

117
12.1. Не кэшируйте соединение с БД 117
12.2. Используйте StringBuilder 117
12.3. Используйте Length для проверки пустоты строки 118
12.4. Не используйте исключения, если это возможно 119
12.5. Используйте AddRange для добавления групп элементов 119
12.6. Создавайте Hashtable и ArrayList подходящего размера 119
12.7. Иногда выгоднее использовать невыровненный массив 120
12.8. Используйте DataReader для последовательного доступа к данным 120
12.9. Используйте хранимые процедуры 120

Глава 13. Списки файлов, каталогов

121
13.1. Получение списка логических дисков 121
13.2. Получение списка сетевых дисков 122
13.3. Список каталогов 122
13.4. Список каталогов по маске 123
13.5. Список файлов 123
13.6. Список файлов по маске 124
13.7. Создание временного файла 124

Глава 14. Файловые операции

125
14.1. Блокирование ошибки "Устройство не готово" 125
14.2. Получение списка файлов и каталогов 126
14.3. Диалог открытия папки 127
14.4. Основные операции с каталогами 127
14.5. Основные операции с файлами 128
14.6. Чтение и установка атрибутов файла 128
14.7. Создание и чтение бинарного файла 128
14.8. Создание текстового файла 129
14.9. Добавление в текстовый файл 130
14.10. Чтение и запись в файл строк на русском языке 130
14.11. Посимвольное чтение текстового файла 130
14.12. Построчное чтение текстового файла 131
14.13. Чтение файла полностью 131
14.14. Отслеживание изменений в файловой системе 132
14.15. Получение короткого имени файла из длинного и наоборот 133

Глава 15. Сетевая информация и сетевые операции

135
15.1. Разбор URL на составляющие 135
15.2. Получение DNS-имени компьютера 136
15.3. Получение NetBios-имени компьютера 136
15.4. Получение имени хоста 136
15.5. Получение списка IP-адресов компьютера 136
15.6. Перечисление RAS-соединений 137
15.7. Отправка письма через SMTP 140
15.7.1. Отправка письма через SMTP с авторизацией 141
15.7.2. Отправка письма через Pickup-каталог 142
15.7.3. Задание кодировки сообщения 142
15.7.4. Отправка письма без использования System.Web.Mail 142
15.8. Получение списка сетевых дисков 146
15.9. Получение имени текущего пользователя 147
15.10. Программная имперсонация 147
15.11. Как получить список групп домена, в которые входит пользователь? 149
15.12. Получение файла из Интернета 150
15.13. Получение данных из Интернета 151
15.14. Получение Web-страницы 151
15.15. Использование прокси-сервера 152
15.16. Подключен ли компьютер к Интернету? 152
15.17. Как проверить, доступен ли компьютер в сети? 153
15.18. Как сделать ping? 155
15.19. Получение файла с FTP через WinInet-функции 156
15.20. Перечисление компьютеров в сети 159

Глава 16. Рабочий стол и панель управления

163
16.1. Что такое IWshRuntimeLibrary и Shell32? 163
16.2. Создание ярлыка 164
16.3. Как найти путь к папке автозапуска? 165
16.4. Регистрация меню запуска программы по расширению 165
16.5. Доступ к элементам панели управления 167
16.6. Как получить разрешение экрана? 168

Глава 17. Потоки

169
17.1. Запуск и остановка потоков 169
17.2. Отмена остановки потока 174
17.3. Изолирование данных потока 174
17.4. Права потоков 177
17.5. Идентификаторы потоков 178
17.6. Пул потоков 178
17.7. Синхронизация потоков 179
17.8. Синхронизация потоков: "один пишет, многие читают" 180
17.9. Использование AutoResetEvent 180

Глава 18. Процессы

183
18.1. Запуск внешних программ 183
18.2. Блокировка запуска второй копии программы 184
18.2.1. Вариант 1 184
18.2.2. Вариант 2 185
18.3. Информация о процессах 186
18.4. Определение всех процессов, использующих .NET 188
18.5. Перечисление всех оконных процессов 189
18.6. Запуск внешнего процесса и вывод результата на консоль (Windows NT) 189
18.7. Получение списка модулей, связанных с текущим процессом 191
18.8. Управление сервисами 192

Глава 19. Разное

195
19.1. Перечисление всех принтеров системы 195
19.2. Установка принтера по умолчанию 196
19.3. Определение версии операционной системы 196
19.4. Получение текущей даты и времени 197
19.5. Установка значения десятичного разделителя 197
19.6. Определение числа процессоров 198
19.7. Запись в системный журнал событий 198
19.8. Создание своего журнала событий 198
19.9. Как "отвязать" программу от журнала событий 200
19.10. Перечисление доступных журналов событий 201
19.11. Звуковой сигнал 202
19.12. Генерация случайного числа 202
19.13. Принудительная сборка мусора 203
19.14. Получение пути к папке Framework 203
19.15. Проигрывание WAV-файла 204
19.16. Чтение реестра 205
19.17. Разрешение обращения к реестру 206
19.18. Сохранение объекта в реестре 206
19.19. Определение типа файла по расширению 208
19.20. Создание GUID 209
19.21. Блокировка компьютера 210
19.22. Как создать COM-объект по GUID? 211
19.23. Почему уничтожается remoting-объект? 211
19.24. Ошибка SerializationException: "BinaryFormatter Version incompatibility" при использовании .NET Remoting 211
19.25. Использование Speech API 212

Глава 20. Регулярные выражения

217
20.1. Поиск совпадения 217
20.2. Поиск и получение совпавшего текста 218
20.3. Поиск с заменой 219
20.4. Разделение строки на слова 219
20.5. Разбор CSV-файла с учетом кавычек 220
20.6. Выделение макроимен 221
20.7. Изменение формата даты 222
20.8. Замена заголовка HTML-файла 222
20.9. Тестирование регулярных выражений 222
20.10. Примеры регулярных выражений 223
20.10.1. E-mail 223
20.10.2. Положительные десятичные числа 223
20.10.3. HTML-теги 223
20.10.4. HTML-теги с Java-привязкой 223
20.10.5. HTML-теги с атрибутами 224
20.10.6. Строки HTML-цветов 224
20.10.7. XML-теги (закрытые теги) 224
20.10.8. MAC-адрес 224
20.10.9. Имя макроса (формат @@имя@@) 225
20.10.10. Время 225

Глава 21. XML

227
21.1. Загрузка содержимого XML из файла 227
21.1.1. Вариант 1 227
21.1.2. Вариант 2 228
21.2. Загрузка содержимого XML из URL 228
21.3. Загрузка содержимого XML из строки 229
21.4. Обход всех элементов XML-файла 229
21.5. Поэлементное чтение XML-файла 230
21.6. Чтение атрибутов 231
21.7. Чтение всех атрибутов 231
21.8. Запись атрибутов 232
21.9. Запись данных в XML-файл 232
21.10. Запись комментариев в XML-файл 233
21.11. Запись пространства имен и префиксов в XML-файл 233
21.12. Запись в XML-файл со специальным форматированием 233
21.13. Выборка из XML с помощью XPath 234
21.14. Вычисление выражений с помощью XPath 235
21.15. Вычисление min и max с помощью XPath 235
21.16. Создание XPathDocument из строки 236
21.17. XSL-трансформация 236
21.18. XSL-трансформация с параметрами 237
21.19. Проверка файла с помощью XSD 238
21.20. В чем разница между InnerXml, OuterXml и InnerText? 240
21.21. В чем разница между Load и LoadXml класса XmlDocument? 241
21.22. Как добавить XmlNode из одного документа в другой? 241
21.23. Аналог простого ini-файла для хранения настроек 241
21.24. Работа с ini-файлами 242

Глава 22. Windows Forms

243
22.1. Сворачивание программы в трей 243
22.2. Как сделать форму, не видимую в панели задач? 244
22.3. Как скрыть главную форму при старте приложения? 244
22.4. Получение всех цветов в системе 244
22.5. Получение положения курсора мыши 245
22.6. Как отлавливать все исключения? 245
22.7. Как сделать обработчик для сообщений Win32? 246
22.8. Есть ли в C# аналог ProcessMessages из Delphi? 247
22.9. Проблемы с ImageList при использовании EnableVisualStyles 247
22.10. Как поменять фон MDI-окон? 248
22.11. Определение разрешения экрана 248
22.12. Определение рабочей области экрана без системного трея 248
22.13. Использование системного буфера обмена 248
22.14. Обработка изменения системных настроек (например, разрешения экрана) 249
22.15. Показ HTML на форме 250
22.16. Отображение подсказки из справочных файлов 250
22.17. Рисование без обработки события Paint 251
22.18. Как нарисовать точку? 251
22.19. Проверка на попадание в область 251
22.20. Вывод на консоль из приложения Windows Form 252
22.21. Использование автозавершения в текстовом поле 255

Глава 23. Базы данных

259
23.1. Что следует использовать для закрытия соединения — Close или Dispose? 259
23.2. Работа с файлами MS Access 259
23.3. Получение индекса объекта после добавления его в таблицу 260
23.4. Можно ли сделать GroupBy в DataSet? 261
23.5. Перечисление доступных SQL-серверов 261
23.6. Создание расширений MS SQL 2005 264

Глава 24. ASP.NET

267
24.1. Преобразование относительного пути в абсолютный 267
24.2. Управление буферизацией страниц 267
24.3. Управление кэшированием страниц 267
24.4. Перенаправление на другую страницу 268
24.5. Чем метод Server.Transfer отличается от метода Response.Redirect? 268
24.6. Перенаправление на другую страницу при исключении 269
24.7. Использование cookies 269
24.8. Установка фокуса на элемент управления 270
24.9. Просмотр исходного кода страницы 271
24.10. Открытие страницы по кнопке в новом окне 271
24.11. Обработка исключений на странице 271
24.12. Глобальная обработка исключений ASP.NET 272
24.13. Ссылка на файл для скачивания 274
24.14. Управление созданием обработчиков IHttpHandler 275
24.15. Сложная привязка данных с помощью DataBinder 276
24.16. Что плохого в использовании сессий? 277
24.17. Настройка хранения сессий 277
24.18. Передача между страницами значений серверного элемента управления 278
24.19. Как перехватить загрузку и сохранение ViewState? 280
24.20. Создание общей сессии между ASP- и ASP.NET-приложениями 280
24.21. Что такое AJAX? 280
24.22. Получение серверных данных без AJAX 287
24.23. Получение HTML-кода элемента 290
24.24. Печать страницы на принтер по умолчанию 291
24.25. Проблемы несовместимости браузеров 292
24.26. Быстрая генерация табличного представления Web-формы 292
24.27. Почему Page_Load вызывается два раза? 293
24.28. Получение пути к странице 293

Глава 25. MS Office, Internet Explorer

295
25.1. Получение данных со страницы MS Excel 295
25.2. Доступ к данным MS Excel 296
25.3. Работа с данными в буфере обмена в Excel-формате CSV 299
25.4. Как обойти проблемы с использованием объектов MS Office? 299
25.5. Как напечатать документ MS Office? 300
25.6. Формирование документов MS Excel и MS Word из ASP.NET 300
25.7. Работа с MS Office через DDE 302
25.8. Работа с календарем MS Outlook 302
25.9. Использование Word Spell Checker для проверки орфографии 303
25.10. Журнал истории Internet Explorer 308

Глава 26. WMI

311
26.1. Что такое WMI? 311
26.2. Работа с WMI на удаленной машине 311
26.3. Получение свойств видеоконтроллера и частоты обновления экрана 312
26.4. Получение информации о компьютере 313
26.5. Получение информации о производителе 314
26.6. Получение информации об операционной системе 315
26.7. Выполнение logoff, shutdown, reboot 320
26.8. Получение информации о рабочем столе 321
26.9. Определение типа компьютера 323
26.10. Определение физических параметров компьютера 324
26.11. Установка имени компьютера 328
26.12. Получение информации о процессорах 328
26.13. Получение списка общих файлов и каталогов 334
26.14. Создание и удаление общего каталога 335
26.15. Перечисление подключенных сетевых ресурсов 336
26.16. Получение информации о диске 337
26.16.1. Вариант 1 337
26.16.2. Вариант 2 338
26.17. Получение переменных окружения 338
26.18. Получение информации о загрузчике системы 339
26.19. Получение списка процессов 340
26.20. Получение списка запущенных и остановленных сервисов 341
26.21. Получение информации о разделах диска 342
26.22. Получение учетных записей локальной машины или домена 344
26.23. Получение списка групп локальной машины или домена 345

Глава 27. Работа с аппаратурой

349
27.1. Импортирование функций Setup API 349
27.2. Перечисление устройств 352
27.3. Получение состояния устройства 355
27.4. Программное отключение устройства 358
27.5. Отслеживание изменения аппаратной конфигурации 360
27.6. Перечисление устройств ввода с помощью функций Direct X 361
27.7. Чтение скан-кодов клавиатуры с помощью функций Direct X 362
27.8. Чтение данных с последовательного порта 363
27.8.1. Вариант 1 363
27.8.2. Вариант 2 366
27.8.3. Вариант 3 371

Глава 28. Изображения

373
28.1. Изменение размеров картинки 373
28.2. Доступ к пикселам изображения 374
28.3. Создание негатива изображения 374
28.4. Изменение цветовой матрицы изображения 375
28.4.1. Преобразование цветов изображения 375
28.4.2. Создание серого изображения 376
28.4.3. Создание "затемненного" изображения 377
28.5. Рисование блокированной кнопки 377
28.6. Создание серого оттенка цвета 377
28.7. Загрузка изображения из буфера обмена 378
28.8. Замена цвета в изображении 379
28.9. Преобразование значков в изображение 380
28.10. Создание графической экранной копии формы 380
28.10.1. Вариант 1 380
28.10.2. Вариант 2 381
28.11. Создание графической копии экрана 382
28.12. Изменение размера изображения 383
28.13. Создание пиктограммы 384
28.14. Анимированный GIF 385
28.15. Градиентная заливка 386
28.16. Исключение при установке прозрачного фона 386
28.17. Как нарисовать математическую формулу? 387
Приложение 1. Интернет-ресурсы 389
Приложение 2. Описание компакт-диска 391
Список литературы 401
Предметный указатель 403



241 руб.
в наличии*
ориентировочная дата отгрузки: 13.12.2016 (Вт.)
шт.
отложить

|



С этим товаром часто покупают...
Цена: 388 руб.