Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Andre Summers

Chamar EXE através de link dentro de um EXE

Recommended Posts

Tenho algumas animações e um sistema dentro de um CD ROM em formato EXE. Gostaria que fosse possivel chamar qualquer um deles através de um novo EXE com links. Como proceder?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenho algumas animações e um sistema dentro de um CD ROM em formato EXE. Gostaria que fosse possivel chamar qualquer um deles através de um novo EXE com links. Como proceder?

 

Olá Andre,

 

para você chamar um outro EXE no flash, você terá que criar uma pasta chamada fscommand na raiz de seu projeto, dentro desta pasta criada você insere os EXE que serão chamados.

Depois no action do botão que vai chamar o arquivo EXE você digita o seguinte código:

 

on (release) {
      fscommand("exec", "nome_do_arquivo.exe");
}

Espero que tenha ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

To fazendo assim.

 

No botão:

on (release) {
	var tema = "quiz_onibus.exe";
	gotoAndPlay("saindo");
}

Então ele vai para o frame saindo, roda uma animação e então no ultimo frame vêm isso:

stop ();
onEnterFrame = function() {
	fscommand("exec", tema);
}

Mas ele pára no ultimo frame do index e não faz mais nada. Preciso que abra o outro arquivo por cima dele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dica: Evite utilizar ações diretamente nos objetos, prefira instanciar seus objetos (botões) e aplicar as funções em um quadro chave na timeline principal.

 

No seu caso, a variável "tema" não chegará até o frame desejado porque está como uma variável de função, e só poderá ser utilizada dentro da mesma. Declare a variável fora da função para que ela fique disponível em toda a Timeline, ex:

var tema:String = "arquivo.exe";
instancia_botao.onRelease = function() {
	gotoAndPlay("rotulo_frame");
};

E no frame alvo, execute a ação desejada (fscommand) - Outro detalhe, após utilizar o "onEnterFrame" e executar a ação desejada, você deve deletar o comando para não ficar em "loop". E também poderá fechar a janela atual quando solicitar a abertura de uma nova se preferir.

 

Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dica: Evite utilizar ações diretamente nos objetos, prefira instanciar seus objetos (botões) e aplicar as funções em um quadro chave na timeline principal.

 

No seu caso, a variável "tema" não chegará até o frame desejado porque está como uma variável de função, e só poderá ser utilizada dentro da mesma. Declare a variável fora da função para que ela fique disponível em toda a Timeline, ex:

var tema:String = "arquivo.exe";
instancia_botao.onRelease = function() {
	gotoAndPlay("rotulo_frame");
};

E no frame alvo, execute a ação desejada (fscommand) - Outro detalhe, após utilizar o "onEnterFrame" e executar a ação desejada, você deve deletar o comando para não ficar em "loop". E também poderá fechar a janela atual quando solicitar a abertura de uma nova se preferir.

 

Abs.

 

Como eu deleto o comando para evitar o loop?

 

Como fechar a janela? Devo usar fscommand("quit"); antes de chamar o proximo EXE?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para evitar o loop, assim que a retorno esperado for verdadeiro, basta usar o "delete" em seguida as ações para o fscommand, mas antes de fechar a janela atual, abra a nova, ex:

 

onEnterFrame = function () {
	if (tema != null) {
		delete onEnterFrame;
		fscommand("exec", tema);
		fscommand("quit", "");
	}
};

Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.