Author

Using Apache Thrift to provide cross-languages communication

The Apache Thrift is a software framework used to facilitate binary communication. Based on RPC (remote procedure call) it was developed by Facebook and provide the complete stack for creation clients/server solutions. Cross-language is one of the most useful feature of Thrift by providing a lot of supported programming languages (C#,C++, Java, Php, Node.js, Cocoa, …). The common struct and service should be written in .thrift files using the interface definition language of the framework.

Monitorer et sécuriser un webservice WCF par attributs

Introduction L’objectif de cet article est tout d’abord de démontrer comment monitorer les appels à un service WCF (en enregistrant tous les appels ainsi que leurs temps d’exécution et les utilisateurs). Par ailleurs nous verrons que cela peut s’appliquer également pour fournir une gestion de la sécurité sans dupliquer le code ou appeler des méthodes... » read more

Appeler un webservice WCF depuis C++ natif via un composant COM

I Contexte Nous avons du code legacy avec une application C++ qui communique directement avec une base de données. L’objectif est de migrer progressivement le parc logiciel vers une architecture orientée services (SOA). Pour se faire plusieurs options d’offrent à nous. Poc.Compatibility Sources  (Nécessite le framework .net 4.5 et Visual Studio 2013) II Solutions possibles... » read more

Tutoriel : Création d’un AddIn Word

Table des matières 1. Préambule 2. Création de l’AddIn « MyCompany.WordAddIn » 3. Création de menus dans le Ribbon 4. Affichage d’un panneau WPF adjacent à la vue Document 5. Affichage de la sélection courante au clic sur le bouton du panneau 6. Gestion d’un contexte spécifique à chaque document ouvert (multi-instances) Téléchargement des sources:... » read more

Projet: Office Package Viewer

Office Package Viewer est un petit utilitaire écrit en C#/WPF que j’ai développé afin de visualiser rapidement le contenu d’un fichier répondant à la norme Office Open XML. Ce type de document (à savoir .docx, .xlsx, .pptx) est en fait une archive zip composée de plusieurs “PackagePart” parmis lesquelles on peut distinguer: Les parties de... » read more

Utilisation des Interop dans une application WPF : COM Exception

Au cours d’un projet WPF, il était nécessaire de disposer dans l’application d’un bouton “Prepare Email” qui devait automatiquement créer un nouveau message pré-rempli dans Outlook. Cependant sur certains postes de travail une erreur de type COM Exception apparaissait: Prepare Outlook MailItem Voyons tout d’abord le code (simplifié) qui ouvre un nouveau message Outlook pré-rempli:... » read more

Comment utiliser une librairie statique (.lib) en C++ dans un projet C# ?

Au cours du développement d’un projet j’ai été confronté à la problématique suivante: Comment utiliser une librairie dynamique (.lib) en C++ dans un projet C# ? Fichiers: Executables (38ko) Source (428ko) 1. Présentation du contexte La solution est composée des 3 projets suivants : MonApplication.exe [C++, MFC] Un client lourd qui doit fonctionner de Windows... » read more

Récupérer le nom de la classe et de la méthode courante

Il peut être très utile de récupérer le nom de la classe et de la méthode courante. Pour se faire, il suffit d’ajouter la méthode suivante dans une classe utilitaire : Utils.cs public static string GetCurrentMethodName() { StackTrace stackTrace = new StackTrace(); StackFrame stackFrame = stackTrace.GetFrame(1); return stackFrame.GetMethod().DeclaringType + " :: " + stackFrame.GetMethod().Name; }public... » read more