Консольное приложение .NET 8.0 с ShowWindow(ThisConsole, MAXIMIZE)C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Консольное приложение .NET 8.0 с ShowWindow(ThisConsole, MAXIMIZE)

Сообщение Anonymous »

Код: Выделить всё

    [DllImport("user32.dll")]
static extern bool SetForegroundWindow(IntPtr hWnd);

[DllImport("user32.dll")]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);

[DllImport("kernel32.dll", ExactSpelling = true)]
static extern IntPtr GetConsoleWindow();

const int SW_RESTORE = 9;   // Restore window if minimized or not in normal state
const int SW_MAXIMIZE = 3;  // Command to maximize the window

class Program
{
static void Main(string[] args)
{
ConsoleManipulator consoleManipulator = new ConsoleManipulator();

// Bring the console window to the front
consoleManipulator.BringConsoleToFront();

// Maximize the console window
consoleManipulator.MaximizeConsole();

Console.ReadLine(); // Keep the console open to observe changes
}
}

// Method to bring the console window to the front
public void BringConsoleToFront()
{
IntPtr consoleWindow = GetConsoleWindow();
if (consoleWindow != IntPtr.Zero)
{
// First, restore the window if it’s minimized or not normal
ShowWindow(consoleWindow, SW_RESTORE);
Console.WriteLine("Console restored.");

// Bring to front
SetForegroundWindow(consoleWindow);
Console.WriteLine("Console brought to the front.");
}
}

// Method to maximize the console window
public void MaximizeConsole()
{
IntPtr consoleWindow = GetConsoleWindow();

if (consoleWindow != IntPtr.Zero)
{
ShowWindow(consoleWindow, SW_MAXIMIZE);  // Maximize the window
Console.WriteLine("Console maximized.");
}
else
{
Console.WriteLine("Failed to get console window handle.");
}
}
Я просто создаю консольное приложение с extern SetForegroundWindow, ShowWindow и GetConsoleWindow.
Когда я запускаю программу с показанным кодом, consoleManipulator. BringConsoleToFront() переносит консоль в начало моей Visual Studio, но MaximizeConsole() не может развернуть консоль. Консольное приложение остается без изменений с фактическими размерами высоты и ширины...

Подробнее здесь: https://stackoverflow.com/questions/790 ... e-maximize
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Консольное приложение .NET 8.0 с ShowWindow(ThisConsole, MAXIMIZE)
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • В чем причина того, что ShowWindow() не сработал?
    Anonymous » » в форуме C++
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • В чем причина того, что ShowWindow() не может развернуть окно?
    Anonymous » » в форуме C++
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • В чем причина того, что ShowWindow() не может развернуть окно?
    Anonymous » » в форуме C++
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Консольное приложение .NET 8 — HostApplicationBuilder — как получить доступ к службам после входа в приложение
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»