GÉNÉRATEUR DE DOCUMENTATION (LIB POUR RÉFLECTION ET XMLDOC)

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 - 8 nov. 2007 à 19:00
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 11 nov. 2007 à 15:44
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/44645-generateur-de-documentation-lib-pour-reflection-et-xmldoc

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 nov. 2007 à 15:44
La méthode RuntimeEnvironment.GetRuntimeDirectory devrait t'intéresser alors.
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
11 nov. 2007 à 15:28
oops j'y pense pour lunix justement ya une autre chemin en dur ! :D (celui du framework, je corrige ca rapidos)

en fait un tit fichier de config +fera l'affaire je crois !
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
11 nov. 2007 à 15:25
oui l'avantage avec path combine c'est qu'il gère lui meme le séparateur de dossier

Path.Combine("c:", "toto") --> "c:\toto"
Path.Combine("c:", "toto") --> "c:\toto"

Oui je met ton code de coté ;)

A+
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
11 nov. 2007 à 13:39
conait pas dsl, faudrait que j'y jette un oeil, bon évidament aprés je le récupére, lol :D
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
10 nov. 2007 à 23:10
Sinon la méthode Path.Combine est sympa aussi hein ;-)
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
8 nov. 2007 à 20:55
oki, mais garde mon bou de code sous le coude cela fonctionne aussi bien comme ça mais on voit plus "large" lol
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
8 nov. 2007 à 20:45
C'est un projet en cours, j'ai pas trop le temps alors j'ai juste fait en sorte que ca tourne. $
Je compte m'y remettre car j'en aurais besoin d'ici quelques temps. (Une vrai appli Winform qui marche et tout...)

Pour l'instant, faut plus le voir comme une resource. Des p'tits libs pour des projets plus finis.


A+
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
8 nov. 2007 à 20:14
Et normaly comme ça cela marche a tout les coup lol :D
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
8 nov. 2007 à 20:13
En fait, maitre capelo la reponse est :
mettre la feuille de style a coté de l'exe et dans le code remplaceé les lignes avec D: .. par :

//Chemin racine d'ou est lancer l'exe, fonctionne aussi avec un directoryinfo(Application.ExecutablePath
string DirApp = Application.StartupPath + System.IO.Path.DirectorySeparatorChar;

// Chemin vers le template html et la feuille de style

string PATH_TEMPLATE = DirApp + "ClassTemplate.htm";

string PATH_STYLESHEET = DirApp+ "style.css";



// Chemin du répertoire de génération

string PATH_TARGET_FOLDER = DirApp + "_Test_DOC_GEN";
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
8 nov. 2007 à 20:07
Ha mince :-)
Je testerai ce week-end donc si j'ai le temps. Et je tâcherai de passer la source un peu moins en diagonale la prochaine fois :D
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
8 nov. 2007 à 19:40
En fait cela vas même plus loin car tu as ecraser ton environment avec le chemein absolu, la aussi en general j'utilise l'équivalent C# du code vb My.Application.Info.DirectoryPath
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
8 nov. 2007 à 19:36
C'est vraix que c'est dommage, car du coup tu n'as pas penser a linux ou d'autre plateforme, en général, j'utilise environmen.newline et getpathseparator pour palier a cela, c'est une question d'habitude lol.
Bon juste pour le fun, avec mono comme tu voit il y a un pb de path separator :

Unhandled Exception: System.IO.FileNotFoundException: Could not find file "/home/eric/tmp/docgen/docgen.winapp/bin/Debug/D:\DEV\OUTILS\docgen\docgen.winapp\ClassTemplate.htm".
File name: '/home/eric/tmp/docgen/docgen.winapp/bin/Debug/D:\DEV\OUTILS\docgen\docgen.winapp\ClassTemplate.htm'
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00203] in /root/tmp/mono-latest/mono-20071106/mcs/class/corlib/System.IO/FileStream.cs:268
at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in /root/tmp/mono-latest/mono-20071106/mcs/class/corlib/System.IO/FileStream.cs:135
at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
at System.IO.File.OpenRead (System.String path) [0x00000] in /root/tmp/mono-latest/mono-20071106/mcs/class/corlib/System.IO/File.cs:384
at System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, Boolean detect_encoding_from_bytemarks, Int32 buffer_size) [0x00077] in /root/tmp/mono-latest/mono-20071106/mcs/class/corlib/System.IO/StreamReader.cs:167
at System.IO.StreamReader..ctor (System.String path) [0x00000] in /root/tmp/mono-latest/mono-20071106/mcs/class/corlib/System.IO/StreamReader.cs:143
at (wrapper remoting-invoke-with-check) System.IO.StreamReader:.ctor (string)
at fr.neopen.generators.templates.FileTemplate.LoadFile (System.String filePath) [0x00000] in /home/eric/tmp/docgen/fr.neopen.generators.templates/TemplateFile.cs:101
at docgen.winapp.Program.Main () [0x00048] in /home/eric/tmp/docgen/docgen.winapp/Program.cs:48
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
8 nov. 2007 à 19:13
:D <----- Dsl Bidou...

Regarde le petit encadré nommé Source... ou alors il y en a d'autre ?
Bon sinon ,
Dans le namespace winapp, il y 2 fichiers (classTemplate.htm et style.css). Ceux sont les deux premiers chemins a définir.
Le troisième c'est le répertoire de génération, mettez n'importe quel chemin, le répertoire sera créé si il n'existe pas.

A+


Vala
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
8 nov. 2007 à 19:00
Y'a des path rentrés en dur la dedans, pas le pied pour tester :)
Rejoignez-nous