Прекращение подачи видеосигнала на дисплей

Категории: Программы, Разработка ПО
Тэги: , , ,

В связи с особенностями работы монитора при подключении второго источника изображения при активном первом, написал небольшую программку, которая посылает сообщение, прекращающее выдачу видеосигнала на дисплей. Сообщение идентично тому, что посылается при отключении дисплея в режиме PowerSaving.

За все отвечает системное сообщение WM_SYSCOMMAND с параметрами SC_MONITORPOWER и 2. LPARAM со значением 2 соответствует отключению дисплея. Значение параметра -1 – включает дисплей, 1 – вводит дисплей в режим Stand By (в основном актуально для ноутбуков).

Код получился крайне незамысловатый:

static class Program
{
    [DllImport("user32.dll")]
    static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
 
    static IntPtr SC_MONITORPOWER = new IntPtr(0xF170);
    const uint WM_SYSCOMMAND = 0x0112;
    static IntPtr MONITOR_OFF = new IntPtr(2);
    static IntPtr HWND_BROADCAST = new IntPtr(0xffff);
 
    [STAThread]
    static void Main()
    {
        SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF);
    }
}

Статьи Pietrek Matt о Structured и Vectored Exception Handling

Категории: Книжки, Разработка ПО
Тэги: , , , ,

Собрал две статьи Pietrek Matt в формате *.lrf для Sony Reader:

  1. Вся кухня перехвата исключительных ситуаций на уровне ядра Windows. A Crash Course on the Depths of Win32™ Structured Exception Handling. Не смотря на год опубликования – 1997, актуальности не потеряла: Pietrek Matt-SEH.lrf
  2. Про нововведения и дополнения в Windows XP. New Vectored Exception Handling in Windows XP: Pietrek Matt-VEH.lrf

Process Explorer и Windows Debugging Symbols

Категории: Программы, Разработка ПО
Тэги: , , , ,

Нередко для траблшутинга упавшего приложения пользовался WinDbg в паре с Process Explorer от Sysinternals. Однако сегодня узнал интересное, оказывается в Procerss Explorer можно прописать путь к папке с символами и указать адрес к Microsoft Symbol Server для оперативной подгрузки недостающих символов. Для этого в настройках в ‘Options->Configure Symbols…’ поле Symbols Path надо написать:

srv*C:\Windows\Symbols* http://msdl.microsoft.com/download/symbols

Вот так:

Сначала путь к локальной папке символов и потом адрес Symbol Server.

И теперь при просмотре свойств процесса во вкладке Threads становится видно что и где не отработало.

Joel Spolsky “User Interface for Programmers”

Категории: Книжки, Разработка ПО
Тэги: , , ,

Оформил книгу Joel Spolsky “User Interface for Programmers” в формате LRF для Sony Reader.

Кому актуально:

User Interface for Programmers.lrf

Обнвление Sketch in .NET Event Toaster

Категории: Программы, Разработка ПО
Тэги: , , , , ,

Обновился add-in для Microsoft Visual Studio 2005 Sketch in .NET Event Toaster.

Теперь вместо саморекламы в тайтле балуна будет отображаться имя собранной (или несобранной) сущности.

В случе солюшона – имя солюшона.

В случае проекта или файла – имя проекта.

Релиз доступен тут: http://www.codeplex.com/vspopuptoaster/Release/ProjectReleases.aspx?ReleaseId=14503

При обнаружении каких недоделок или багов пишите либо комментом, либо в Issuse Tracker сюда:

http://www.codeplex.com/vspopuptoaster/WorkItem/List.aspx