seja bem vindo ao forum eof, caso nao seja cadastrado se cadastre para poder visualizar todo o conteudo ^^

Participe do fórum, é rápido e fácil

seja bem vindo ao forum eof, caso nao seja cadastrado se cadastre para poder visualizar todo o conteudo ^^
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Você não está conectado. Conecte-se ou registre-se

[tutorial] executando outro programa

3 participantes

Ir para baixo  Mensagem [Página 1 de 1]

1[tutorial] executando outro programa  Empty [tutorial] executando outro programa Ter Dez 04, 2012 2:04 pm

Kodo no Kami

Kodo no Kami
master
master

bom galera as vezes e necessario abrir outro programa atraves do nosso programa em c, para isso existe varios meios q pode depender do sistema operacional, um exemplo facil e usar o system da biblioteca stdlib.h e passar como argumento o local do arquivo (vou abrir a calculadora do windows q fica c:\windows\system32\calc.exe)

Código:
#include <stdlib.h>

int main(void)
{
    system("c:\\windows\\system32\\calc.exe");
}

o exemplo anterior e como se agente tivesse aberto o prompt e executado o programa por ele, agente tambem pode colocar um start antes do local do arquivo assim nao ficaria esperando ele ser finalizado

Código:
#include <stdlib.h>

int main(void)
{
    system("start c:\\windows\\system32\\calc.exe");
}

outra maneira e usar as API do sistema windows para executar, uma api bem usado e WinExec porem essa api nao tem nos sistemas mais novos, para usar ela basta passar como argumento o local e depois o comando caso tenha, para agente usar ele tem q declarar windows.h tambem

Código:
#include <windows.h>

int main(void)
{
    WinExec("start c:\\windows\\system32\\calc.exe",0);
}

outro api do sistema windows e ShellExecute, essa api agente vai passar como argumento 0 (aqui seria a janela), no segundo argumento e "open" (aq e açao por exemplo abrir explorar etc), no terceiro argumento e o local do arquivo, no quarto argumento seria o comando q agente passa como paramentro caso nao tenha coloque um 0 ou NULL, no quinto argumento eu nao faço ideia '-' (coloque um 0 tambem), e o ultimo argumento colocamos como a janale vai aparecer (minimizada, maximimizada, oculta etc), nessa api tambem tem q declarar windows.h


Código:
#include <windows.h>

int main(void)
{
    ShellExecute(0,"open","c:\\windows\\system32\\calc.exe",0,0,SW_NORMAL);
}

para terminar agora vamos ver outro metodo q e o CreateProcess q tambem fica na biblioteca windows.h, nesse agente vai ter q fazer um pouco mais de coisas doq o anterior, para começar temos q declarar duas estruturas STARTUPINFO e PROCESS_INFORMATION, depois usamos a funçao CreateProcess e passamos como argumento o local do arquivo, o comando de paramentro, mais 3 argumentos q agente vai colocar 0 nos 3 (nao vou me aprofundar muito nisso), o proximo seria como a thread vai iniciar (pausada etc, coloque 0 aqui tambem lol ), depois nos dois dois proximo argumento 0 '-', para terminar agente passa o endereço de memoria da estrutura STARTUPINFO e no proximo argumento o do PROCESS_INFORMATION e pronto u.u

Código:
#include <windows.h>

int main(void)
{
    STARTUPINFO si = {0};
    PROCESS_INFORMATION pi = {0};

    CreateProcess("c:\\windows\\system32\\calc.exe",0,0,0,0,0,0,0,&si,&pi);
}

o exemplo anterior tem 7 zero entre o local e a primeira estrutura '-'

by hacker fts315

https://endoffile.umforum.net

Sun Tzu

Sun Tzu
colaborador
colaborador

Estava procurando por isso valeu (:

Sir.Rafiki

Sir.Rafiki
avançado
avançado

lembrando que as vezes os anti-virus impedem alguns comandos rs', mas é isso ai mano \0__0/

Conteúdo patrocinado



Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos