C#. Как определить состояние подключения к интернету
В библиотеке .NET нет функции для проверки состояния подключения к интернету. Для проверки состояния и получения некоторых настроек можно использовать функцию InternetGetConnectedState из библиотеки WINAPI. Эту функцию можно использовать для различных протоколов, типа: Gopher, FTP и HTTP. В использовании InternetGetConnectedState нет ничего сложного. Эта функция импортируется из библиотеки WININET и после использования возвращает True или [...]
Тест производительности кода C#
QueryPerformanceCounter — функция WinApi возвращающая значение высокоточного счетчика производительности. Такой инструмент полезен для тестирования производительности системы или ее отдельных элементов. Я написал класс, который основан на работе этой функции. Этот класс можно использовать для тестирования скорости работы кода ваших приложений с точностью до нескольких миллисекунд. Актуально при тесте кода, который выполняется меньше чем за секунду.
Альтернативные потоки данных NTFS с примером использования на C#
В системах семейства Windows NT есть малоизвестная функция, которая позволяет скрывать какую-либо информацию. Называется она альтернативные потоки данных NTFS (далее АПД). АПД позволяют добавить к любому файлу или папке информацию, которая будет не видна при обычном просмотре. Это обусловлено тем, что файл NTFS состоит из потоков данных и в обычных условиях вы видите только один, [...]
С++ против C#
Приветствую всех вас в новом году! Сегодня не будем нагружать голову кодом, а просто рассмотрим один интересный момент. С момента выхода библиотеки .NET, программист получил в свое распоряжение отличный инструмент разработки. Быстрое и простое создание программ, и относительно безопасная их работа в управляемой среде. Но вместе с этим мы получили то, что такие приложения стали [...]
C# Еще один вариант вставки текста во внешнее приложение (вариант 2)
Я когда-то писал статью о передаче текста во внешнее приложение. Там использовалась функция PostMessageW, которая посимвольно передавала текст в окно содержащее фокус ввода. Сейчас я покажу второй вариант, который кардинально отличается от первого.
Шаблон для SplashScreen с использованием функции UpdateLayeredWindoс
В предыдущей статье я писал об использовании шаблона формы «О программе». Такие шаблоны очень удобно использовать для написания программ. Библиотека быстрого доступа dbFacade к базе данных SQLite, также является шаблоном, который можно усовершенствовать и подогнать под конкретную программу. Такой подход существенно экономит время при разработке программы и уменьшает количество ошибок, т.к. код проверяется и «шлифуется» [...]
C# Вставка текста в «чужое» приложение. Вариант 1
Давно хотел написать программу, которая бы хранила заготовки и шаблоны текста, для быстрой вставки в другие приложения. Стандартными средствами .NET это сделать не удалось. В интернете тоже нет конкретной информации, которая бы четко и ясно ответила бы на этот вопрос. По крупицам собрав и разобрав различную информацию, опробовав кучу способов, я смог написать кое-что. Сегодня [...]
C# показываем окно в фоне
В C# существует ограничение на задание режима показа окна. В Visual Studio в свойстве формы TopMost можно установить только два значения. При этом форма при появлении будет всегда активна. Т.е. переведет на себя фокус ввода. Например, такая ситуация: приложение «висит» в трее и показывает всплывающие окна, типа таких, которые показывает ICQ при получении сообщения. Если [...]
Создаем форму с информацией о ходе выполнения действий
Часто встречаются ситуации, когда приложение долго выполняет какое-то действие. Если приложение не информирует пользователя и не подает никаких «признаков жизни», то пользователь может прервать его работу. Поэтому нужно как-то информировать пользователя, что приложение работает.

