Você pode enviar comandos de tecla de função para o DOS a partir de um arquivo de lote?

3

Eu sou novo em arquivos em lote e preciso escrever um para um programa que é executado no DOS. Uma das perguntas no prompt requer um comando de tecla de função (ou seja, F1, F2, etc.).

Eu li um artigo que diz que você não pode enviar teclas de função ou combinações de teclas alt + no DOS. Embora eu também tenha leia um artigo que diz que o "Código estendido especial" para teclas de função é o seguinte:

F1: 0;59
F2: 0;60
etc...

Então, minha pergunta é: você pode enviar comandos de teclas de função para o DOS? Se sim, qual é a melhor maneira de fazer isso?

    
por megantb 22.08.2011 / 18:34

1 resposta

1

Veja o exemplo do seu link

@ECHO OFF
REM     Reassign F1 to list current directory
REM     Reassign F10 to give DOS version

ECHO ←[0;59;"DIR/w/p";13p
ECHO ←[0;68;"VER";13p

REM     Now Put a menu on the Screen in Bright Yellow
CLS
ECHO ←[1;33m
ECHO ←[12;20HF1                   List Current directory
ECHO ←[14;20HF10                  Print DOS Version Number

REM     Reset display to normal
ECHO ←[0m

(note ← significa o caractere Escape, digitado usando Ctrl + P e Esc dentro do comando DOS EDIT ou comando do Windows -prompt EDIT command)

Você perguntou

So my question is, can you send function key commands to DOS?

Se o exemplo funcionar, sim você pode. Você pode, de fato, estar executando o Windows e não o DOS, o que pode mudar as coisas. Você pode explicar o que aconteceu quando você tentou o arquivo de lote acima?

Quando você escreve "enviar comandos de tecla de função", pode ter algo diferente em mente. Se assim for, seria útil para você explicar o que você deseja alcançar com um pouco mais de detalhes.

If so, what is the best way to do this?

Eu não sei, mas o método no artigo parece razoável (se limitado em aplicabilidade).

    
por 22.08.2011 / 19:15