Existe um exe "noop" -esque em algum lugar como parte da instalação do Windows? Estou preparando alguns trabalhos em lotes e tarefas agendadas e, por algumas razões, gostaria de fazer referência a um executável que não faz nada - ou seja, inicia sem janela visível e sai imediatamente.
Esse executável existe na instalação usual do Windows em algum lugar? ou como posso chegar perto? Não quero depender de nada ainda não incluído no Windows.
svchost.exe
não abre nada.rem
comando poderia ter funcionado (e, dependendo do local do arquivo em lote, possivelmente até a::
variante).Respostas:
Você pode usar
rundll32
:fonte
print.exe
programa simples que simplesmente imprima os parâmetros que são passados. Sem nenhum argumento seria não fazer nada , mas dando-lhe argumentos faz algo :> print foobar
.Significado especificamente um programa que se destina a fazer nada e mais nada? Sim e não. Não, pois o Windows não inclui um por padrão, mas inclui a capacidade de criar um você mesmo.
Opção 1
Execute o notepad.exe , digite as seguintes linhas e salve-o como
C:\ret.scr
(não esqueça a linha em branco):Compile-o com o debug.exe no prompt de comando ( cmd.exe ) com o seguinte comando:
Agora você tem um programa
ret.com
(em C: \) que pode ser usado em arquivos em lotes que não fazem absolutamente nada (bem, exceto sair, se isso conta).Nota :
debug
não está incluído em sistemas de 64 bits.opção 2
No Vista e versões posteriores, a estrutura .NET é incluída por padrão; portanto, você também pode criar um Windows nativo sem fazer nada
.exe
com C # ( compatível com 64 bits ):Execute o notepad.exe e digite as seguintes linhas, salvando-o como
C:\ret.cs
:Compile-o com o csc.exe no prompt de comando ( cmd.exe ) com o seguinte comando:
Agora você tem outro programa
ret.exe
(em C: \) que pode ser usado em arquivos em lotes que não fazem nada além de retornar.fonte
csc.exe
não estava no meu caminho, mas foi localizado naC:\Windows\Microsoft.NET\Framework\v3.5\csc.exe
main
função vazia pareça, ou pelo menos não deva ser mais que aret
, se você abrir um programa em um desmontador (ou mesmo um editor hexadecimal), verá que é muito, muito mais que isso. Geralmente, ele configura todos os tipos de segmentos (código, dados, etc.), prepara pilhas e pilhas, sem mencionar a importação de todos os tipos de funções e seqüências de caracteres, etc., mesmo que nunca os utilize de fato.Não há nenhum programa incluído no Windows (que eu saiba) que saia imediatamente quando executado (pelo menos de propósito).
No Windows Vista e versões mais recentes, no entanto, existe o utilitário timeout.exe .
Timeout.exe
esperará um número especificado de segundos e depois sairá. Por exemplo:Configurar
timeout.exe
para esperar por 0 segundos é o mais próximo possível de um EXE que sai imediatamente.fonte
cmd.exe
especificamente.Sem os parâmetros "C: \ Windows \ hh.exe" (executável da Ajuda em HTML da Microsoft®) não faz nada e é incluído em qualquer versão do Windows, eu acho.
fonte
wscript
sem argumentos não executa nenhum script e é um executável "GUI" (não abre um console).fonte
wscript /b
parece funcionar.Eu tentei
rndll32.exe
e,hh.exe
mas ambos não alteraram o% ERRORLEVEL%. É uma variável de ambiente que diz se o último executável foi bem-sucedido. Funciona como o código de retorno unix.Meu comando noop abaixo irá definir o% ERRORLEVEL% como zero é:
Apenas alterando o diretório de trabalho para o atual.
fonte
o comando
echo off
não faz nada em um arquivo em lotes (.BAT). Embora não seja um executável, é um comando interno do Windows.fonte
Compile um programa C ++ simples "Hello World" para criar um exe simples que saia imediatamente.
Salve o seguinte código em um arquivo de texto com algum nome como a.cpp:
Em seguida, compilá-lo com o compilador ÚLTIMAS C ++ como MinGW para Windows 7.
Em caso de MinGW, execute seguinte comando em PowerShell ou Command Prompt:
g++ path\a.cpp
(Supondo que você definiu variável PATH ambiental de g ++ localização binário ou você está em g ++ binário diretório ou seja, c : \ mingw \ bin por padrão). Após a execução do comando, você receberá a.exe, que exibirá Hello World e sairá. Verifique com um clique duplo ... A janela cmd aparecerá e desaparecerá imediatamente. O acesso à linha de comando exibirá Hello World e retornará você ao prompt da CLI.Em seguida, você pode mover esse a.exe no system32 ou em qualquer lugar dentro do Windows. Você pode até implementá-lo no disco de instalação do Windows.
fonte
Você pode escrever um no-op em C, assim
e compile-o em um arquivo .exe. Por exemplo, se você tiver o Visual Studio instalado, poderá abrir o bloco de notas, colar esse trecho, salvá-lo como noop.c e no prompt de comando, use
cl noop.c
e ele produzirá umnoop.exe
arquivo na mesma pasta.Você pode ou não ter que procurar a
Microsoft Visual Studio X.0
pastaProgram Files
primeiro e executarvcvarsall.bat
no prompt de comando.fonte
Embora não seja o objetivo principal desta ferramenta, você pode usar a opção / donothing do WuInstall - você também pode especificar um código de retorno que deve ser retornado - consulte http://help.wuinstall.com
fonte