Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

je but sur un lien relatif

7 réponses
Avatar
jean vandra
Bonjour,

j'ai fait un petit programme qui joue automatiquement une vid=E9o via la
lecteur windows media. il fonctionne, mais seulement en, lien absolu,
c'est a dire un lien depuis la racine C:. Mais moi je voudrais cr=E9er
un lien relatif depuis mon .exe Mais je n'y arrive pas.

Voici un petit sch=E9ma de l'organisation de mon dossier

Code :

Mon dossier projet -------------------->mon.exe
----------->dossier "video" ---->video.avi


donc voila depuis mon exe, il e faut rentrer dans un dossier video, et
ensuite lancer la "video.avi"

Voici comment j'ai fait :

Code :

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[])
{
system("start wmplayer.exe /play /close /fullscreen \"video\
\video.avi\"");

return 0;
}

voila et =E7a ne fonctionne pas par contre si je mets la video =E0 la
racine exemple :

Code :

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[])
{
system("start wmplayer.exe /play /close /fullscreen \"C:\\video.avi
\"");

return 0;
}



l=E0 le r=E9sultat est nickel auriez vous une id=E9e de la provenance de mo=
n
erreur ?

merci d'avance

7 réponses

Avatar
marc
On 9 oct, 08:34, jean vandra wrote:
Bonjour,

j'ai fait un petit programme qui joue automatiquement une vidéo via la
lecteur windows media. il fonctionne, mais seulement en, lien absolu,
c'est a dire un lien depuis la racine C:. Mais moi je voudrais créer
un lien relatif depuis mon .exe Mais je n'y arrive pas.




Il faut construire le lien absolu à partir de l'emplacement de ton
prog (avec GetModuleFileName)
Mais utiliser system + start, c'est archi-crade !
et ça plantera dès que wmplayer ne sera pas ou mal installé, sans
possibilité de gérer les retours d'erreur
il faut utiliser les apis natives énoncées dans un post précédent ( mci
est hyper simple !)
Avatar
jean vandra
On 9 oct, 09:13, marc wrote:
On 9 oct, 08:34, jean vandra wrote:

> Bonjour,

> j'ai fait un petit programme qui joue automatiquement une vidéo via l a
> lecteur windows media. il fonctionne, mais seulement en, lien absolu,
> c'est a dire un lien depuis la racine C:. Mais moi je voudrais créer
> un lien relatif depuis mon .exe Mais je n'y arrive pas.

Il faut construire le lien absolu à partir de l'emplacement de ton
prog (avec GetModuleFileName)
Mais utiliser system + start, c'est archi-crade  !
et ça plantera dès que wmplayer ne sera pas ou mal installé, sans
possibilité de gérer les retours d'erreur
il faut utiliser les apis natives énoncées dans un post précédent (mci
est hyper simple !)



euh oui, tu peux m'en dire un pue plus sur le GetModuleFileName ?
Avatar
marc
jean vandra a écrit :
> Il faut construire le lien absolu à partir de l'emplacement de ton
> prog (avec GetModuleFileName)
> Mais utiliser system + start, c'est archi-crade  !
> et ça plantera dès que wmplayer ne sera pas ou mal installé, sans
> possibilité de gérer les retours d'erreur
> il faut utiliser les apis natives énoncées dans un post précéde nt (mci
> est hyper simple !)

euh oui, tu peux m'en dire un pue plus sur le GetModuleFileName ?



c'est dans la doc : http://msdn.microsoft.com/en-us/library/ms683197(VS.85) .aspx
mais il ne faut pas appeler system, c'est pas "pro" ..
Avatar
jean vandra
On 9 oct, 13:35, marc wrote:
jean vandra a écrit :

> > Il faut construire le lien absolu à partir de l'emplacement de ton
> > prog (avec GetModuleFileName)
> > Mais utiliser system + start, c'est archi-crade  !
> > et ça plantera dès que wmplayer ne sera pas ou mal installé, sa ns
> > possibilité de gérer les retours d'erreur
> > il faut utiliser les apis natives énoncées dans un post précé dent (mci
> > est hyper simple !)

> euh oui, tu peux m'en dire un pue plus sur le GetModuleFileName ?

c'est dans la doc :http://msdn.microsoft.com/en-us/library/ms683197(VS.85 ).aspx
mais il ne faut pas appeler system, c'est pas "pro" ..




je veux bien , mais comment tu veux lancer un programme autrement
qu'avec la fonction system() ?
Avatar
marc
On 9 oct, 16:08, jean vandra wrote:

> > euh oui, tu peux m'en dire un pue plus sur le GetModuleFileName ?

> c'est dans la doc :http://msdn.microsoft.com/en-us/library/ms683197(VS. 85).aspx
> mais il ne faut pas appeler system, c'est pas "pro" ..

je veux bien , mais comment tu veux lancer un programme autrement
qu'avec la fonction system() ?



On ne lance jamais une appli par system, mais avec une des nombreuses
apis fournies par l'OS (ShellExecute, CreateProcess,)
Et pour jouer une vidéo, il n'y a donc pas besoin de lancer de
programme externe.
Avatar
jean vandra
On 9 oct, 16:36, marc wrote:
On 9 oct, 16:08, jean vandra wrote:

> > > euh oui, tu peux m'en dire un pue plus sur le GetModuleFileName ?

> > c'est dans la doc :http://msdn.microsoft.com/en-us/library/ms683197(V S.85).aspx
> > mais il ne faut pas appeler system, c'est pas "pro" ..

> je veux bien , mais comment tu veux lancer un programme autrement
> qu'avec la fonction system() ?

On ne lance jamais une appli par system, mais avec une des nombreuses
apis fournies par l'OS (ShellExecute, CreateProcess,)
Et pour jouer une vidéo, il n'y  a donc pas besoin de lancer de
programme externe.



Tu procède comment pour jouer une vidéo toi ?
Avatar
marc
On 12 oct, 08:23, jean vandra wrote:

Tu procède comment pour jouer une vidéo toi ?



N'importe laquelle des méthodes citées
MCI est le plus simple