Incompatibilité shellexecute et jeu ?

Résolu
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009 - 19 août 2007 à 10:26
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 - 21 août 2007 à 08:09
Bonjour,
comme le titre l'indique j'ai un probleme avec shellexecute lorsque je lance un jeu. Je voudrais donc savoir si ma syntaxe est fausse ou si cela vien d'autre chose
(PS je tourne sous vista : pt etre le probleme ? :) )

shellexecute(handle,'open','explorer.exe', pchar('mon_adresse_du_jeu.exe'),nil,sw_show )

exemple de non fonctionnement : si je lance Halo, j'ai un message de halo me disant qu'il ne trouve pas un fichier config.txt
autre exemple : si je lance half life, le jeu ne se lance pas correctement (impossible de changer les mods)

Merci d'avance, bonne journée.

15 réponses

cincap Messages postés 460 Date d'inscription dimanche 5 décembre 2004 Statut Membre Dernière intervention 6 avril 2009 2
19 août 2007 à 12:45
Bonjour à toutes et à tous,

@ neil, pour lancer un exécutable, j'aurai fait ceci :

shellexecute(handle,'open', pchar('mon_adresse_du_jeu.exe'),nil,nil,sw_show )

@+,

Cincap
[url]mailto:/url
3
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
19 août 2007 à 19:36
procedure SExec(const ExeName, Params, Directory : string);
begin
  Shellexecute(0, 'open', pchar(ExeName), pchar(Params), pchar(Directory), SW_SHOW);
end;

petite fonction que j'utilise dans mon lanceur pour mes mmo.
3
cincap Messages postés 460 Date d'inscription dimanche 5 décembre 2004 Statut Membre Dernière intervention 6 avril 2009 2
20 août 2007 à 06:31
Bonjour à toutes et à tous,

il faudrait avoir le jeu sur ton pc et vérifier avec un double click si il se lance.

Il existe aussi la méthode avec winexec.

Je suis certain qu'avec ShellExecute c'est possible.

@ +,

Cincap

[url]mailto:/url
3
cs_Loda Messages postés 814 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 3
20 août 2007 à 09:14
salut,

regarde bien le raccoursit d'origine du Jeux. Il y a peut-être un parametre ou il appel un autre exe que celui que tu penses.

A+

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009
20 août 2007 à 14:57
heu la solution serai plutot :

ShellExecute(Handle , 'open'  , pchar(adresse_de_exe) ,nil, pchar(extractfilepath(adresse_de_exe)) , SW_SHOWNORMAL)

PS : je ne sais pas vrfaiment pk sa fonctionne ainsi mais cé pas l'essentiel pour le moment

Bonne journée
3
cincap Messages postés 460 Date d'inscription dimanche 5 décembre 2004 Statut Membre Dernière intervention 6 avril 2009 2
19 août 2007 à 20:32
Bonsoir à toutes et à tous,


@ Foxi, Très utile cette procédure, mais pour l'aperçut d'une photo avec un TopenDialog et une commande ShellExecute avec les paramètres de l'aperçut d'images et photocopies de Windows, cela ne fonctionnera pas.


@+,


Cincap

[url]mailto:/url
0
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009
19 août 2007 à 22:31
Bonjour,


merci d'avoir repondu si vite


cincap > j'ai deja essayer cette facon d'utiliser le shell (en fait cetait ma premier ''option'') mais meme resultat


Foxi > je vais tenter ta syntaxe

merci
0
cincap Messages postés 460 Date d'inscription dimanche 5 décembre 2004 Statut Membre Dernière intervention 6 avril 2009 2
19 août 2007 à 22:41
@ Neil, Pourtant, vérifies quand même ta syntaxe.

Je viens de faire cet essai :

shellexecute(handle,'open', pchar('C:\Program Files\Microsoft Office\Office10\winword.exe'),nil,nil,sw_show );

Et cela fonctionne sans problème.

@+,

Cincap

[url]mailto:/url
0
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009
19 août 2007 à 22:44
oki mais on sé pt etre mal compris, la syntace que j'utilise (et la tienn) fonctionne nickel pour tout les programme SAUF les jeu (ici l'exemple etait halo et half life)
0
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009
19 août 2007 à 22:45
desolé pour les fautes de frappes mais j'ai 10H de boulot ds les jambes et je suis un peu naze :(
0
cincap Messages postés 460 Date d'inscription dimanche 5 décembre 2004 Statut Membre Dernière intervention 6 avril 2009 2
19 août 2007 à 22:56
oui j'avais aussi essayé avec Winmine.exe qui est un jeu dans C:\Windows\system32\winmine.exe, et cela fonctionne.

Naturellement je ne sais pas quel est ton jeu particulier.

@+,

Cincap

[url]mailto:/url
0
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009
19 août 2007 à 23:17
d'accord mais malheureusement je ne peut pas voir avec ce jeu car il n'existe plus sous vista (en tout cas pas a cette adresse). Mais comme j'ai le meme probleme avec ta syntaxe, je vais lassé tombé, je pense k'il sagit d'un probleme particulier au jeu ''important'' et ke le shell ne pt etre utilisé dans cé condition
donc a moins que quelqu'un ait une autre solution je crois ke je laisse tombé

Merci et bonne journée / fin de soirée
0
cs_neil Messages postés 67 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 19 janvier 2009
20 août 2007 à 10:40
Probleme resolu !
merci à Loda qui s'il ne m'a pas donné la reponse exacte m'a permis de resoudre mon probleme.
En effet, le probleme venait du fait que les jeu demarre dans des dossiers specifique (ligne 'demarrer dans ' dans les raccourcis) donc il suffisait de donné en plus du chemin de l'exe le chemin de son dossier et voila.

solution > ShellExecute(Handle , 'open' , 'explorer.exe' , pchar(adresse_de_exe) , pchar(extractfilepath(adresse_de_exe)) , SW_SHOWNORMAL)

merci a tous de vos reponses
0
cincap Messages postés 460 Date d'inscription dimanche 5 décembre 2004 Statut Membre Dernière intervention 6 avril 2009 2
20 août 2007 à 16:34
Moi je n'ai pas compris pourquoi pour lancer un jeu, tu dois ouvrir explorer.exe ou autre alors qu'il suffit de vérifier le chemin de l'exe de ton jeu pour directement l'exécuter.

Enfin...

@+,

Cincap

[url]mailto:/url
0
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
21 août 2007 à 08:09
@Neil :

c'est pour ça que je t'avais mis ma fonction, pour que tu delcare le dossier de travail du programme ... mais j'ai dus surestimer ta comprehension du probleme en ne te fournissant pas plus d'indications.
0
Rejoignez-nous