Mot-clé - Astuces

Fil des billets - Fil des commentaires

29mai 2017

MSBuild: Copier un dossier avec wildcards

Une petite astuce pour copier des fichiers à partir d'une expression régulière avec MSBuild.

Avec cet exemple il est possible d'utiliser des wildcards pour identifier les éléments à copier.

<Target Name="BeforeBuild">
  [...]
  <ItemGroup>
    <_FoldersToCopy Include="$(ProjectDir)MyFolder\*TargetFolderSuffix\*.ext" />
  </ItemGroup>
  <Copy SourceFiles="@(_FoldersToCopy)"
    DestinationFolder="@(_FoldersToCopy->'$(TargetDir)MyFolder\%(RecursiveDir)')" />
  [...]
</Target>

Cela peut-être intéressant dans le cas où on utilise un pattern plugin et qu'on veut recopier toutes les librairies vers le répertoire de sortie.

Remarques

  • Si on place l'ItemGroup hors du target, Visual Studio l'efface automatiquement à chaque modification du csproj.
  • Ne fonctionne pas avec plusieurs dossiers qui porte le même nom.

22déc. 2016

MSI : obtenir les logs de l'installeur

Suite à des soucis avec l'installation d'un logiciel, j'ai eu à fouiller dans le log d'exécution d'un msi.

J'ai trouvé mon bonheur sur Stackoverflow :

msiexec /i "MyMsiInstaller.msi" /l*v "log.log"

18mai 2016

Powershell : Hash MD5 d'un fichier

Dispo depuis la version 4 :

Get-FileHash <filepath> -Algorithm MD5

27avr. 2016

Visual Studio 2015 : NuGet et les projets partagés entre solutions

Me voilà réduis depuis un petit moment à écrire du powershell pour faire de la restauration de package sur des projets partagés entre plusieurs solutions.

J'ai fini par trouver ceci :

Ce monsieur Jason Stangroome a écrit un package nuget qui "corrige" le problème.

Cependant, soyons lucides, c'est en réalité un problème de design qui est à l'origine de tout cela ^^.

Voici le lien vers le package en question :

Enjoy !

23déc. 2015

Optimiser son temps : le pomodoro

A la recherche d'une technique d'optimisation du temps, j'ai fait la découverte du pomodoro. Cette technique de travail existe depuis les années 80.

L'idée est de découper sa journée en périodes de 25 minutes entrecoupées par des pauses de 5min. Tous les 4 pomodori, on effectue une "grande pause" de 10 à 15 minutes.

Lire la suite...

29avr. 2015

AngularJS : Entre récupération et création de module

Petit piège dans lequel je suis tombé avec AngularJS. Lorsqu'on écrit la ligne suivante :

var app = angular.module('mymodule', []);

On crée un nouveau module. Si on écrit la ligne suivante :

var app = angular.module('mymodule');

On récupère le module créé.

Dans mon cas, je recréais le module que je venais de créer. Ce qui à l'exécution me donnait un erreur Unknown Provider lorsqu'AngularJS tentait d'injecter un service dans mon contrôleur.

Source

- page 1 de 6