Я не знаю ни одного встроенного или низкого уровня решения этой проблемы.
Если вам это действительно нужно функционально, я думаю, вам придется создать собственное вспомогательное приложение, которое позволит вам указать процесс и переставить его оконную кнопку на панели задач. Это может быть достигнуто, но требует некоторых знаний о Win32 и C++/C #.Я пробовал это в течение 30 минут (мой личный предел).
Вот что я сделал: Этот поток является идеальной отправной точкой: как получить процессы, которые имеют значок systray, пункт 6. Дает вам рабочее решение для устаревших (32-битных) версий Windows: инструмент для упорядочения оконных кнопок на панели задач. К сожалению, он не работает в 64-битных ОС и Windows 10.
Тем не менее, некоторые открытия, которые я сделал во время моего исследования с примером, предоставляют в 6: Чтобы найти панель задач в окне 10, используйте следующий код:
...
//IntPtr hToolbar = User32.FindWindowEx( hTask, IntPtr.Zero, "ToolbarWindow32", null ); xp +
IntPtr taskBarWnd = User32.FindWindowEx(hTask, IntPtr.Zero, "MSTaskListWClass", null);
Вам понадобится 64-битное определение структуры TBBUTTON:
[StructLayout(LayoutKind.Sequential)]
public struct TBBUTTON
{
public int iBitmap;
public int idCommand;
[StructLayout(LayoutKind.Explicit)]
private struct TBBUTTON_U
{
[FieldOffset(0)]
public byte fsState;
[FieldOffset(1)]
public byte fsStyle;
[FieldOffset(0)]
private IntPtr bReserved;
}
private TBBUTTON_U union;
public byte fsState { get { return union.fsState; } set { union.fsState = value; } }
public byte fsStyle { get { return union.fsStyle; } set { union.fsStyle = value; } }
public UIntPtr dwData;
public IntPtr iString;
}
Это должно дать вам хорошую отправную точку для решения по собственной инициативе.
Еще одной полезной отправной точкой может стать 7+ панель задач, которая имеет несколько очень удобных настроек панели задач (как следует из названия). 7+ TT также предлагает библиотеку, которая выполняет большую часть (черной) магии за вас, и может также служить сервером в качестве отправной точки для решения «сделай сам» (плюс она работает даже в Windows 1607). Взгляните на образец содержимого панели задач печати; AppId - хороший способ найти нужное окно кнопок панели задач / группу кнопок).
Удачи.
Обновить
С помощью 7+TT Lib ваша цель довольно проста.
Вот рабочий пример, который я сделал (в архиве содержится источник моего примера, а также двоичный файл в папке x64/Release, называемый taskbar_pusher, который должен работать с Windows 7 - 10 до последней версии v1709).
Вы должны указать AppId группы кнопок, которую вы хотели бы перенести на задний конец панели задач, как этот параметр командной строки:
./taskbar_pusher {1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\notepad.exe
Вы получаете AppId из CLI-вывода моего инструмента.
Вы должны быть в состоянии назвать это параметризацией таким образом с AHK (хотя я не очень знаком с AHK).
PS: у меня были некоторые проблемы с моей вторичной панелью задач, и поэтому отключил код для его обнаружения.