ifebo
Messages postés181Date d'inscriptionjeudi 10 mars 2005StatutMembreDernière intervention28 décembre 2006 26 févr. 2006 à 04:30
Bonjour, j'ai juste un problème que je n'imaginais même pas rencontrer. La page index.html de mon cd s'ouvre sans problème. Mais j'ai voulu créer un lien sur cette page qui permette l'exploration du CD ROM et je n'ai pas réussi à trouver la bonne syntaxe. Il faut tenir compte du fait que la lettre attribuée au lecteur peut varier d'un pc à un autre. quel est donc le code par défaut de ce lien qui ouvrirait le CD sans l'exécuter ? Merci de votre aide. Je suis certain que c'est tout simple, mais là je dois faire une sorte d'autisme sur le sujet ! A moins que ma machine ne fasse des siennes ? J'arrive parfaitement à lui faire ouvrir n'importe quel dossier du CD, mais pas le CD lui-même, comme lorsque l'on fait clic droit sur le CD et ouvrir.
PS : ma page index.html est à la racine du CD.
cs_jfrancois
Messages postés482Date d'inscriptionvendredi 26 août 2005StatutMembreDernière intervention 5 décembre 20092 26 août 2005 à 03:16
Pour lancer n'importe quel type de fichier, il suffit tout simplement de remplacer "open" (uniquement pour *.exe *.com *.bat *.pif) par "shellexecute" et Windows lancera le type de programme associé à l'extension du fichier !
Exemple :
[autorun]
icon=mon_icon.ico
shellexecute=page_web.htm
label=CD de démonstration
et Windows lancera l'application associée aux fichiers *.htm
ou
shellexecute=lisez-moi.txt
et Windows lancera l'application associée aux fichiers *.txt
ou
shellexecute=lisez-moi.doc
et Windows lancera l'application associée aux fichiers *.doc
...
"label=" permet de changer le texte qui apparaît dans l'explorateur au niveau du lecteur de CD.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 8 janv. 2005 à 14:37
Fais un dossier dans lequel tu as ShelExec.exe, sera juste un exe faisant un appel ShellExecute() sur ce qu'il aura en ligne de commande.
Dans le Autorun.inf tu mets par exemple:
[autorun]
OPEN=Autorun\ShelExec default.htm
voila comment c'est fait sur disk VS 2003.
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 8 janv. 2005 à 14:24
Salut:
Une Remarque je veux évoquer .Votre programme ne peut que lancer des programmes (*exe, *.com, *.bat , *.pif). Comment faire pour lancer un fichier *.TXT ou un fichier *.HTML.
Bonne Chance.
Nerolph
Messages postés58Date d'inscriptionvendredi 24 octobre 2003StatutMembreDernière intervention 4 septembre 2012 5 janv. 2005 à 13:44
Pour faire un Autorun qui lance de tout c'est facile :
À condition, bien sûr, que le fichier `mon.fichier' soit associé à un programme.
Et le programme C que nous a fait zoute06 se compile et se lance très bien sous Linux.
Dante41
Messages postés103Date d'inscriptionsamedi 13 mars 2004StatutMembreDernière intervention15 juillet 2009 2 janv. 2005 à 12:53
Plutot que de générer un autorun ne lancant que des exe, il aurait été interessant que ce programme génère des autoruns lancant de tout (des html, bmp, wav par exemple). Pour cela, ton générateur aurait pu créer un fichier executable appelé par autorun.inf, ce fichier executable aurait lancer ce fichier.
Il est clair que c'est compliqué de créer un executable mais bon...
Sinon ce programme est quand meme assez utile et bien réalisé.
Bon code
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 1 janv. 2005 à 23:44
Celui de Light Angel c'est du C et du C++ mélangé, comme ca on est tranquille...
zoute06
Messages postés2Date d'inscriptiondimanche 9 février 2003StatutMembreDernière intervention 1 janvier 2005 1 janv. 2005 à 23:24
A part que mon code cé du C pas du C++...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 1 janv. 2005 à 23:17
devrait aller mieux ainsi.
cs_Light Angel
Messages postés48Date d'inscriptiondimanche 9 mai 2004StatutMembreDernière intervention 1 janvier 2005 1 janv. 2005 à 22:48
Bon, pour vous faire plaisir :
#include <windows.h>
#include
using namespace std;
int main(int argc, char *argv[])
{
char pFile[255];
char pIcon[255];
cout << "***Générateur d'Autorun***\n\n";
cout << "Fichier à executer : ";
cin >> pFile;
cout << "Icone du CD : ";
cin >> pIcon;
cout << "\nGeneration du fichier en cour ...\n";
WritePrivateProfileString("Autorun", "open", pFile, "Autorun.inf");
WritePrivateProfileString("Autorun", "icon", pIcon, "Autorun.inf");
return 0;
}
Gendal67
Messages postés627Date d'inscriptionmercredi 16 juin 2004StatutMembreDernière intervention24 juillet 20112 1 janv. 2005 à 22:44
Oui, clair, il pourrait être judicieux de donner à la chaine pFile et pIcon, une +grande capacité je crois... ;-)
cs_Light Angel
Messages postés48Date d'inscriptiondimanche 9 mai 2004StatutMembreDernière intervention 1 janvier 2005 1 janv. 2005 à 22:44
perso, je voi pas ou est le problème dans ce bout de code. Sa s'appel allouer de l'espace mémoire ...
cs_Xs
Messages postés368Date d'inscriptionmercredi 14 novembre 2001StatutMembreDernière intervention 1 septembre 2008 1 janv. 2005 à 22:36
Light Angel >
"char *pFile = new char;
char *pIcon = new char;"
Je suis pas convaincu que ton code fonctionne :D
cordialement
cs_Light Angel
Messages postés48Date d'inscriptiondimanche 9 mai 2004StatutMembreDernière intervention 1 janvier 2005 1 janv. 2005 à 22:30
Tu t'enmerde la, fait comme sa :
#include <windows.h>
#include
using namespace std;
int main(int argc, char *argv[])
{
char *pFile = new char;
char *pIcon = new char;
cout << "***Générateur d'Autorun***\n\n";
cout << "Fichier à executer : ";
cin << pFile;
cout << "Icone du CD : ";
cin << pIcon;
cout << "\nGeneration du fichier en cour ...\n";
WritePrivateProfileString("Autorun", "open", pFile, "Autorun.inf");
WritePrivateProfileString("Autorun", "icon", pIcon, "Autorun.inf");
delete pFile;
delete pIcon;
return 0;
}
Vala, utilise les API Windows, c'est fait pour sa, surtout que la, il ne peut pas y avoir de problème de portabilité, paske des autorun ss Linux avec un .inf, j'en est pas vu des masse.
26 févr. 2006 à 04:30
PS : ma page index.html est à la racine du CD.
26 août 2005 à 03:16
Exemple :
[autorun]
icon=mon_icon.ico
shellexecute=page_web.htm
label=CD de démonstration
et Windows lancera l'application associée aux fichiers *.htm
ou
shellexecute=lisez-moi.txt
et Windows lancera l'application associée aux fichiers *.txt
ou
shellexecute=lisez-moi.doc
et Windows lancera l'application associée aux fichiers *.doc
...
"label=" permet de changer le texte qui apparaît dans l'explorateur au niveau du lecteur de CD.
8 janv. 2005 à 14:37
Dans le Autorun.inf tu mets par exemple:
[autorun]
OPEN=Autorun\ShelExec default.htm
voila comment c'est fait sur disk VS 2003.
8 janv. 2005 à 14:24
Une Remarque je veux évoquer .Votre programme ne peut que lancer des programmes (*exe, *.com, *.bat , *.pif). Comment faire pour lancer un fichier *.TXT ou un fichier *.HTML.
Bonne Chance.
5 janv. 2005 à 13:44
[AutoRun]
Open=explorer mon.fichier
Icon=mon_icone.ico
À condition, bien sûr, que le fichier `mon.fichier' soit associé à un programme.
Et le programme C que nous a fait zoute06 se compile et se lance très bien sous Linux.
2 janv. 2005 à 12:53
Il est clair que c'est compliqué de créer un executable mais bon...
Sinon ce programme est quand meme assez utile et bien réalisé.
Bon code
1 janv. 2005 à 23:44
1 janv. 2005 à 23:24
1 janv. 2005 à 23:17
1 janv. 2005 à 22:48
#include <windows.h>
#include
using namespace std;
int main(int argc, char *argv[])
{
char pFile[255];
char pIcon[255];
cout << "***Générateur d'Autorun***\n\n";
cout << "Fichier à executer : ";
cin >> pFile;
cout << "Icone du CD : ";
cin >> pIcon;
cout << "\nGeneration du fichier en cour ...\n";
WritePrivateProfileString("Autorun", "open", pFile, "Autorun.inf");
WritePrivateProfileString("Autorun", "icon", pIcon, "Autorun.inf");
return 0;
}
1 janv. 2005 à 22:44
1 janv. 2005 à 22:44
1 janv. 2005 à 22:36
"char *pFile = new char;
char *pIcon = new char;"
Je suis pas convaincu que ton code fonctionne :D
cordialement
1 janv. 2005 à 22:30
#include <windows.h>
#include
using namespace std;
int main(int argc, char *argv[])
{
char *pFile = new char;
char *pIcon = new char;
cout << "***Générateur d'Autorun***\n\n";
cout << "Fichier à executer : ";
cin << pFile;
cout << "Icone du CD : ";
cin << pIcon;
cout << "\nGeneration du fichier en cour ...\n";
WritePrivateProfileString("Autorun", "open", pFile, "Autorun.inf");
WritePrivateProfileString("Autorun", "icon", pIcon, "Autorun.inf");
delete pFile;
delete pIcon;
return 0;
}
Vala, utilise les API Windows, c'est fait pour sa, surtout que la, il ne peut pas y avoir de problème de portabilité, paske des autorun ss Linux avec un .inf, j'en est pas vu des masse.