# Tuesday, December 15, 2009

Une conférence sur le C++ et Visual C++ 2010 aux Techdays 2010 ! Dans la partie Architecture et développement, section Outils, langages et Frameworks :

Venez découvrir dans cette session les nouveautés que vous offre Visual Studio C++ tant en termes de développement d'interface graphique qui adhère à Windows 7, qu'en termes de nouveautés du langage qui colle à la norme C++0X. Nous parcourons également quelques fonctionnalités de l'IDE qui permettent à un développeur C++ d'être plus productif.

On dirait que la conférence de Boris Jabes du PDC 09 dont j'ai déjà parlé va être reprise aux techdays. Super !

 

Tags  |  | 
 15 December 2009, 18:59
# Friday, November 27, 2009

Il y a pas mal d'applications qui ont été écrites en C++ natif, avec les MFC. Ou bien avec ATL.

La bonne nouvelle c'est que Visual Studio 2010 nous donne les moyens de moderniser ce genre d'application, et de les remettre au goût du jour.

Avant Visual Studio 2010 on se disait :

" Bon, on a cette application C++/MFC dont l'écriture a commencé il y a 6 ou 10 ans. Maintenant la tendance et les derniers gadgets à la mode sont dans .NET : Winforms ou WPF. Alors on va migrer l'application vers .NET. "

Et commençait un long périple qui avait plusieurs issues possibles, selon les cas. Les exemples cités ici sont de vrais cas, seuls les noms ont été changés ;-) :

1ère solution : les devs prennent la décision de tout réécrire from scratch en WPF (ou en Winform) et arrivent à convaincre leur hiérarchie. Effet tunnel, ça prend deux ans. Il faut payer l'équipe de développement pendant ce temps parce que rien ne sort. Et à la fin, si ça aboutit (des fois ça n'aboutit pas), on a les mêmes fonctionnalités qu'avant. Avec un look and feel plus sympa et moderne quand même. Le marketing râle après le développement : "Quoi ?! Il vous a fallu deux ans pour faire ça ? Et on a quoi de neuf nous à vendre aux clients ? On avait déjà toutes ces fonctionnalités avant". Les développeurs ont passé leurs nuits pour tout refaire en C#. Au moins le code est en .NET, et il est propre. Mais ça a coûté très cher. Entrer dans ce genre d'aventure et s'en sortir n'est possible qu'avec de bons développeurs et un excellent encadrement technique.

2eme solution : Le chef déclare qu'il faut faire une migration vers .NET petit à petit, écran par écran. Pour éviter l'effet tunnel. Alors commence une longue souffrance pour l'équipe de développement. Les écrans vont être réécrits en .NET un par un, et intégrés dans le projet C++ natif avec de l'interop. Au bout de quelques semaines, le chef voit qu'il a des boîtes de dialogue en .NET (Winform par exemple) dans son application. Il a l'air content. Mais il ne voit pas l'usine à gaz en dessous. Si certains développeurs comprennent ce qu'ils font et le font proprement, il peut arriver que d'autres ne comprennent pas bien. Réaliser ce genre d'intégration avec de l'interop n'est pas si simple qu'il n'y paraît. J'ai vu du code C++ natif appeler du code C#, qui rappelait du code natif, qui à son tour appelait du code C#. Je n'ai pas vu de projet conséquent de ce genre arriver à terme. Ca a fini dans un mélange infâme de code natif et managé. Mais des fonctionnalités on pu être ajoutées au projet pendant que des écrans étaient réécrits en C#, et le marketing est content.

Heureusement Visual Studio 2010 propose une autre approche avec de nouvelles fonctionnalités pour les projets C++. Une troisième solution devient possible pour mettre à jour une vieille application C++ ! La mettre au goût du jour avec les nouvelles fonctionnalités proposées dans Visual Studio 2010 !

3eme solution : Quelques programmeurs C++ vont pouvoir changer l'interface utilisateur, connecter l'application au Web, ajouter quelques gadgets sexy, gérer le parallélisme pour profiter des processeurs modernes, etc. Et tout ça en quelques semaines seulement.

La conférence sur Visual C++ 2010 que j'ai citée dans le billet précédent sur la conférence PDC résume comment faire. 

Et puis, j'effectue moi-même en ce moment la migration d'un projet C++/MFC commencé il y a... 16 ans ! Il fonctionne toujours, est très rapide, et consomme très peu de mémoire.

Voici une capture d'écran d'un logiciel écrit proprement en C++ depuis 16 ans, toujours en cours de développement avec VS 2010, et qui ne fait pas son âge.

Oui, on ne dirait pas une application dont l'essentiel du code date de plus de 15 ans...

Je détaillerai très bientôt les étapes à effectuer pour une migration de ce genre dans des billets à venir.

 

 

Tags  |  | 
 27 November 2009, 16:47
# Thursday, November 19, 2009

En ce moment se tient la conférence microsoft pour les développeurs, vous le savez sans doute. Les conférences sont déjà disponibles en streaming HD (merci Silverlight !) ou en téléchargement WMV.

Pendant que tout le monde est en train de parler de Silverlight 4, j'ai quand même noté que Microsoft apporte pas mal de nouveautés à Visual Studio 2010 concernant C++, et qu'il y a plusieurs conférences sur le sujet ! En anglais of course...

Le point d'entrée est sans doute la conférence de Boris Jabe, Accelerated Windows Application Development with Microsoft Visual C++ 2010, qui est à mon sens indispensable pour tout utilisateur du langage C++. Oui c'est en anglais mais je peux faire des sous-titres en français si vous me le demandez ?

Ce développeur de Visual C++ passe en revue les nouveautés de Visual C++, de l'IDE en passant par le langage, et parle notamment des nouveautés concernant le développement parallèle. Je me posais des questions dans mon précédent post sur Visual C++ 2010, des réponses y sont apportées. J'y reviendrai.

Par exemple, les expressions lambda de C++0x facilitent réellement la programmation multitâche. Au sujet du partage de variables entre threads, je voudrais citer de mémoire une phrase de Boris qui m'a bien fait rire : "Une manière de faire est de le faire à la C#, en passant tout en paramètre sans se soucier des performances ni de l'occupation de la mémoire" ;)

D'autres conférence sur le sujet promettent d'être intéressantes, Boris Jabe nous en sélectionne quelques unes dans une de ses slides. Slide affichée dans une application MFC, évidemment ! :D


Boris Jabe présente Visual C++ 2010, et sélectionne quelques conférences que tout développeur C++ devrait regarder !

Rendez-vous sur www.microsoftpdc.com pour les regarder.

 

Tags  |  | 
 19 November 2009, 15:00
# Saturday, October 24, 2009

Visual Studio 2010 apporte son lot de nouveautés pour les développeurs C++ natif avec une nouvelle version des MFC !

Les développeurs en C++ natifs ne sont pas abandonnés, même si la plupart d'entre eux sont morts depuis longtemps ! ;-) Déjà, Visual Studio 2008 avait apporté son lot de nouveautés avec le service pack 1. Peut-être que Microsoft considère que les vrais développeurs, en plus de ne pas manger de quiche, programment en code C++ natif ?

Ribbon Designer

Le plus spectaculaire est le nouveau Ribbon designer. Il permet d'intégrer une interface de type Ribbon (comme celle d'Office 2007, ou de Paint dans Windows 7) dans une application C++/MFC sans coder, de la même manière qu'on intègre un menu. Visual C++ 2010 possède un nouveau type de ressource : le Ribbon. Au même titre que les toolbars, boîtes de dialogues...

Visual Studio 2010 Screenshot Ribbon MFC
Le ribbon-designer de Visual Studio 2010 pour les MFC

(Oui, il faudrait que je refasse la maquette de ce blog !)

Ribbon... mais de quel ribbon parle-t'on ?

Précision : ce ribbon-designer n'est pas destiné à créer des interfaces utilisateurs se basant sur le nouveau contrôle Ribbon-Scenic livré avec Windows 7. Il n'est utilisable qu'en C++ et en utilisant les MFC. L'avantage est que l'application peut s'exécuter à la fois sous Windows XP, Vista et Windows 7.

Comment ça marche ?

La première étape est de créer un Ribbon dans les ressources du projet. Cela crée automatiquement un fichier XML associé. Dans ce seront ajoutés les descriptions des onglets, groupes et contrôles du Ribbon. Un fichier XML, oui. Pas un fichier XAML ! En fait le XML suffit j'imagine...

En éditant le Ribbon, on ouvre le Ribbon-designer. Dans cette fenêtre, on peut glisser-déplacer des onglets, des groupes, des contrôles, créer des sous-menus, affecter des images à des boutons, créer les commandes pour associer le code à l'interface... bref, effectuer le design de l'interface.

Visual Studio 2010 Screenshot Ribbon MFC
Modification des propriétés d'un bouton du ribbon

L'éditeur de Ribbon génère un fichier XML décrivant l'interface utilisateur. Lors de la compilation du projet, ce fichier XML est inclus dans les ressources, et donc dans le binaire. Pour charger le ribbon dans la fenêtre principale, trois lignes de code suffisent :

CMFCRibbonBar m_wndRibbon;

m_wndRibbon.Create(this);
m_wndRibbon.LoadFromResource(IDR_RIBBON);

On dirait du code C# tellement c'est simple, n'est-ce pas ? :-D Et puis, pour une fois dans la rubrique "je crée une interface en 5 minutes", les développeurs C++ natifs sont privilégiés par rapport à leurs homologues C# car ce designer n'existe que pour du code C++. Il n'en existe pas de version pour Winform ni pour WPF/Silverlight dans Visual Studio 2010 .

Le Ribbon est disponible avec plusieurs looks. En plus des looks présents dans Visual Studio 2008 (ceux avec les bouton rond, comme dans Office 2007), un nouveau look ressemblant au Ribbon de Windows 7 a été ajouté. Et, fin du fin, il est possible de changer de look à la volée, pendant l'exécution du programme.

Voici deux captures d'écran de la même application. Le look a été modifié grâce au menu Style en haut à droite du ribbon.


Application C++/MFC avec Ribbon look Office 2007 black

 


Application C++/MFC avec Ribbon look Windows 7

 

Sauvegarde automatique des documents en cas de plantage

Imaginez, vous saisissez un document et votre application C++/MFC plante. Votre travail est perdu ? Non ! Les classes MFC de Visual Studio 2010 contiennent un gestionnaire de sauvegarde automatique (sérialisation automatique des documents toutes les 5 minutes par défaut si l'option est activée). En cas de plantage, le crash est intercepté et le travail en cours est copié dans des fichiers temporaires. Au prochain lancement du programme, les MFC proposeront automatiquement d'ouvrir les fichiers temporaires et de restaurer le travail interrompu.

Cette fonctionnalité est très simple à mettre en oeuvre si l'on respecte l'architecture générale des MFC. Il s'agit de mettre en place quelques callbacks. Je ne l'ai pas encore testée, mais dès que je le fais je mets le code en ligne. Ce filet anti-plantage est supporté sous Vista et Windows 7, pas sous Windows XP : le système d'exploitation effectue une partie du travail en interceptant le plantage.

 

Support dans les MFC des interactions avec la barre des tâches de Windows 7

Encapsulation des interactions avec la taskbar win7 dans les MFC pour faciliter l'intégration avec Win7.

Une nouvelle fonction toute simple a été ajoutée à la class CWinApp :

   EnableTaskbarInteraction(TRUE);

Elle permet d'afficher dans la barre des tâches de Windows 7 les différentes fenêtres MDI de l'application dans des miniatures différentes, comme Internet Explorer 8 le fait, ainsi que la liste des documents récents En une seule ligne de code !

Cette fonctionnalité n'a pas l'air d'être complètement terminée dans cette version béta 2. En attendant la version finale, pour illustrer l'intégration d'une application dans la barre des tâches de Windows 7, voici une capture d'écran de MSN Messenger !

 

Les TaskDialog aussi simples à utiliser que les MessageBox

Les MFC incluent le support des Task Dialogs apparues avec Windows Vista d'une manière élégante et très simple à mettre en oeuvre. Il est recommandé de les utiliser le plus souvent possible à la place des MessageBox.

Voici le code correspondant :

INT_PTR nResult = CTaskDialog::ShowDialog(
   _T(
"Choisissez si vous souhaitez enregistrer vos modifications ou non."), 
   _T(
"Vous n'avez pas sauvegardé votre travail."), 
   _T(
"Budget"), IDS_SAVE_YES, IDS_SAVE_CANCEL, TDCBF_CANCEL_BUTTON);

Plus d'infos sur le site MSDN.

 

Autres fonctionnalités, intégration des applications dans le système

En vrac :

  • Les MFC sont compatibles avec les périphériques multitouch. Les MFC génèrent correctement les évènements correspondants à ces périphériques.
  • Intéractions avec le système de recherche de Windows : les types de documents propriétaires gérés par une application MFC peuvent être indexés par Windows pour la recherche dans les documents de Windows.
  • Les MFC peuvent générer des miniatures des documents compatibles avec les miniatures de l'explorateur de Windows.

C'est tout. Pour le moment.

 

Tags  |  | 
 24 October 2009, 00:34
# Wednesday, October 21, 2009

Il a été annoncé que les abonnés MSDN pouvaient obtenir la béta 2 de Visual Studio 2010 sur le site MSDN. Quant à ceux qui n'ont pas d'abonnement MSDN, ils peuvent télécharger la béta 2 ici sur le site Microsoft.com.

Il est possible d'installer VS 2010 à côté de VS 2008, sur la même machine. Les deux environnements fonctionnent indépendamment sans problème. Pratique (indispensable ?) pour migrer les projets.

Cependant il y a un petit bug dans le setup de VS2010 qui se produit si vous avez installé le SDK de Silverlight 3 RTM. A la fin de l'install, vous aurez ce message d'erreur :

Visual Studio 2010 setup problem with Silverlight

Tout s'est bien passé, sauf que VS 2010 veut installer "Silverlight 3 SDK GDR 2" (General Distribution Release 2, qui date de fin août 2009), et qu'il n'arrive pas à l'installer si vous avez déjà "Silverlight 3 SDK RTM". Problème de conflit de version donc. Car il existe déjà 3 versions de Silverlight 3 (voir les détails sur le blog de Tim Heuer) :

  • RTM: 3.0.40624 (La version dont "tout le monde" a installé le SDK)
  • GDR 1: 3.0.40723
  • GDR 2: 3.0.40818 (La dernière version que "personne" n'a vu passer)

    La solution... est de désinstaller "Microsoft Silverlight 3 SDK" par le panneau de contrôle AVANT d'installer VS 2010 beta 2.

    Si vous avez déjà installé VS 2010 et obtenu ce message d'erreur, vous avez peut-être constaté que Silverlight a l'air de fonctionner correctement avec VS 2010. En fait, tout est OK, sauf que vous n'avez pas la toute toute dernière version du SDK de Silverlight. Microsoft conseille de désinstaller Silverlight 3 SDK et de réinstaller VS 2010... Voir sur le blog de Mike Snow.

    Mais j'imagine qu'on peut simplement installer le SDK Silverlight 3 GDR2 après avoir désinstallé le SDK Silverlight 3 RTM si on désire vraiment avoir le tout dernier SDK de Silverlight 3...

  •  21 October 2009, 22:50
    # Sunday, August 31, 2008
    Il y a deux semaines j'avais râlé parce que le code source de .NET n'était plus disponible avec VS 2008 SP1. Eh bien c'est désormais en partie corrigé. Une partie du code source de .NET 3.5 SP1 vient d'être rendu disponible en cette fin août par Microsoft. Cela veut dire que désormais l'on peut deboguer et tracer dans le Framework .NET 3.5 SP1 avec VS 2008 SP1. C'est annoncé sur le nouveau blog Microsoft du Source Code Center.

    Par contre, la procédure indiquée sur ce blog est valable pour VS 2008, et n'a pas été mise à jour pour VS2008 SP1 ! ;) Cela viendra sans doute bientôt.

    Dans VS 2008 SP1, il y trois options à cocher pour récupérer le code source de .NET, contre deux dans VS 2008 :


    Trois options pour obtenir le code source de .NET 3.5 SP1

    Si ce n'est pas la première fois que vous utilisez cette fonctionnalité, vous devez vider le dossier cache dans lequel les sources sont stockés pour provoquer un nouveau téléchargement des sources et des symboles à jour :


    Le dossier cache où sont stockés les sources de .NET

    La plupart du code source n'est pas encore disponible. Le code source de WPF, notamment, n'est pas encore mis à disposition. Cela viendra bientôt, comme annoncé sur le blog Microsoft du Source Code Center.

    Mais pourquoi est-ce que le code de WPF 3.5 SP1 n'est-il toujours pas disponible ? Il nécessite tant de correction que cela avant de sortir de chez Microsoft ? Il y a peut-être des commentaires dans le code à supprimer, du style :

        // with this workaround, we can send Adobe Air to hell

    Mystère... ! ;)

    Tags  | 
     31 August 2008, 16:35
    # Monday, August 18, 2008

    Microsoft a profité de ce que j'avais le dos tourné (voir photo ci-dessous), pour sortir une mise à jour SP1 pour Visual Studio 2008 et aussi pour .NET 3.5. A peine rentré des Alpes Suisse, je me jette évidemment sur MSDN pour télécharger la bête.

    Le lac Thunsee, dans les Alpes Suisses, près de Bern.</
    Le lac Thunsee, dans les Alpes Suisses, près de Bern.

    Le SP1 de Visual Studio 2008 est dispo pour les versions gratuites (express) et professionnelles de Visual Studio. En anglais et en français. Pour télécharger le SP1, c'est ici pour les versions pro ou ici pour les versions express. Après avoir accepté le contrat-de-licence-qu'on-ne-lit-jamais, le programme d'installation se débrouille tout seul. Environ une heure après (quand même), me voici avec la version RTM du SP1 de .NET 3.5 et de Visual Studio 2008 :

    A propos de Visual Studio 2008 SP1

    Il y a déjà eu pas mal d'articles sur les nouvelles fonctionnalités apportées par ce SP1 en français sur le blog de Mitsu ou en anglais : la liste entière des modifications est dans la base de connaissance de Microsoft : http://support.microsoft.com/kb/945140. Plein de trucs sur ASP.NET, WPF, Linq, etc. Aussi, les applications WPF se lancent plus rapidement, c'est clair.

    Le nombre de fonctionnalités ajoutées est impressionnant. Surtout pour .NET 3.5 SP1, il s'agit plus d'une nouvelle version que d'un Service Pack ! .NET 3.5 SP1 contient la version 3 de WPF, après WPF 1 sorti avec Vista et .NET 3.0, WPF 2 sorti avec Visual Studio 2008 et .NET 3.5.

    Le SP1 pour Visual C++

    Le SP1 de Visual Studio 2008 contient les nouveautés déjà présentées dans VC++ 2008 Feature Pack (la nouvelle version des MFC, et C++ TR1). Mais comme le VC++ 2008 Feature Pack est sorti il y a quelques mois déjà, le SP1 de Visual Studio y apporte de nombreux correctifs dans le compilateur C++ (bugs corrigés), dans les extensions TR1, ainsi que dans les MFC (voir http://blogs.msdn.com/vcblog)

    Si vous avez déjà installé VC++ 2008 Feature Pack, il est donc conseillé d'installer en plus Visual Studio SP1, car ce dernier contient une mise à jour du Feature Pack.

    Autrement dit, le Feature Pack est à mettre à la poubelle, il est remplacé par le SP1 de Visual Studio.

    Un Datagrid dans WPF 3.5 SP1 !

    Il manquait un contrôle datagrid dans WPF. Plusieurs éditeurs indépendants ont fourni des contrôles Datagrid, payants ou gratuits (Xceed ou Infragistics). Ce grand manque est désormais comblé... d'une manière originale. Microsoft propose un Toolkit WPF en téléchargement sur le site www.codeplex.com/wpf. Ce toolkit contient entre autres, un datagrid, et nécessite WPF 3.5 SP1 pour fonctionner. Le code source est même disponible !

    Comme Microsoft aime bien les fournisseurs de composants indépendants, il ne va pas trop leur faire concurrence. Le Data Grid de WPF ne sera jamais aussi puissant que le Data grid payant d'Infragistics par exemple. Même si la version actuelle est encore en CTP, il ne faut pas s'attendre à voir ce contrôle devenir le meilleur des datagrid du monde ! Mais il peut rendre des services...

    Le blog de Jaime Rodriguez contient une série d'articles sur l'utilisation de ce nouveau contrôle Data Grid pour WPF :


    Un exemple d'utilisation par Jaime Rodriguez du nouveau contrôle Data Grid de WPF

    Ce Toolkit WPF contient également un outil pour pouvoir construire plus facilement des Pixel Shaders. Il y en a qui vont s'amuser comme des petits fous ! Toutes les infos sur ce nouvel outil sur le blog de Greg Schechter, le "spécialiste" des Pixels Shaders en WPF.

    Le code source du framework .NET 3.5 SP1 pas encore disponible

    Depuis quelques mois, il était possible avec Visual Studio 2008 d'utiliser le code source du framework .NET 3.5. en mode Debug. Visual Studio 2008 sait télécharger le code source d'une partie de .NET pour le mettre à disposition de tout programmeur .NET, comme expliqué par exemple par ClaueR.

    Les nouvelles options de téléchargement du code du framework .NET
    Les nouvelles options de téléchargement du code du framework .NET

    Avec Visual Studio 2008 SP1, les options de téléchargement du code source du framework .NET sont mieux pensées, mais le problème est que le code source de .NET Framework 3.5 SP1 n'est pas encore disponible ! Des fichiers PDB sont présents, mais ils ne contiennent pas (encore ?) les informations sur le code source.

    Alors, si vous avez absolument besoin d'utiliser le code source du framework .NET 3.5 en mode debug, n'installez pas encore le SP1 ! Attendons que Microsoft mette en téléchargement le code source de la dernière version de .NET.

    Nouveautés du mode debug (managed)

    En mode pas à pas, le menu contextuel (clic droit de la souris) contient des entrées supplémentaires. Le très pratique "Step into Specific" est disponible sur un appel de fonction, et permet de spécifier comment tracer à l'intérieur de la dite fonction.


    Nouveau menu contextuel en mode debug

    Il y a beaucoup d'autres nouveautés dans ce SP1, à télécharger d'urgence donc. Sauf si l'on a besoin d'utiliser le code source du framework .NET pour l'instant.

    Tags  |  |  | 
     18 August 2008, 17:47
    # Wednesday, June 11, 2008

    Impressions

    Après plus de deux semaines d'utilisation des SP1 de Visual Studio 2008 et de .NET 3.5, je n'ai rencontré aucun problème. Pourtant j'ai fait une utilisation intensive de C#/WPF et aussi de C++ (natif).

    Le truc qui ne fonctionne plus, c'est le debogage dans le code source de .NET. Forcément : le code source de .NET 3.5 SP1 n'est pas encore disponible. Il faudra sans doute attendre au moins la sortie de la version RTM de .NET 3.5 SP1.

    Je n'ai pas pu utiliser Silverlight depuis deux semaines, car les extensions Silverlight 2 beta 1 pour Visual Studio étaient incompatibles avec VS2008 SP1. Mais ceci était indiqué et documenté. La beta 2 de Silverlight 2 qui est sortie le 6 juin fonctionne très bien avec Visual Studio 2008 SP1. Plus d'incompatibilité entre Silverlight et Visual Studio ! Je vais pouvoir continuer à m'amuser avec Silverlight avec mon fils.

    .NET 3.5 SP1 était censé accélérer le chargement des applications WPF. Je n'ai pas spécialement remarqué de différence, disons que ce n'est pas flagrant. Mais ceci n'est qu'une remarque subjective. Ou alors je ne suis pas encore satisfait des performances de WPF. Allez, M. Microsoft, encore un effort !

    J'aurais voulu tester les shaders en WPF/SP1, mais pas eu le temps. Faire des filtres graphiques qui utilisent la carte 3D, et utiliser ces filtres en XAML est une des raisons pour lesquelles WPF est prometteur, malgré ses défauts (de jeunesse). Une très bonne série d'articles ici sur la réalisation d'effets graphiques en utilisant l'accélération matérielle.

    Desinstallation

    La désinstallation de VS 2008 SP1 et .NET 3.5 SP1 est laborieuse, mais on y arrive ! Pour revenir à VS 2008 standard, il faut successivement désinstaller tout ça (la liste est dans le fichier readme.htm de Visual Studio 2008 SP1) :

    Uninstall the following list of updates, in the order shown:

    1. Microsoft Visual Studio Team System 2008 Team Suite - Service Pack 1 (KB945140)
    2. Microsoft Visual Studio Team System 2008 Team Suite - Service Pack 1 (KB948560)
    3. Microsoft Visual Studio Team System 2008 Team Suite - Service Pack 1 (KB947888)
    4. Microsoft Visual Studio Team System 2008 Team Suite - Service Pack 1 (KB948484)
    5. Microsoft Visual Studio 2008 Remote Debugger - Service Pack 1 (KB945140)
    6. KB945140 under Visual Studio .NET Prerequisites
    7. Update for WebDesigner 2007 (KB945140)
    8. Windows SDK for Visual Studio 2008 SP1 KB946729
    9. Windows SDK for Visual Studio 2008 KB946733
    10. Microsoft SQL Server Compact 3.5 SP1 Design Tools English
    11. Microsoft SQL Server Compact 3.5 SP1 English
    12. Microsoft SQL Server Database Publishing Wizard
    13. Visual Studio Tools for the Office system 3.0 Runtime Service Pack 1 Language Pack (KB949258)
    14. Visual Studio Tools for the Office system 3.0 Runtime Service Pack 1 (KB949258)
    15. Visual C++ 2008 IA64 Runtime - (v9.0.304xx)
    16. Visual C++ 2008 x64 Runtime - (v9.0.304xx)
    17. Visual C++ 2008 x86 Runtime - (v9.0.304xx)

    Après avoir désinstallé tous ces éléments, il ne reste presque plus rien de Visual Studio ;). Il faut réinstaller Visual Studio en utilisant l'option "réparer l'installation". Mais ça marche.

    Pour désinstaller .NET 3.5 SP1 beta, c'est plus simple. Il suffit de désinstaller "Microsoft .NET Framework 3.5 SP1 beta". Facile. Le problème c'est qu'après il n'y a plus de framework .NET 3.5. Il faut en réinstaller une version normale.

     

     11 June 2008, 01:52
    # Saturday, May 17, 2008

    L'article de Scott Guthrie présente une longue liste de nouveautés apportées par ces deux SP1. Mais il ne dit pas tout, la preuve :

    1. D'abord l'icône de Visual Studio a changé : il y a un petit 9 dessus maintenant !

    2. Deuxième constatation : tous les paramètres de l'environnement sont réinitialisés ! Configuration, dossiers "Include" ou "Lib" du compilateur C++, raccourcis clavier, ... il faut tout reparamétrer ! Je ne sais pas si j'ai fait une erreur ou si c'est un bug de la version beta...

    3. Le designer WPF (ex Cider) a bien changé : il dispose maintenant d'un éditeur d'événement. Il suffit de sélectionner un objet WPF, en mode design ou en XAML, et la liste des événements disponibles pour cet objet s'affiche. On peut trier les événements par ordre alphabétique, ou bien par thème. Cela manquait !

    Une autre amélioration très pratique est la possibilité d'effectuer un glisser-déplacer depuis la barre d'outils des contrôles WPF, vers une fenêtre WPF en mode design, aussi bien que vers le code XAML.

    A suivre...

    Tags  | 
     17 May 2008, 00:31
    # Friday, May 16, 2008

    Trop tentant d'installer ces dernières versions de VS 2008 et de .NET 3.5, je n'ai pas pu résister. Ce qui est dit de ces mises à jour de VS2008 et .NET 3.5 sur les blogs de Scott Guthrie et Tim Sneath est alléchant.

    Attention ! N'installez pas ces Service Packs si vous développez pour Silverlight 2. Le SP1 de .NET Framework 3.5 est incompatible avec les outils de programmation de Silverlight 2 beta. Il faut attendre quelques semaines pour qu'une nouvelle version de l'extension "VS 2008 Tools for Silverlight 2" compatible avec .NET 3.5 SP1 soit disponible.

    Ce sont des versions béta. Et un certain nombre de précautions doivent être prises avant d'intaller la bête.

    1. Sous Vista, il faut installer Vista SP1 au préalable.

    2. Si vous avez installé les extensions "VS 2008 Tools for Silverlight 2 Beta1" pour faire desprojets Silverlight avec VS 2008, il faut le désinstaller. .NET 3.5 SP1 ou Silverlight 2, il faut choisir !!

    Vous pouvez aussi désinstaller "Silverlight 2.0 SDK Beta1", il ne fonctionnera plus avec VS2008 SP1.

    Par contre, gardez évidemment le runtime de Silverlight.

    3. Il faut désinstaller une ou deux mises à jour de Visual Studio 2008. Pour cela, cliquer sur "Afficher les mises à jour installées", puis désinstallez les mise à jour de Visual Studio KB949325, et KB944899.

    Si vous ne désinstallez pas ces mises à jour, le programme d'installation des Service Packs ne fonctionnera pas.

    4. Les versions de Expression Blend antérieures au 9 mai 2008 ne fonctionneront plus avec .NET 3.5 SP1. Poubelle ! A désinstaller ! Même la dernière version 2.5. Heureusement, il existe déjà une mise à jour de Blend 2.5 : elle porte le même nom, "Expression Blend 2.5 March 2008 Preview", mais son numéro de version est 2.1.1113.

    5. Installez Visual Studio 2008 Service Pack 1 Beta

    6. Installez .NET Framework 3.5 Service Pack 1 Beta

    7. Installez Expression Blend 2.5 March 2008 Preview Refresh v2.1.1113

    8. Et voilà !

     

     16 May 2008, 16:40