begin process at 2012 05 30 12:57:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

API

 > 

__ShellExecute__


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

__ShellExecute__

mardi 7 janvier 2003 à 21:50:12 | __ShellExecute__

petronius

Bonsoir, j'essaie de lancer un prog externe depuis un launcher, et
HEEEEEEEEELLLLLLLLLLPPPPPPPPPPPPPPEEEEEEEEUUUUUUUUU !!!!!!!!!!!!!!!
je n'arrive a le lancer autrement qu'en mettant le chemin complet, alors si je veut changer quoique ce soit...

sur ce, bon code.

--
Goggam Right It's A Beautiful Day
mercredi 8 janvier 2003 à 11:43:57 | Re : __ShellExecute__

vieuxLion

la manière officielle de lancer un prog est par CreateProcess
voici une adaptation de l'exemple dans la Doc MSDN :

#include<windows.h>
#include<string>
#include<iostream>
using namespace std;

void main()
{
string prog;
cout << "donner le prog : ";
cin >> prog;

STARTUPINFO si;
PROCESS_INFORMATION pi;

ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );

// Start the child process.
if( !CreateProcess( NULL, // No module name (use command line).
(LPSTR)prog.c_str(), // Command line.
NULL, // Process handle not inheritable.
NULL, // Thread handle not inheritable.
FALSE, // Set handle inheritance to FALSE.
0, // No creation flags.
NULL, // Use parent's environment block.
NULL, // Use parent's starting directory.
&si, // Pointer to STARTUPINFO structure.
&pi ) // Pointer to PROCESS_INFORMATION structure.
)
{
cout << "CreateProcess rate.";
}

// Wait until child process exits.
WaitForSingleObject( pi.hProcess, INFINITE );

// Close process and thread handles.
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
}




-------------------------------
Réponse au message :
-------------------------------

> Bonsoir, j'essaie de lancer un prog externe depuis un launcher, et
> HEEEEEEEEELLLLLLLLLLPPPPPPPPPPPPPPEEEEEEEEUUUUUUUUU !!!!!!!!!!!!!!!
> je n'arrive a le lancer autrement qu'en mettant le chemin complet, alors si je veut changer quoique ce soit...
>
> sur ce, bon code.
>
> --
> Goggam Right It's A Beautiful Day
mercredi 8 janvier 2003 à 15:25:50 | Re : __ShellExecute__

petronius

Oui certe cela dit ici aussi il y a un pb : je cherche a executer un prog situé dans un repertoire (par exple celui de l'exe)automatiquement mais j'aimerais pouvoir copier le rep autre part, sans avoir a spécifier le nom ou l'adresse... je cherche donc comment mettre le chemin relatif et pas le chemin absolu...

merci d'avance


-------------------------------
Réponse au message :
-------------------------------

> la manière officielle de lancer un prog est par CreateProcess
> voici une adaptation de l'exemple dans la Doc MSDN :
>
> #include<windows.h>
> #include<string>
> #include<iostream>
> using namespace std;
>
> void main()
> {
> string prog;
> cout << "donner le prog : ";
> cin >> prog;
>
> STARTUPINFO si;
> PROCESS_INFORMATION pi;
>
> ZeroMemory( &si, sizeof(si) );
> si.cb = sizeof(si);
> ZeroMemory( &pi, sizeof(pi) );
>
> // Start the child process.
> if( !CreateProcess( NULL, // No module name (use command line).
> (LPSTR)prog.c_str(), // Command line.
> NULL, // Process handle not inheritable.
> NULL, // Thread handle not inheritable.
> FALSE, // Set handle inheritance to FALSE.
> 0, // No creation flags.
> NULL, // Use parent's environment block.
> NULL, // Use parent's starting directory.
> &si, // Pointer to STARTUPINFO structure.
> &pi ) // Pointer to PROCESS_INFORMATION structure.
> )
> {
> cout << "CreateProcess rate.";
> }
>
> // Wait until child process exits.
> WaitForSingleObject( pi.hProcess, INFINITE );
>
> // Close process and thread handles.
> CloseHandle( pi.hProcess );
> CloseHandle( pi.hThread );
> }
>
mercredi 8 janvier 2003 à 17:22:02 | Re : __ShellExecute__

vieuxLion


pas de problème pour moi .
Avec ce code, on peut taper au prompt :

mon.exe (même rep)
ssrep/mon.exe (sous répertoire)
..\mon.exe (répertoire racine)
dynamiquement ... du chemin relatif Quoi !

-------------------------------
Réponse au message :
-------------------------------

> Oui certe cela dit ici aussi il y a un pb : je cherche a executer un prog situé dans un repertoire (par exple celui de l'exe)automatiquement mais j'aimerais pouvoir copier le rep autre part, sans avoir a spécifier le nom ou l'adresse... je cherche donc comment mettre le chemin relatif et pas le chemin absolu...
>
> merci d'avance
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > la manière officielle de lancer un prog est par CreateProcess
> > voici une adaptation de l'exemple dans la Doc MSDN :
> >
> > #include<windows.h>
> > #include<string>
> > #include<iostream>
> > using namespace std;
> >
> > void main()
> > {
> > string prog;
> > cout << "donner le prog : ";
> > cin >> prog;
> >
> > STARTUPINFO si;
> > PROCESS_INFORMATION pi;
> >
> > ZeroMemory( &si, sizeof(si) );
> > si.cb = sizeof(si);
> > ZeroMemory( &pi, sizeof(pi) );
> >
> > // Start the child process.
> > if( !CreateProcess( NULL, // No module name (use command line).
> > (LPSTR)prog.c_str(), // Command line.
> > NULL, // Process handle not inheritable.
> > NULL, // Thread handle not inheritable.
> > FALSE, // Set handle inheritance to FALSE.
> > 0, // No creation flags.
> > NULL, // Use parent's environment block.
> > NULL, // Use parent's starting directory.
> > &si, // Pointer to STARTUPINFO structure.
> > &pi ) // Pointer to PROCESS_INFORMATION structure.
> > )
> > {
> > cout << "CreateProcess rate.";
> > }
> >
> > // Wait until child process exits.
> > WaitForSingleObject( pi.hProcess, INFINITE );
> >
> > // Close process and thread handles.
> > CloseHandle( pi.hProcess );
> > CloseHandle( pi.hThread );
> > }
> >
>


Cette discussion est classée dans : lancer, shellexecute


Répondre à ce message

Sujets en rapport avec ce message

URGENT!!! appli dos lancer par interface visual c++ avec param [ par olivier ] Comment puis je lancer une appli dos qui prend une ou trois chaines de caracteres comme parametre grace a une interface graphique en visual c++.Merci Recherche comment recuperai les variables (options) qui ont lancer mon programme [ par Cybmat ] SAlut je fait qu cpp que depuis moin d'un moiset ej cherche comment on fait pour connaitres les options ki ont lacer mon programe ( ex : pro.exe -cons Chemin d'accés [ par Juan-Marco ] Bonjour,Je ne comprend pas. Sur ce site, j'ai appris à utiliser ShellExecute mais le problème c'est au niveau du chemin ShellExecute(NULL, "op Salut je voudrai savoir comment faire pour lancer une appl. en C/C++ [ par jarodx64 ] comment faire pour lancer une application en C/C++ sur : - Win32: j'ai commencer un programme et je voudrai lancer une application externe Win16/32 (m lancer un executable en c/c++ [ par james ] j'aimerai lancer un autre programme a partir de mon programme.comment faire? Lancer une thread intraclasse [ par rudyg ] Salut tout le monde,depuis une methode de classe, je souhaite lancer une thread faisant appel a une AUTRE methode de la meme classe.Ex:void kernel::La lancer un fichier??? [ par asik38 ] je voudrais lancer un fichier à partir de mon prog juste en cliquant sur un bouton?Comment faire sans utiliser opendialog (qui ne fait pas en seul cli lancer une commande systeme sur un unix [ par Sioban ] Je souhaite lancer un commande systeme de type un "ls -l nom_du_fichier.dat" sur un serveur unix via mon PC(XP). (Pour avoir le nombre de ligne de cer lancer un programme [ par rodrigos ] Je suis débutant en c++ et j'utilise visual c++:J'aimerai savoir comment on peut lancer un programme avec ou sans paramètres depuis mon appli.Merci Po prog parent / fils [ par aviona ] Bonjour,Je cherche à réaliser un prog qui permet le lancement d'un autre prog (jusqu'à la je sais faire) mais qui garde la main dessus.ex : - lancer n


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,218 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales