2012-08-05 70 views
3

我需要开发一个在Windows启动之前运行的软件。例如,Acronis TrueImage或其他映像或分区操作软件允许启动到备用环境,并且它们支持相当好的图形界面。如何开发在Windows启动之前运行的GUI程序?

我知道,一个可以开发的bootkit - 但开发漂亮的UI因为这需要工作的巨大数额。另一种方法是使用NT原生应用程序,但除了颜色有限之外,它也不支持任何类型的GUI。 Acronis或类似解决方案如何工作的任何想法?谢谢

+1

其中几个使用“Windows预安装环境”又名WinPE。 – 2012-08-05 00:58:35

+0

谢谢 - 这是我忘记提及的另一种方式。但显然,Acronis使用其他方法 - 仅仅因为您无法看到像Win PE一样的Windows加载。 Win PE对我来说主要的问题是加载时间太长 - 它的加载速度比主操作系统要慢得多。 – Isso 2012-08-05 03:02:41

+0

@Isso:通常,WinPE的加载速度相当快,肯定比Windows本身快得多。你是否想过什么时候从CD启动?我相信其他常见的方法是使用精心裁减的Linux或BSD发行版。 – 2012-08-05 21:06:21

回答

1

的Acronis实际上引导到从内存中运行Linux环境。 GUI由一些版本的XWindows提供,最可能使用帧缓冲设备。他们使用的UI工具包是Fox Toolkit,上次我查了一下。

当你离开它,它保暖靴机器启动到Windows操作系统。所以它只是另一个启动选项,而不是预启动选项。你也可以做同样的事情,但是创建一个真正的Linux系统并不容易。你也可以像上面提到的那样看待WinPE,但是有很多许可证。

0

首先,如果你正在写的是一个操作系统启动之前运行的程序,那么你就没有一个操作系统。所以忘掉“NT本地应用程序”之类的东西吧。

编写这样的程序是非常喜欢写DOS的程序。 DOS没有为图形,窗口或鼠标输入提供任何服务,或者没有提供任何服务(磁盘访问除外)。你以前必须自己做所有这些东西(这就是为什么DOS图形程序总是看起来有点不同)。有些工具包可以帮助构建图形界面,但我不知道这些工具是否仍然存在。

即使在今天,做所有你自己的图形界面,仍然有很多的工作。可能有一个或两个供应商仍然为这样的应用程序提供GUI工具包,但这类事情将非常罕见。目前只有分区编辑器和RAID控制器才需要这样的程序。

+0

图形BIOS固件设置时下风靡一时。但他不需要“没有操作系统”,他只需要引导可能需要修复的主要操作系统安装。 – 2012-08-05 01:00:24

+0

我同意NT本地应用程序严格来说不是“在OS之前启动”,但它允许对系统驱动器进行必要的修改,这就是为什么我提到它是一种潜在的方式。对不起,如果我不清楚。当然,显而易见的解决方案是从零开始构建GUI,但它确实有很多工作,并且考虑到市场上有许多类似的程序,我很肯定他们使用其他方法,仅仅是因为此类UI的开发可能需要比其软件的主要功能还要多。 – Isso 2012-08-05 02:59:57

相关问题