Como posso iniciar um programa antes mesmo de o Windows ser iniciado?

10

Eu sei que existem muitos aplicativos (como aqueles que gerenciam partições como Partition Magic, Lógica de Partição, Easeus, etc) que começam antes mesmo de o Windows começar a se carregar (o gerenciador de sessões, quero dizer).

Esses aplicativos são carregados, fazem o trabalho solicitado e "passam o token" para o Windows novamente. Como essas aplicações fazem isso? Existe uma maneira de fazer algo assim em um aplicativo?

    
por Diogo 15.06.2011 / 14:50

2 respostas

12

Este artigo Sysinternals explica a entrada de registro envolvida. Mas o aplicativo não pode usar qualquer uma das APIs de "subsistema" como Win32 (outras são as APIs POSIX e OS / 2). Ele deve usar a API "nativa" do NT em grande parte não documentada. A grande maioria dos aplicativos desenvolvidos para o Windows não são aplicativos de API nativos puros.

    
por 15.06.2011 / 15:39
2

How can I start a program even before Windows?

Acredito que você esteja fazendo a pergunta errada (neste caso, veja o menu Iniciar > inicialização ou msconfig).

No entanto, caso você realmente queira dizer o que você perguntou:

A que tipo de "programa" você estaria se referindo?

Você está se referindo a um sistema operacional diferente?
Veja o GRUB / GRUB2 / qualquer outro gerenciador de inicialização

Você está se referindo a um aplicativo do DOS (ou seja, algum tipo de inventário antigo / gerente de clientes)?
Você está usando win9x? Essa é a única situação em que um aplicativo do DOS faria sentido no que se refere ao 'carregamento antes do Windows'. Se você não estiver usando o win9x, provavelmente desejará fazer várias inicializações.

Você está se referindo a um aplicativo do Windows? (como na aplicação de espaço de usuário gráfico?)
A resposta simples é Não. (Você pode ter a inicialização junto com o Windows, mas não antes disso.)

Você está se referindo a iniciar automaticamente um serviço / daemon do Windows / algo que fica em segundo plano?
Certo; Basta configurá-lo para começar por padrão. ou seja, se já está definido como um serviço, vá no painel de controle > ferramentas administrativas > serviços.
Se ainda não estiver definido, você pode adicioná-lo .

Você está realmente se referindo a um 'programa' em execução antes do Windows (ou seja, windows xp / vista / 7)?
Você poderia, por favor, dar um exemplo de algo que precisaria fazer isso?
Diferente de carregadores de inicialização, software de criptografia de disco ou talvez ambientes de recuperação (por exemplo, GRUB, o gerenciador de inicialização do TrueCrypt ou qualquer um dos muitos tipos de software de recuperação).

    
por 15.06.2011 / 15:32