Как заставить приложение отображаться в полноэкранном режиме, закрывая меню "Пуск"?

Я занимаюсь разработкой приложения для Honeywell Dolphin 6100, мобильного компьютера со сканером штрих-кода, который использует Windows CE 5.0, например, ОС.

Проблема в том, что я не могу перевести приложение в полноэкранный режим (меню "Пуск" под экраном требует отображения), я пробовал много кодов, как показано ниже, но, к сожалению, безуспешно:

Решение 1:

int w = Screen.PrimaryScreen.Bounds.Width;
int h = Screen.PrimaryScreen.Bounds.Height;
this.Location = new Point(0, 0);
this.Size = new Size(w, h);

Решение 2:

this.TopMost = true;
this.FormBorderStyle = FormBorderStyle.None;
this.WindowState = FormWindowState.Maximized;

У кого-нибудь есть решение для этого?

2 ответа

Решение

Вы можете автоматически скрыть панель задач, перейдя Start->Settings->Taskbar and Start Menu... и отмените выбор Always on top и выберите Auto hide,

Если это не вариант, есть опасный способ предотвратить explorer.exe от загрузки во время процесса загрузки. Чтобы это работало [HKEY_LOCAL_MACHINE\init] не должен быть защищен от записи. Предотвращать explorer.exe при загрузке вы изменяете следующий ключ реестра

[HKEY_LOCAL_MACHINE\init]
Launch50="explorer.exe"

например no_explorer.exe, 50 в Launch50 будет варьироваться в зависимости от устройства.

Если вы запутались здесь, вам понадобится доступ telnet к вашему устройству, чтобы вы могли загрузиться explorer.exe вручную или способ возврата к заводским настройкам устройства. Рекомендуется, чтобы у вас был способ восстановить заводские настройки устройства, прежде чем пытаться это сделать. Важно отметить, что ваше приложение должно быть запущено с панели запуска OEM или путем добавления вашего собственного приложения в процесс загрузки устройства. См. http://msdn.microsoft.com/en-us/library/ms901773.aspx для получения информации о том, как это сделать.

Редактировать: если вы идете по пути добавления приложения в процесс загрузки, вам нужно сообщить системе, что приложение запущено. Вы могли бы сделать простой загрузчик в C++ для достижения этой цели.

#include "stdafx.h"
#include <Windows.h>
#include <iostream>

void StartMyAppFunction();


int WINAPI WinMain(HINSTANCE hInstance,
                   HINSTANCE hPrevInstance,
                   LPTSTR    lpCmdLine,
                   int       nCmdShow)
{
    StartMyAppFunction( );
    // Since this is application is launched 
    // through the registry HKLM\Init we need 
    // to call SignalStarted passing in 
    // the command line parameter
    SignalStarted(_wtol(lpCmdLine));
    return 0;
}

void StartMyAppFunction() ...

Используйте некоторую технику для auto-hiding task bar (Какой вариант уже присутствует в control panel WinCE. Вы можете сослаться на это).

Автоскрытие панели задач = полноэкранное приложение..:)

Другие вопросы по тегам