Création de Task executé avant la compliation.

sosekeyser Messages postés 14 Date d'inscription mardi 26 août 2003 Statut Membre Dernière intervention 25 mai 2009 - 5 sept. 2007 à 21:08
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 - 16 sept. 2007 à 17:58
Bonjour,


Je souhaite executer des tâches persos avant où après la compilation
d'un projet. Exemple d'application : J'auto-incrémente la version du
projet à chaque complilation, donc j'écris dans le AssemblyInfo.cs


Pour ça, j'ai crée une bibliothèque de classes, avec une class qui dérive de Task.
<!-- BEGIN TEMPLATE: bbcode_code -->

Code :
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Build.Utilities;
using System.IO;

namespace MyAutoIncrement
{
public class AutoIncrement : Task
{
public override bool Execute()
{
try
{
return WriteText();
}
catch (Exception)
{
return false;
}
}
private bool WriteText()
{
try
{
using (StreamWriter sw = new StreamWriter("C:\test.txt"))
{
sw.Write("The date is: ");
sw.WriteLine(DateTime.Now);
}
return true;
}
catch (Exception)
{
return false;
}
}
}
}

<!-- END TEMPLATE: bbcode_code -->J'ai installé la dll dans mon GAC, pas de problème. Mais pas moyen d'utiliser ma task...

J'ai ajouté
<!-- BEGIN TEMPLATE: bbcode_code -->

Code :

<!-- END TEMPLATE: bbcode_code -->et
<!-- BEGIN TEMPLATE: bbcode_code -->

Code :
<Target Name="BeforeBuild">

</Target>

<!-- END TEMPLATE: bbcode_code -->dans le fichier .csproj, mais ca ne marche pas...

J'ai également essayé de pas mettre mon assembly dans le GAC, et mettre la dll directement dans le projet.
J'ai alors fait directement

Code :

<!-- END TEMPLATE: bbcode_code -->Mais pareil, ca ne marche pas....


Quelqu'un aurait une idée de ce que j'ai mal fait? ou loupé?


Merci!

Mathieu

1 réponse

ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
16 sept. 2007 à 17:58
salut,

est-ce que ton UsingTask se trouve bien juste après le Project et que ton Target est bien après Import ? éventuellement, tu peux mettre BuildTasks à la place de
MyAutoIncrement ?

ShareVB
0
Rejoignez-nous