Skip to: Site menu | Main content

Welcome there !

Emmanuel Desigaud's blog. Personnal, professional. Fun pictures, kewl web links, usefull software ....
2009-11-19

Sharepoint 2010 and Windows 2008 Web Edition

Categories: Software Language : English (EU)

As soon as Sharepoint was available, I tried to install it on a virtual box running a fresh Windows 2008 Web Edition.

Got the following error : Application Server Role, Web Server (IIS) Role: configuration error

Based on log, it appears that the role "Application Server" is mandatory, and of course, this role is not available on Web Edition of windows 2008 Server so you must run at least Standard Edition, that's it !

Also, if you wonder changing your virtualization platform, before running to VMWare (which has poor performance for me), I advise you to look around VirtualBox (free, fast, x64 support, snapshot...)

Update :
Anyway, it seems that we can get around this limit by editing the installation files : http://msdn.microsoft.com/en-us/library/ee554869%28office.14%29.aspx

PermalinkPermalink
2008-08-30

Work in progress : new webpart

Categories: Software Language : English (EU)

A year after the 1st release of the document library treeview webpart, I decided to improve the webpart to provide a better interface/ergonomic experience.

Expected result is something that looks like Windows Explorer and that remove all those annoying postback/refresh of pages.

The video talks by itself !

PermalinkPermalink
2008-05-13

Moved from bloglines to Google Reader

Categories: Infos Language : English (EU)

To be honest, I was not a big fan of Google reader, supporting bloglines.com for its simplicity, its speed and also its neutrality (who said that Google was evil? ;))

Unfortunately, during one whole weekend, bloglines.com was down... No communication, no apologize even after everything was fixed. I know that they offer stuff for free and we can’t expect same level of quality than a paid service but we are still users and we still need consideration :)

Also, if you take a look at their beta site, you notice that they tend toward cloning Google reader, moving away from their original frame of mind.

So me and my opml file went to google reader, sit down, took a beer and finally, that’s not so bad. Features are roughly the same (G-Reader is missing a keyboard shortcut to navigate through folders). I specially like the reports offered by G-Reader: with the feed activity report, I could trashing tons of rss that have not been updated for years!

Here's my activity for the last 30 days, proof that I really need holidays :)


PermalinkPermalink
2008-05-09

String conditional operator & MSIL

Categories: Software Language : English (EU)

As good geek discussion, with some colleagues we were wondering how was implemented the string conditional operator in C#.

Here's a quick comparaison between a "classical" if-then-else and a string ? condition. The analyze focus on the MSIL code generated.

Basic C# condition :

String foo = "myString";
String aa;
  
if (foo.Length > 0)
    aa = foo;
else
    aa = String.Empty;

and the MSIL code :

   1:  .method private hidebysig static void  Main(string[] args) cil managed
   2:  {
   3:    .entrypoint
   4:    // Code size       34 (0x22)
   5:    .maxstack  2
   6:    .locals init ([0] string foo,
   7:             [1] string aa,
   8:             [2] bool CS$4$0000)
   9:    IL_0000:  nop
  10:    IL_0001:  ldstr      "myString"
  11:    IL_0006:  stloc.0
  12:    IL_0007:  ldloc.0
  13:    IL_0008:  callvirt   instance int32 [mscorlib]System.String::get_Length()
  14:    IL_000d:  ldc.i4.0
  15:    IL_000e:  cgt
  16:    IL_0010:  ldc.i4.0
  17:    IL_0011:  ceq
  18:    IL_0013:  stloc.2
  19:    IL_0014:  ldloc.2
  20:    IL_0015:  brtrue.s   IL_001b
  21:    IL_0017:  ldloc.0
  22:    IL_0018:  stloc.1
  23:    IL_0019:  br.s       IL_0021
  24:    IL_001b:  ldsfld     string [mscorlib]System.String::Empty
  25:    IL_0020:  stloc.1
  26:    IL_0021:  ret
  27:  } // end of method Program::Main

String conditional operator :

String foo = "myString";
String aa = foo.Length > 0 ? foo : String.Empty;

MSIL code :

   1:  .method private hidebysig static void  Main(string[] args) cil managed
   2:  {
   3:    .entrypoint
   4:    // Code size       26 (0x1a)
   5:    .maxstack  2
   6:    .locals init ([0] string foo,
   7:             [1] string aa)
   8:    IL_0000:  nop
   9:    IL_0001:  ldstr      "myString"
  10:    IL_0006:  stloc.0
  11:    IL_0007:  ldloc.0
  12:    IL_0008:  callvirt   instance int32 [mscorlib]System.String::get_Length()
  13:    IL_000d:  ldc.i4.0
  14:    IL_000e:  bgt.s      IL_0017
  15:    IL_0010:  ldsfld     string [mscorlib]System.String::Empty
  16:    IL_0015:  br.s       IL_0018
  17:    IL_0017:  ldloc.0
  18:    IL_0018:  stloc.1
  19:    IL_0019:  ret
  20:  } // end of method Program::Main

What can we conclude ? The conditional operator is not that bad and may help you to optimize a little bit more your code. One argument in favor of the classical if-then-else is that it may be more readable (I don't necesssary agree) but on the other side, does slightly more operations and instantiate one more variable in the stack.

To finish, I think that no-one will notice a difference of performance between the two methods so use the one you feel the more confortable.

PermalinkPermalink
2007-09-19

Book Review : Pro CSS and HTML Design Patterns

Categories: Books Language : English (EU)

cover There are so many books about CSS and so few that are very useful that I want to highlight this one.
It covers common CSS aspects in a question/answer style.
As usual with all APress books, you can buy it as electronic book or as traditional book.

Good reading :)

Book address : http://www.apress.com/book/view/1590598040

PermalinkPermalink
2007-08-22

Announcing the Document Library Treeview for MOSS 2007

Categories: CMS / Sharepoint Language : English (EU)

Dear Sharepoint users, I'm pleased to announce you my first public webpart for MOSS 2007.
This webpart simply add a treeview navigation to the document library webpart. Nothing very tricky or exciting .. just a useful component.

Have a look at the project page here

Webpart

PermalinkPermalink
2007-08-21

De l'utilisation de Using

Catégories: Infos Language : French (FR)

Le mot clé "Using", tout le monde est familier avec. Il suffit de créer n''importe (ou presque) quel objet .Net pour que les premières lignes soient remplies par ces déclarations. Dans cet article, nous allons découvrir les différentes possibilités d''utilisation offertes par ce mot clé.

1/ La déclaration d''espace de nom

L''utilisation la plus commune du mot clé "Using" est la déclaration des espaces de nom. Ainsi, les types d''un espace de nom déclaré par un "Using" pourront être invoqués sans les préfixer du nom complet de l''espace. Par exemple, sans vous en rendre compte, lors d''un appel à String, vous référencez la classe System.String, cela étant dû à l''inclusion de l''espace System.

1using System;
2
3namespace Demo
4{
5	public class Demo
6	{
7		public String test; //appel à System.String
8	}
9}

2/ La définition de synonymes

Toujours à l''aide la directive "Using", nous allons pouvoir définir des synonymes dans le but de simplifier / clarifier l''inclusion de certains espaces de nom. Il suffit alors de déclarer l''import comme suit :

using variable = Espace de Nom;

Un exemple concret qui a fait le tour des différents blogs :

1using System;
2using settings = System.Configuration.ConfigurationSettings;
3
4public class Demo
5{
6
7 public Demo()
8 {
9 String conString = settings.AppSettings["ConnexionString"];
10 //....


Le but est de simplifier l''appel à la propriété statique AppSettings de la classe System.Configuration.ConfigurationSettings qui est un peu longue à écrire (qui se soucie aujourd''hui d''écrire son code en 80 colonnes ?)

3/ La déclaration de variable locale.

On peut également utiliser le mot clé "using" pour déclarer certaines variables locales. L''intérêt d''une telle utilisation est qu''à la fin de la section qui déclare le using, la variable est automatiquement nettoyée par l''appel à sa méthode Dispose. La seule contrainte (majeur) est que l''objet doit définir l''interface IDisposable.

Pour résumer :

using (Type variable = initialisation)
{
    //Traitement
}


est équivalent à :


{ Type variable = initialisation; try { //Traitement } finally { if (variable != null) { ((IDisposable)variable).Dispose(); } } } // fin de la section
Un exemple concret d''utilisation :
1using System;
2
3public class Demo : IDisposable
4{
5
6 public Demo()
7 {
8 Console.WriteLine("Hello");
9 }
10
11 public void Dispose()
12 {
13 Console.WriteLine("Disposing the object");
14 }
15
16 [STAThread]
17 static void Main(string[] args)
18 {
19 using (Demo d = new Demo())
20 {
21 }
22
23 Console.ReadLine();
24 }
25}
26

retourne dans la console :




Hello
Disposing the object

PermalienPermalien
2007-06-23

MOSS 2007 Search Web Service Tips

Categories: CMS / Sharepoint Language : English (EU)

The "Did you mean" (spelling suggestion) feature of MOSS 2007 is very useful. This information is also available through the Search Web Service.

On the dataset returned by the QueryEx function, have a look at the extended property called SpellingSuggestion. It will give you the precious information !!


DataSet ds queryServiceProxy.QueryEx(req);

            
if 
(ds.ExtendedProperties.ContainsKey("SpellingSuggestion"
    &&
    ds.ExtendedProperties[
"SpellingSuggestion"].ToString().Length > 0)
{
    
this.Response.Write("-->" + ds.ExtendedProperties["SpellingSuggestion"]);
}
PermalinkPermalink
2007-06-22

Compil-des-Ventes.com

Catégories: Links Language : French (FR)

Salut,

Une petite publicité pour ma dernière création : compil-des-ventes.com.

Le but de ce site est de référencer toutes les ventes privées. Si vous trouvez le concept intéressant, n'hésitez pas à faire de la pub à votre tour :)

Ce site est la mise en pratique de mon dernier framework n-tier et j'en suis assez content. Le site est hebergé chez Ikoula qui propose un hébergement à un prix plutôt canon : 42 euros/an avec le nom de domaine.

PermalienPermalien
2007-03-11

Web based MSN

Categories: Links Language : English (EU)

If you cannot install MSN on your computer or if MSN is blocked, here a list of web based client that you can use !!

Links open in the same window.

Never let your mail/password on sites you don't trust !

PermalinkPermalink

:: Next >>