Executa programa de 16 bits em 64 bits da máquina sem dosbox

0

Existe um programa que você pode digitar na linha de comando ou terminal com um conjunto de parâmetros para executar um programa de 16 bits? Por exemplo: "run16bitprogram.exe 'path / to / program / test.exe'" e apenas mostra o que o programa faz no console.

Se houver tais programas, eu gostaria que eles fossem de plataforma cruzada, se possível.

Aqui está uma imagem de exemplo do dosbox executado a partir de Java:

Aquiestáoarquivodeconfiguração:

Aqui está o código do java (o ProcessBuilder nem sequer abriu o DOSBox):

Runtime.getRuntime().exec(new String[] { "C:/Program Files (x86)/DOSBox-0.74/DOSBox", "-conf \"C:/Users/Braden Steffaniak/Documents/GitHub/Workspace/ArrowIDE/res/assembly/new.conf\"", "-noconsole" });

O comando -noconsole funciona, mas se eu adicionar qualquer parâmetro -c, ele não fará nada.

Se eu digitar o comando no prompt de comando, ele funcionará como eu esperava.

    
por Braden Steffaniak 08.01.2013 / 01:21

2 respostas

1

Definitivamente, não é possível no Windows, consulte o seguinte artigo do MSDN: link

Qualquer ferramenta que permita executar um prog de 16 bits em um sistema Windows de 64 bits precisa emular um sistema, que é o que o DOSbox faz.

Os seguintes trabalhos:

public class DosBoxCaller {
    public static void main(String[] args) {
        ProcessBuilder pb = new ProcessBuilder(
                "C:\Program Files\DOSBox-0.74\DOSBox.exe",
                "-conf C:\Users\Y\dosbox.conf");
        pb.directory(new File("C:\Users\Y"));
        pb.redirectErrorStream(true);
        try {
            Process p = pb.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Se isso não chamar o DOSBox para você, provavelmente você está errando o caminho e simplesmente ignorando a exceção que está sendo lançada. Verifique também se a sua opção conf é válida e use uma cópia modificada da configuração completa do dosbox (que pode ser encontrada na pasta do usuário \ Application Data \ Local \ DosBox, copie-a para sua pasta favorita e edite o autoexec).

    
por 08.01.2013 / 01:27
0

Existe um emulador que pode executar programas DOS de linha de comando simples no Windows x64. É chamado "MS-DOS Player for Win32-x64". A fonte é fornecida, então, em teoria, você pode implementar a funcionalidade ausente.

link

    
por 11.01.2013 / 16:30