<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Sébastien Bovo // Code with Microsoft!</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/sbovo/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/sbovo/feed.xml</link>
    <description />
    <lastBuildDate>Tue, 16 Apr 2019 05:50:05 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Using the Desktop App Converter tool on an updated Windows version</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/using-the-desktop-app-converter-tool-on-an-updated-windows-version</link>
      <pubDate>Thu, 19 Oct 2017 15:15:24 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/?p=1095</guid>
      <description><![CDATA[Being able to distribute your classic Desktop App through the Windows Store is a great opportunity...]]></description>
      <content:encoded><![CDATA[Being able to distribute your classic Desktop App through the Windows Store is a great opportunity to target the 500M+ Windows 10 active users!

So you may be using the <strong>Desktop App Converter tool</strong> as explained in the following AppConsult blog article from <a target="_blank" href="https://twitter.com/qmatteoq" rel="noopener noreferrer">Matteo</a>: Porting and testing your classic desktop applications on Windows 10 S with the Desktop Bridge - <a href="https://blogs.msdn.microsoft.com/appconsult/2017/06/15/porting-and-testing-your-classic-desktop-applications-on-windows-10-s-with-the-desktop-bridge/" title="https://blogs.msdn.microsoft.com/appconsult/2017/06/15/porting-and-testing-your-classic-desktop-applications-on-windows-10-s-with-the-desktop-bridge/">https://blogs.msdn.microsoft.com/appconsult/2017/06/15/porting-and-testing-your-classic-desktop-applications-on-windows-10-s-with-the-desktop-bridge/</a>

On Tuesday, we release the Fall Creators Update version of Windows and if you installed it, you may have the following error when trying to use Desktop App Converter:

<img width="662" height="52" title="clip_image001" style="border: 0px currentcolor" alt="clip_image001" src="https://msdnshared.blob.core.windows.net/media/2017/10/clip_image0011.jpg" border="0" />

This message is not due to the Fall Creators update itself but more to the fact that the base image you used to configure the DesktopAppConverter tool is not more the same as the operating system.

To solve this, you just have to download the Fall Creators Update image from <a href="https://www.microsoft.com/en-us/download/details.aspx?id=56049">https://www.microsoft.com/en-us/download/details.aspx?id=56049</a> and select the 16299 one:

<img width="531" height="558" title="clip_image002" style="border: 0px currentcolor" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/2017/10/clip_image00228.jpg" border="0" />

Once downloaded, just setup the DAC tool using the command:
<pre>DesktopAppConverter.exe -Setup -BaseImage "BaseImage-16299.wim" -verbose</pre>
You are now good to go!]]></content:encoded>
    </item>
    <item>
      <title>Utiliser l'outil Desktop App Converter sur une version mise à jour de Windows</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/utiliser-loutil-desktop-app-converter-sur-une-version-mise-a-jour-de-windows</link>
      <pubDate>Thu, 19 Oct 2017 08:11:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/?p=1145</guid>
      <description><![CDATA[Etre en mesure de distribuer votre application Desktop à travers le Store Windows est l'opportunité...]]></description>
      <content:encoded><![CDATA[Etre en mesure de distribuer votre application Desktop à travers le Store Windows est l'opportunité de pouvoir cibler les plus de 500 millions d'utilisateurs actifs de Windows 10 !

Si tel est le cas, vous utilisez surement l'outil <strong>Desktop App Converter tool</strong> comme expliqué dans l'article de <a target="_blank" href="https://twitter.com/qmatteoq" rel="noopener noreferrer">Matteo</a> du Blog AppConsult : Porting and testing your classic desktop applications on Windows 10 S with the Desktop Bridge - <a href="https://blogs.msdn.microsoft.com/appconsult/2017/06/15/porting-and-testing-your-classic-desktop-applications-on-windows-10-s-with-the-desktop-bridge/" title="https://blogs.msdn.microsoft.com/appconsult/2017/06/15/porting-and-testing-your-classic-desktop-applications-on-windows-10-s-with-the-desktop-bridge/">https://blogs.msdn.microsoft.com/appconsult/2017/06/15/porting-and-testing-your-classic-desktop-applications-on-windows-10-s-with-the-desktop-bridge/</a>

Ce mardi, nous avons rendu public la version Fall Creators Update de Windows et si vous l'avez installée, vous avez le message suivant lorsque vous utilisez Desktop App Converter:

<a href="https://msdnshared.blob.core.windows.net/media/2017/10/clip_image0016.jpg"><img width="662" height="52" title="clip_image0016" style="margin: 0px;border: 0px currentcolor" alt="clip_image0016" src="https://msdnshared.blob.core.windows.net/media/2017/10/clip_image0016_thumb.jpg" border="0" /></a>

Ce message n'est pas dû à la mise à jour Fall Creators update elle-même mais au fait que l'image utilisée par l'outil n'est plus la même que celle du système d'exploitation.

Pour résoudre ce problème, il vous suffit de télécharger l'image 16299 (Fall Creators Update) depuis <a href="https://www.microsoft.com/en-us/download/details.aspx?id=56049">https://www.microsoft.com/en-us/download/details.aspx?id=56049</a> :

<a href="https://msdnshared.blob.core.windows.net/media/2017/10/clip_image00261.jpg"><img width="531" height="558" title="clip_image0026" style="border: 0px currentcolor" alt="clip_image0026" src="https://msdnshared.blob.core.windows.net/media/2017/10/clip_image0026_thumb.jpg" border="0" /></a>

Une fois l'image téléchargée, lancer la commande suivante permettra à l'outil Desktop App Converter d'utiliser cette nouvelle image :
<pre>DesktopAppConverter.exe -Setup -BaseImage "BaseImage-16299.wim" -verbose</pre>
Vous êtes paré pour continuer !]]></content:encoded>
    </item>
    <item>
      <title>Windows Mixed Reality platform is here! (updated on 2017/12/01)</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/windows-mixed-reality-platform-is-here</link>
      <pubDate>Tue, 17 Oct 2017 09:35:34 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/?p=965</guid>
      <description><![CDATA[Developers: We can’t wait to see what you will create!!

To develop your apps and...]]></description>
      <content:encoded><![CDATA[<a href="https://msdnshared.blob.core.windows.net/media/2017/10/image6410.png"><img width="640" height="458" title="image64" style="margin: 0px;border: 0px currentcolor" alt="image64" src="https://msdnshared.blob.core.windows.net/media/2017/10/image64_thumb.png" border="0" /></a>

Developers: We can’t wait to see what you will create!!

To develop your apps and games,
<table border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td width="90" valign="top" style="text-align: center"><a href="https://msdnshared.blob.core.windows.net/media/2017/10/image_thumb1610.png"><img width="80" height="80" title="image_thumb16" style="margin: 0px;border: 0px currentcolor" alt="image_thumb16" src="https://msdnshared.blob.core.windows.net/media/2017/10/image_thumb16_thumb.png" border="0" /></a></td>
<td valign="center">Install the latest Windows 10 version named <strong>Fall Creators Update </strong>available today. It is the version 1709 Build 16299.15</td>
</tr>
<tr>
<td width="90" valign="top"><a href="https://msdnshared.blob.core.windows.net/media/2017/10/image6010.png"><img width="86" height="80" title="image60" class="aligncenter" style="margin: 0px;border: 0px currentcolor" alt="image60" src="https://msdnshared.blob.core.windows.net/media/2017/10/image60_thumb.png" border="0" /></a></td>
<td valign="center">Download the  version<strong> Unity3D <strong>2017.2</strong></strong>. The actual version is 2017.2.0p2-MRTP5 - <a href="https://beta.unity3d.com/download/a07ad30bae31/download.html">https://beta.unity3d.com/download/a07ad30bae31/download.html</a></td>
</tr>
<tr>
<td width="90" valign="top"><a href="https://msdnshared.blob.core.windows.net/media/2017/10/image6210.png"><img width="83" height="80" title="image62" class="aligncenter" style="margin: 0px;border: 0px currentcolor" alt="image62" src="https://msdnshared.blob.core.windows.net/media/2017/10/image62_thumb.png" border="0" /></a></td>
<td valign="center">Last but not least, update to <strong>Visual Studio 2017 Version 15.4 </strong>in order to be able to target Windows Mixed Reality SDK 10.0.16299.0 - <a href="https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/" title="https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/">https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/</a></td>
</tr>
</tbody>
</table>
&nbsp;

The best entry point would be the GitHub project <a target="_blank" href="https://github.com/Microsoft/MixedRealityToolkit-Unity" rel="noopener">Microsoft/MixedRealityToolkit-Unity</a> !

Enjoy!

\\ Sebastien.]]></content:encoded>
    </item>
    <item>
      <title>La plateforme Windows Mixed Reality est arrivée ! (Mise à jour le 1 dec 2017)</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/la-plateforme-windows-mixed-reality-est-arrivee</link>
      <pubDate>Tue, 17 Oct 2017 09:13:48 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/?p=905</guid>
      <description><![CDATA[Développeurs : A vos outils ! Nous sommes impatient de voir ce que vous pouvez créer !!

Pour...]]></description>
      <content:encoded><![CDATA[<img width="640" height="458" title="image" style="border: 0px currentcolor" alt="image" src="https://msdnshared.blob.core.windows.net/media/2017/10/image905.png" border="0" />

Développeurs : A vos outils ! Nous sommes impatient de voir ce que vous pouvez créer !!

Pour développer vos applications et jeux,
<table border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td width="90" valign="top" style="text-align: center"><a href="https://msdnshared.blob.core.windows.net/media/2017/10/image906.png"><img width="80" height="80" title="image" style="border: 0px currentcolor" alt="image" src="https://msdnshared.blob.core.windows.net/media/2017/10/image_thumb886.png" border="0" /></a></td>
<td valign="center">Installez la version <strong>Fall Creators Update </strong>de Windows 10 disponible dès aujourd’hui. Il s’agit de la version 1709 Build 16299.15</td>
</tr>
<tr>
<td width="90" valign="top"><img width="86" height="80" title="image" class="aligncenter" style="border: 0px currentcolor" alt="image" src="https://msdnshared.blob.core.windows.net/media/2017/10/image907.png" border="0" /></td>
<td valign="center">Téléchargez <strong>Unity3D</strong> <b>2017.2</b>. La version actuelle est <span style="float: none;background-color: transparent;color: #333333;cursor: text;font-family: Georgia,'Times New Roman','Bitstream Charter',Times,serif;font-size: 16px;font-style: normal;font-variant: normal;font-weight: 400;letter-spacing: normal;line-height: 24px;text-align: left;text-decoration: none;text-indent: 0px">2017.2.0p2-MRTP5 - </span><a href="https://beta.unity3d.com/download/a07ad30bae31/download.html">https://beta.unity3d.com/download/a07ad30bae31/download.html</a><span style="float: none;background-color: transparent;color: #333333;cursor: text;font-family: Georgia,'Times New Roman','Bitstream Charter',Times,serif;font-size: 16px;font-style: normal;font-variant: normal;font-weight: 400;letter-spacing: normal;line-height: 24px;text-align: left;text-decoration: none;text-indent: 0px"> </span></td>
</tr>
<tr>
<td width="90" valign="top"><img width="83" height="80" title="image" class="aligncenter" style="border: 0px currentcolor" alt="image" src="https://msdnshared.blob.core.windows.net/media/2017/10/image908.png" border="0" /></td>
<td valign="center">Enfin, faites la mise à jour <strong>Visual Studio 2017 Version 15.4 </strong>pour cibler Windows Mixed Reality - <a href="https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/" title="https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/">https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/</a></td>
</tr>
</tbody>
</table>
&nbsp;

Le point d’entrée le plus utile est surement le projet GitHub <a target="_blank" href="https://github.com/Microsoft/MixedRealityToolkit-Unity" rel="noopener">Microsoft/MixedRealityToolkit-Unity</a> !

Amusez-vous bien !

\\ Sebastien.]]></content:encoded>
    </item>
    <item>
      <title>//build/ Jour 2 depuis San Francisco</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/build-jour-2-depuis-san-francisco</link>
      <pubDate>Fri, 04 Apr 2014 00:49:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/2014/04/04/build-jour-2-depuis-san-francisco/</guid>
      <description><![CDATA[//build/ Keynote 1 - https://blogs.msdn.com/b/sbovo/archive/2014/04/03/buildjour1.aspx&#160;  Le...]]></description>
      <content:encoded><![CDATA[<p align="justify"><img title="7003a4cd-bb9d-44cb-8e28-75d93f39e3b1" style="border: 0px currentcolor; display: inline;" border="0" alt="7003a4cd-bb9d-44cb-8e28-75d93f39e3b1" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/7142.7003a4cdbb9d44cb8e2875d93f39e3b1_2F918DAF.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/7142.7003a4cdbb9d44cb8e2875d93f39e3b1_5F00_2F918DAF.png" width="860" height="179" /></p>  <p align="right">//build/ Keynote 1 - <a title="https://blogs.msdn.com/b/sbovo/archive/2014/04/03/buildjour1.aspx" href="https://blogs.msdn.com/b/sbovo/archive/2014/04/03/buildjour1.aspx" target="_blank">https://blogs.msdn.com/b/sbovo/archive/2014/04/03/buildjour1.aspx</a>&#160;</p>  <p>Le Keynote du jour 2 nous a inondé de <strong>nouveautés développement</strong> et <strong>Azure</strong>. Plus de 44 annonces ont été mentionnées ! Voici celles qui ont retenu mon attention. </p>  <p>Nous pouvons maintenant créer nos machines virtuelles directement à partir de Visual Studio. Le débogage du code Azure se fait depuis le poste client comme si l’on débugue localement un processus : Un agent de débogage est déployé sur la VM de façon transparente. C’est une fonctionnalité réellement impressionnante !</p>  <p>En résumé :</p>  <ul>   <li>JAVA est disponible pour Azure Web Sites</li>    <li>Browser Link --&gt; Ou comment modifier le code HTML client à l’aide des outils de développement Internet Explorer ; la synchronisation s’effectue de façon transparente dans le code ASP.NET !</li>    <li>Les Azure Mobile Services peuvent désormais se coder en .NET</li>    <li>Pour gagner du temps, une page et un client de test sont générés automatiquement pour tester nos Azure Mobile Services</li>    <li>Roselyn déstructure la boite noire nommée &quot;Compilateur&quot; : Microsoft la rend publique et le projet devient OpenSource. Nous pouvons créer un repository local et en modifier le code C# ! L’un des premiers outils à intégrer Roselyn sera surement Xamarin.</li>    <li>Nous avons la preuve que Microsoft continue ses initiatives OpenSource avec la création de .NET foundation</li> </ul>  <blockquote>   <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3187.WP_20140403_09_54_22_Pro_5ABBC3E5.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3187.WP_5F00_20140403_5F00_09_5F00_54_5F00_22_5F00_Pro_5F00_5ABBC3E5.jpg" target="_blank"><img title="WP_20140403_09_54_22_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140403_09_54_22_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3146.WP_20140403_09_54_22_Pro_thumb_588D1C01.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3146.WP_5F00_20140403_5F00_09_5F00_54_5F00_22_5F00_Pro_5F00_thumb_5F00_588D1C01.jpg" width="400" height="225" /></a></p> </blockquote>  <ul>   <li>Les Web Application Template supportent le mode Offline : Ce qui permet aux applications de fonctionner même déconnectées du réseau à partir du moment qu’une navigation a été faite par l’utilisateur pour charger les données en local</li>    <li>AppInsights est opérationnel dans Azure</li>    <li>L'expérience DevOps intégré dans le portail Azure est impressionnante</li>    <li>Pour les technologies existantes : Support des APIs Office365 multiplateformes</li> </ul>  <p>&#160;</p>  <p>Le portail Azure a surement demandé beaucoup de travail : il nous apparaît entièrement personnalisable et particulièrement intuitif. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3426.WP_20140403_10_00_51_Pro_27793188.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3426.WP_5F00_20140403_5F00_10_5F00_00_5F00_51_5F00_Pro_5F00_27793188.jpg" target="_blank"><img title="WP_20140403_10_00_51_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140403_10_00_51_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1803.WP_20140403_10_00_51_Pro_thumb_6D0C128B.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1803.WP_5F00_20140403_5F00_10_5F00_00_5F00_51_5F00_Pro_5F00_thumb_5F00_6D0C128B.jpg" width="400" height="225" /></a></p>  <p>Pour terminer :</p>  <ul>   <li>Puppet Labs est maintenant disponible sur Azure et facilite la configuration des VMs (m’en demandez pas plus:-))</li>    <li>Déployer une application Azure Web Site en Staging et la basculer en production peut se faire par un simple clic (fonctionnalité nommée SWAP)&#160;&#160; </li>    <li>Traffic Manager permet d'avoir une seule entrée DNS et de router les utilisateurs vers les serveurs Azure les plus proches de leur localisation sur le globe (dans leur région géographique)</li>    <li>L'authentification sur les Azure Mobiles Services peut désormais utiliser Active Directory et ceci en multi-devices</li>    <li>Concernant les bases de données SQL Azure, le SLA passe à 99,95% SLA et la limite monte à 500Go</li> </ul>  <p>Les deux Keynotes ont tenu leurs promesses, nous n’avons plus qu’à tester et mettre en pratique toutes ces innovations !</p>  <p>A bientôt,</p>  <p>//Sebastien.</p>  <p>--</p>  <p>Pour aller plus loin, toutes les sessions sont disponibles sur <a href="https://channel9.msdn.com/Events/Build/2014" target="_blank">https://channel9.msdn.com/Events/Build/2014</a>.</p>  <p>Références :</p>  <p>BUILD Day 2: Keynote Summary - <a title="https://blogs.msdn.com/b/steve_fox/archive/2014/04/03/build-day-2-keynote-summary.aspx" href="https://blogs.msdn.com/b/steve_fox/archive/2014/04/03/build-day-2-keynote-summary.aspx" target="_blank">https://blogs.msdn.com/b/steve_fox/archive/2014/04/03/build-day-2-keynote-summary.aspx</a></p>  <p>Welcome to the .NET Foundation - <a title="https://www.dotnetfoundation.org/" href="https://www.dotnetfoundation.org/" target="_blank">https://www.dotnetfoundation.org/</a></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0118.WP_20140403_11_45_45_Pro_54F3F857.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0118.WP_5F00_20140403_5F00_11_5F00_45_5F00_45_5F00_Pro_5F00_54F3F857.jpg" target="_blank"><img title="WP_20140403_11_45_45_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140403_11_45_45_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/2450.WP_20140403_11_45_45_Pro_thumb_74F83A97.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/2450.WP_5F00_20140403_5F00_11_5F00_45_5F00_45_5F00_Pro_5F00_thumb_5F00_74F83A97.jpg" width="240" height="135" /></a>&#160;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/7673.WP_20140402_22_30_59_Pro_7BAB441A.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/7673.WP_5F00_20140402_5F00_22_5F00_30_5F00_59_5F00_Pro_5F00_7BAB441A.jpg" target="_blank"><img title="WP_20140402_22_30_59_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140402_22_30_59_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/7674.WP_20140402_22_30_59_Pro_thumb_321BF61D.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/7674.WP_5F00_20140402_5F00_22_5F00_30_5F00_59_5F00_Pro_5F00_thumb_5F00_321BF61D.jpg" width="240" height="135" /></a></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5148.WP_20140403_15_41_22_Pro_2F21C030.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5148.WP_5F00_20140403_5F00_15_5F00_41_5F00_22_5F00_Pro_5F00_2F21C030.jpg" target="_blank"><img title="WP_20140403_15_41_22_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140403_15_41_22_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/6746.WP_20140403_15_41_22_Pro_thumb_66762843.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/6746.WP_5F00_20140403_5F00_15_5F00_41_5F00_22_5F00_Pro_5F00_thumb_5F00_66762843.jpg" width="240" height="135" /></a> <a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1258.WP_20140403_15_44_56_Pro_23197708.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1258.WP_5F00_20140403_5F00_15_5F00_44_5F00_56_5F00_Pro_5F00_23197708.jpg" target="_blank"><img title="WP_20140403_15_44_56_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140403_15_44_56_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5822.WP_20140403_15_44_56_Pro_thumb_2F294814.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5822.WP_5F00_20140403_5F00_15_5F00_44_5F00_56_5F00_Pro_5F00_thumb_5F00_2F294814.jpg" width="240" height="135" /></a></p>]]></content:encoded>
    </item>
    <item>
      <title>//build/ Jour 1 depuis San Francisco</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/build-jour-1-depuis-san-francisco</link>
      <pubDate>Thu, 03 Apr 2014 02:22:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/2014/04/03/build-jour-1-depuis-san-francisco/</guid>
      <description><![CDATA[Le Keynote de la 1ere journée de la conférence Build n’a pas été avare en nouveautés Windows,...]]></description>
      <content:encoded><![CDATA[<p><img title="Build" style="border: 0px currentcolor; margin-right: 0px; margin-left: 0px; display: inline;" border="0" alt="Build" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/2308.Build_7B8BD002.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/2308.Build_5F00_7B8BD002.png" width="870" height="225" /> </p>  <p>Le Keynote de la 1ere journée de la conférence <a href="https://www.buildwindows.com/" target="_blank">Build</a> n’a pas été avare en nouveautés Windows, Windows Phone et Xbox !</p>  <p><strong>Office devient moderne</strong> à la fois sur tablette/PC et sur téléphone ! Développé à partir du même code (ou pour la majeure partie) !</p>  <p><strong>La nouvelle version de Windows Phone est la 8.1</strong>. Elle sera compatible avec les téléphones Lumia déjà présents sur le marché. Voici quelques unes des innovations qui sont amenées :</p>  <ul>   <li>Un centre d’actions regroupant entre autres les notifications des applications. Cet écran est affiché lorsque l’on fait un glissé tactile du haut de l’écran vers le bas</li>    <li>Il est possible d’utiliser un fond d’écran pour notre menu de démarrage</li>    <li>L’écran de verrouillage est maintenant entièrement personnalisable (pas seulement visuellement avec une image mais avec une application</li>    <li>Cortana est notre nouvel(le) assistant(te) personnel(le) qui nous aidera dans toutes nos taches comme les recherches sur notre téléphone ou sur internet, le lancement/utilisation de nos applications</li>    <li>WifiSense permettra de se connecter facilement à un réseau Wifi</li>    <li>Le nouveau clavier Word flow est le plus rapide au monde</li>    <li>Coté entreprise, le VPN fait son apparition ainsi que le chiffrement des emails (S-Mime)</li>    <li>IE11, WebGL sont de la partie</li>    <li>Le roaming est utilisable pour les applications Windows Phone</li>    <li>La sauvegarde dans le Cloud nous permet de restaurer entièrement le menu de démarrage (que personnellement, je mets des jours a personnaliser ou optimiser :-))</li> </ul>  <p>Nokia annonce aussi de nouveaux téléphones dont un avec deux cartes SIM : les tuiles liées à chaque carte seront de couleurs différentes.</p>  <p><strong>L’update 1 de Windows 8.1</strong> est aussi une mine de nouveautés </p>  <ul>   <li>L’écran de démarrage s’enrichie d’une tuile de paramétrage ainsi que d’un bouton de recherche et de mise hors tension en haut à droite</li>    <li>Le confort d’utilisation du tactile mais surtout du clavier/souris a été réellement privilégié</li>    <li>Les applications modernes sont utilisables dans les fenêtres classiques de bureau</li>    <li>Le Store Windows et téléphone est unifié</li> </ul>  <p>Les <strong>Universal Windows Apps </strong>sont disponibles dans Visual Studio 2013 Update 2 et permettent de créer à partir d’une même solution une application Windows Store et une application Windows Phone. Nous pouvons même aller jusqu’à la Xbox One ! </p>  <p>Le code n’est pas 100% identique pour toutes les plateformes mais nous nous en rapprochons avec un projet partagé, le runtime Windows est, pour la très grande majorité des APIs, commun.</p>  <p>//Sebastien.</p>  <p>--</p>  <p>Pour aller plus loin, retrouvez le résumé du Keynote jour 2 - <a href="https://blogs.msdn.com/b/sbovo/archive/2014/04/03/buildjour2.aspx" target="_blank">https://blogs.msdn.com/b/sbovo/archive/2014/04/03/buildjour2.aspx</a>&#160; </p>  <p>Toutes les sessions sont disponibles sur <a title="https://channel9.msdn.com/Events/Build/2014" href="https://channel9.msdn.com/Events/Build/2014" target="_blank">https://channel9.msdn.com/Events/Build/2014</a></p>  <p>Références :</p>  <p>Thoughts on Day 1 of Build 2014 - <a title="https://blogs.windows.com/windows/b/bloggingwindows/archive/2014/04/02/thoughts-on-day-1-of-build-2014.aspx" href="https://blogs.windows.com/windows/b/bloggingwindows/archive/2014/04/02/thoughts-on-day-1-of-build-2014.aspx" target="_blank">https://blogs.windows.com/windows/b/bloggingwindows/archive/2014/04/02/thoughts-on-day-1-of-build-2014.aspx</a>&#160;</p>  <p>Extending platform commonality through universal Windows apps - <a title="https://blogs.windows.com/windows/b/buildingapps/archive/2014/04/02/extending-platform-commonality-through-universal-windows-apps.aspx" href="https://blogs.windows.com/windows/b/buildingapps/archive/2014/04/02/extending-platform-commonality-through-universal-windows-apps.aspx">https://blogs.windows.com/windows/b/buildingapps/archive/2014/04/02/extending-platform-commonality-through-universal-windows-apps.aspx</a></p>  <p>Cortana (yes!) and Many, Many Other Great Features coming in Windows Phone 8.1 - <a title="https://blogs.windows.com/windows_phone/b/windowsphone/archive/2014/04/02/cortana-yes-and-many-many-other-great-features-coming-in-windows-phone-8-1.aspx" href="https://blogs.windows.com/windows_phone/b/windowsphone/archive/2014/04/02/cortana-yes-and-many-many-other-great-features-coming-in-windows-phone-8-1.aspx" target="_blank">https://blogs.windows.com/windows_phone/b/windowsphone/archive/2014/04/02/cortana-yes-and-many-many-other-great-features-coming-in-windows-phone-8-1.aspx</a></p>  <p>Windows 8.1 Update – important refinements to the Windows experience - <a title="https://blogs.windows.com/windows/b/windowsexperience/archive/2014/04/02/windows-8-1-update-important-refinements-to-the-windows-experience.aspx" href="https://blogs.windows.com/windows/b/windowsexperience/archive/2014/04/02/windows-8-1-update-important-refinements-to-the-windows-experience.aspx" target="_blank">https://blogs.windows.com/windows/b/windowsexperience/archive/2014/04/02/windows-8-1-update-important-refinements-to-the-windows-experience.aspx</a></p>  <p></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1057.WP_20140331_11_01_38_Pro_049E482A.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1057.WP_5F00_20140331_5F00_11_5F00_01_5F00_38_5F00_Pro_5F00_049E482A.jpg" target="_blank"><img title="WP_20140331_11_01_38_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140331_11_01_38_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5633.WP_20140331_11_01_38_Pro_thumb_7415FD1D.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5633.WP_5F00_20140331_5F00_11_5F00_01_5F00_38_5F00_Pro_5F00_thumb_5F00_7415FD1D.jpg" width="240" height="135" /></a>&#160;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3858.WP_20140401_19_20_07_Pro_20F42FDA.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3858.WP_5F00_20140401_5F00_19_5F00_20_5F00_07_5F00_Pro_5F00_20F42FDA.jpg" target="_blank"><img title="WP_20140401_19_20_07_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140401_19_20_07_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0247.WP_20140401_19_20_07_Pro_thumb_31983C96.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0247.WP_5F00_20140401_5F00_19_5F00_20_5F00_07_5F00_Pro_5F00_thumb_5F00_31983C96.jpg" width="240" height="135" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/2671.WP_20140402_18_57_20_Pro_3A87CED5.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/2671.WP_5F00_20140402_5F00_18_5F00_57_5F00_20_5F00_Pro_5F00_3A87CED5.jpg" target="_blank"><img title="WP_20140402_18_57_20_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140402_18_57_20_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/7024.WP_20140402_18_57_20_Pro_thumb_679F4C54.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/7024.WP_5F00_20140402_5F00_18_5F00_57_5F00_20_5F00_Pro_5F00_thumb_5F00_679F4C54.jpg" width="240" height="135" /></a> <a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/4520.WP_20140401_19_19_54_Pro_0D8F0959.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/4520.WP_5F00_20140401_5F00_19_5F00_19_5F00_54_5F00_Pro_5F00_0D8F0959.jpg" target="_blank"><img title="WP_20140401_19_19_54_Pro" style="border: 0px currentcolor; display: inline;" border="0" alt="WP_20140401_19_19_54_Pro" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5670.WP_20140401_19_19_54_Pro_thumb_569B59E4.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5670.WP_5F00_20140401_5F00_19_5F00_19_5F00_54_5F00_Pro_5F00_thumb_5F00_569B59E4.jpg" width="240" height="135" /></a></p>]]></content:encoded>
    </item>
    <item>
      <title>Outils WinRT – la suite</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/outils-winrt-la-suite</link>
      <pubDate>Fri, 07 Mar 2014 08:15:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/2014/03/07/outils-winrt-la-suite/</guid>
      <description><![CDATA[Bonjour,  Dans le premier article suite à la session TechDays, je vous ai présenté les points...]]></description>
      <content:encoded><![CDATA[<p>Bonjour,</p>  <p>Dans le premier <a title="Outils WinRT (partie 1)" href="https://blogs.msdn.com/b/sbovo/archive/2014/02/17/outilsdebugwinrt.aspx" target="_blank">article</a> suite à la <a title="Session TechDays Debogage WinRT" href="https://www.microsoft.com/france/mstechdays/programmes/2014/fiche-session.aspx?ID=4c80262f-0b54-4ccc-9ced-49f0ae996d2b" target="_blank">session TechDays</a>, je vous ai présenté les points suivants :</p>  <ul>   <li>La méthode pour déboguer les applications lors de l’activation (par contrat ou par custom protocol par exemple)</li>    <li>Le débogage de votre code lors du <em>Suspend/Resume </em>et le lancement de l’application après un <em>Terminate</em></li> </ul>  <p>En parallèle, j’ai mentionné les outils</p>  <ul>   <li>PackageExplorer - <a title="PackageExplorer" href="https://www.c2i.fr/c2iPackageExplorer" target="_blank">https://www.c2i.fr/c2iPackageExplorer</a></li>    <li><a href="https://technet.microsoft.com/en-us/sysinternals/bb842062.aspx" target="_blank">DbgView</a> de SysInternals</li>    <li><a href="https://iinspectable.wordpress.com/2013/01/27/byebye-1-1-for-x64-and-x32-now/" target="_blank">ByeBye</a> de <a href="https://iinspectable.wordpress.com/" target="_blank">Christophe</a></li> </ul>  <p>&#160;</p>  <p>Voici la suite :-)</p>  <p>&#160;</p>  <h1>Débogage Mémoire – Profilage Mémoire JavaScript</h1>  <p>Pour illustrer la fonctionnalité de profilage Mémoire de Visual Studio 2013, créons un projet tout a fait standard de type <em>Split App </em>en Javascript :</p>  <p><img title="SplitApp" style="border: 0px currentcolor; display: inline;" border="0" alt="SplitApp" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5241.image_53FEA4CA.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5241.image_5F00_53FEA4CA.png" width="563" height="282" />&#160; <img title="Projet DiagnosticsPictures" style="border: 0px currentcolor; display: inline;" border="0" alt="Projet DiagnosticsPictures" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/6266.image_35B3EDD4.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/6266.image_5F00_35B3EDD4.png" width="290" height="279" /> </p>  <p>Il vous suffit ensuite d’utiliser des images avec une grande résolution :</p>  <p><img title="Images" style="display: inline;" border="0" alt="Images" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0552.image_704419F6.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0552.image_5F00_704419F6.png" width="574" height="143" /> </p>  <p>Et de modifier la fonction <em>generateSampleData </em>dans le fichier data.js pour utiliser ces images :</p>  <table><tbody>     <tr>       <td style="border: 1px dotted currentcolor;" bgcolor="#e1eaff" bordercolor="#000080"><font face="Courier New">           <p>&#160; function generateSampleData() {              <br />&#160;&#160;&#160; var itemContent = &quot;Quelque texte&quot;;               <br />&#160;&#160;&#160; var itemDescription = &quot;Item Description&quot;;               <br />&#160;&#160;&#160; var groupDescription = &quot;Group Description&quot;; </p>            <p>&#160;&#160;&#160; // These three strings encode placeholder images. You will want to set the              <br />&#160;&#160;&#160; // backgroundImage property in your real data to be URLs to images.               <br />&#160;&#160;&#160; var darkGray = &quot;../images/TechDays01.png&quot;;               <br />&#160;&#160;&#160; var lightGray = &quot;../images/TechDays02.png&quot;;               <br />&#160;&#160;&#160; var mediumGray = &quot;../images/TechDays03.png&quot;; </p>            <p>&#160;&#160;&#160; ... </p>         </font></td>     </tr>   </tbody></table>  <p></p>  <p>Testons directement l’application en activant le profilage mémoire JavaScript avec le menu ANALYSE / PERFORMANCE AND DIAGNOSTICS / JAVASCRIPT MEMORY de Visual Studio 2013 :</p>  <p><img title="PerformanceAndDiagnostics" style="border: 0px currentcolor; display: inline;" border="0" alt="PerformanceAndDiagnostics" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/4062.image_6BB86CE1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/4062.image_5F00_6BB86CE1.png" width="384" height="79" /> </p>  <p><img title="JavaScriptMemory" style="border: 0px currentcolor; display: inline;" border="0" alt="JavaScriptMemory" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3326.image_62CB6B53.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3326.image_5F00_62CB6B53.png" width="369" height="455" /> </p>  <p></p>  <p>L’application est donc lancée. Nous pouvons l’utiliser et à tout moment revenir sur Visual Studio pour en prendre une capture mémoire en cliquant sur le bouton <em>TAKE HEAP SNAPSHOT</em> :</p>  <p><img title="TakeHeapSnapShot" style="display: inline;" border="0" alt="TakeHeapSnapShot" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/7658.image_36AE6E62.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/7658.image_5F00_36AE6E62.png" width="255" height="420" /></p>  <p></p>  <p>Il est ainsi possible de suivre l’évolution de la consommation mémoire de l’application en fonction de son utilisation et de prendre plusieurs captures. Visual Studio vous permet de comparer ces captures et de vous indiquer </p>  <ul>   <li>quels objets ont été créés </li>    <li>lesquels ont été libérés</li> </ul>  <p>Lorsque que vous le souhaitez, utilisez le bouton STOP pour arrêter le profilage.</p>  <p><img title="Stop" style="display: inline;" border="0" alt="Stop" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/4846.image_46BD3D19.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/4846.image_5F00_46BD3D19.png" width="298" height="518" /> <img title="Memory" style="display: inline;" border="0" alt="Memory" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3125.image_7BDC67E6.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3125.image_5F00_7BDC67E6.png" width="279" height="258" /> </p>  <p>Nous pouvons donc visualiser les résultats dans un tableau :</p>  <p><img title="Size" style="display: inline;" border="0" alt="Size" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/2260.image_1DC7CA6B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/2260.image_5F00_1DC7CA6B.png" width="689" height="196" /> </p>  <p>Comment se fait-il que mes éléments <em>&lt;img&gt;</em> fassent 31Mo chacun alors que les images sur disque font au maximum 2,8Mo ? En définitive, nous avons des fichiers compressés et la décompression par Windows pour l’affichage créé des images de 3840*2160 = 8 Millions de pixels ! </p>  <p>La solution dans notre cas est de fournir des images dont la résolution est adaptée à celle de l’écran mais aussi fonction du DPI. </p>  <p>Voici deux liens pour vous aider :</p>  <ul>   <li>Choosing your app images - <a title="https://msdn.microsoft.com/en-us/library/windows/apps/Hh846296.aspx" href="https://msdn.microsoft.com/en-us/library/windows/apps/Hh846296.aspx">https://msdn.microsoft.com/en-us/library/windows/apps/Hh846296.aspx</a></li>    <li>Quickstart: Using file or image resources (Windows Store apps using JavaScript and HTML) - <a title="https://msdn.microsoft.com/en-us/library/windows/apps/hh465262.aspx" href="https://msdn.microsoft.com/en-us/library/windows/apps/hh465262.aspx">https://msdn.microsoft.com/en-us/library/windows/apps/hh465262.aspx</a></li> </ul>  <p></p>  <p>En réduisant la résolution à 800*450, nous avons plus qu’1,4Mo par tag <em>&lt;img&gt;</em> à la place de 31Mo (Nous divisons la taille par 22) ! Merci le profileur <strong>JavaScript Memory </strong>de Visual Studio !</p>  <p><img title="Taille des images" style="display: inline;" border="0" alt="Taille des images" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1524.image_58AEFD34.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1524.image_5F00_58AEFD34.png" width="563" height="143" /> </p>  <p><img title="SnapShot" style="display: inline;" border="0" alt="SnapShot" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/6761.image_03F624ED.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/6761.image_5F00_03F624ED.png" width="282" height="262" /> <img title="Size" style="display: inline;" border="0" alt="Size" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5415.image_7B511847.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5415.image_5F00_7B511847.png" width="637" height="194" /> </p>  <p>&#160;</p>  <p>&#160;</p>  <h1>Débogage Mémoire – Comparaison de dumps avec Visual Studio</h1>  <p>Regardons maintenant une application C# dont la consommation mémoire est, quelque peu, inquiétante. Pour s’en rendre compte, je vous invite à utiliser <a href="https://technet.microsoft.com/en-us/sysinternals/bb842062.aspx" target="_blank">Process Explorer</a> de SysInternals et de suivre les <em>private Bytes </em>(Mémoire réelle utilisée). Pour le processus correspondant à notre application, nous avons une courbe de ce type :</p>  <p><img title="Private Bytes dans Process Explorer" style="display: inline;" border="0" alt="Private Bytes dans Process Explorer" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3465.image_3C7BE63C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3465.image_5F00_3C7BE63C.png" width="422" height="175" /> </p>  <p>Comment savoir qui consomme la mémoire et surtout pourquoi il ne la libère pas ?</p>  <p>Avant, à l’ancienne :-), je prenais 2-3 dumps de mémoire séparés par quelques secondes et les ouvrais dans WinDbg. Le but du jeu était d’essayer d’identifier les objets .NET qui étaient chargées et quels étaient leur <em>root</em>. C’est à dire l’objet gardant un pointeur sur eux et empêchant leur libération par le Garbage Collector.</p>  <p>Mais ca… C’était <em>Avant</em>…. Maintenant, nous prenons toujours des dumps mais nous pouvons utiliser Visual Studio ! </p>  <p>&#160;</p>  <p>Pour la prise de dumps, j’utilise <a href="https://technet.microsoft.com/en-us/sysinternals/bb842062.aspx" target="_blank">ProcDump</a> de SysInternals. Il vous faut juste repérer le PID du processus (dans Process Explorer par exemple) et utiliser en ligne de commande administrateur :</p>  <table><tbody>     <tr>       <td style="border: 1px dotted currentcolor;" bgcolor="#e1eaff" bordercolor="#000080"><font face="Courier New">           <p>procdump -MA &lt;&lt;PID&gt;&gt; -o C:\Dumps\</p>         </font></td>     </tr>   </tbody></table>  <p>Prenez, par exemple, deux dumps séparés par quelques secondes d’utilisation de l’application afin d’avoir une différence de mémoire et de pouvoir ainsi comparer. Dans le cas ci-dessous, j’ai un premier dumps de 286Mo et un second de 359Mo.</p>  <p><img title="Dumps" style="display: inline;" border="0" alt="Dumps" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1070.image_5220F915.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1070.image_5F00_5220F915.png" width="654" height="250" /> </p>  <p>Maintenant, ouvrons Visual Studio et glissons/déplacer le premier dumps à l’intérieur :</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5700.image_2B97424C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5700.image_5F00_2B97424C.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/7065.image_thumb_74BCEE05.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/7065.image_5F00_thumb_5F00_74BCEE05.png" width="203" height="170" /></a> </p>  <p>Visual Studio analyse le contenu du fichier et nous propose dans un tableau tous les objets .NET issues de notre code. Il est ainsi aussi facile de les visualiser que si nous travaillons avec un tableau Excel. Vous retrouvez donc vos structures, objets, collections d’autant plus qu’ils portent les noms que vous leur avez donné :</p>  <p><img title="Liste des objets" style="display: inline;" border="0" alt="Liste des objets" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1538.image_56DE6A04.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1538.image_5F00_56DE6A04.png" width="781" height="218" /> </p>  <p>Le plus intéressant dans le cas d’une fuite mémoire est de pouvoir comparer deux dumps :</p>  <p><img title="Comparer les dumps" style="display: inline;" border="0" alt="Comparer les dumps" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/6835.image_78C9CC88.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/6835.image_5F00_78C9CC88.png" width="407" height="77" /> </p>  <p>Le tableau s’en trouve modifié comme suivant. Il nous montre notamment les différences en préfixant les valeurs par un &quot;+&quot; ou &quot;-&quot;. Je ne pense pas que l’on puisse faire plus simple ! </p>  <p>Dans la capture ci-dessous, nous avons 6 objets de type <em>SampleDataGroup </em>de moins dans le premier dumps par rapport au second. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0638.image_6433CE18.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0638.image_5F00_6433CE18.png" target="_blank"><img title="Différences des bjets .NET " style="display: inline;" border="0" alt="Différences des bjets .NET " src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5468.image_thumb_4891D2D3.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5468.image_5F00_thumb_5F00_4891D2D3.png" width="864" height="263" /></a></p>  <p>Dans la partie basse de la fenêtre, nous avons l’objet <em>root</em> qui <em>_SampleDataSource</em>. Il s’agit de notre contexte de données de l’application. Il nous reste donc à travailler sur le code afin de savoir comment nous ajoutons les <em>SampleDataGroup</em> à l’ObservableCollection.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/8547.image_1EB15E9E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/8547.image_5F00_1EB15E9E.png" target="_blank"><img title="root" style="display: inline;" border="0" alt="root" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0181.image_thumb_030F6359.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0181.image_5F00_thumb_5F00_030F6359.png" width="864" height="451" /></a> </p>  <p>&#160; </p>  <p> --</p>  <p>&#160;</p>  <p>Pour être totalement complet, il nous manque les explications/étapes correspondant à l'analyse de dumps provenant du Store.</p>  <p><em>Stay tuned!</em></p>  <p>&#160;</p>  <p>Sebastien.</p>]]></content:encoded>
    </item>
    <item>
      <title>Techdays 2014 – Session Débogguer des applications Windows Runtime</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/techdays-2014-session-dbogguer-des-applications-windows-runtime</link>
      <pubDate>Tue, 04 Mar 2014 06:55:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/2014/03/04/techdays-2014-session-dbogguer-des-applications-windows-runtime/</guid>
      <description><![CDATA[En parallèle des articles vous fournissant tous les outils et techniques (dont voici le premier :...]]></description>
      <content:encoded><![CDATA[<p>En parallèle des articles vous fournissant tous les outils et techniques (dont voici le premier : <a title="https://blogs.msdn.com/b/sbovo/archive/2014/02/17/outilsdebugwinrt.aspx" href="https://blogs.msdn.com/b/sbovo/archive/2014/02/17/outilsdebugwinrt.aspx" target="_blank">Outils de débogage WinRT</a>), vous trouverez l’enregistrement de la session sur le site TechDays directement - <a title="https://www.microsoft.com/france/mstechdays/programmes/2014/fiche-session.aspx?ID=4c80262f-0b54-4ccc-9ced-49f0ae996d2b" href="https://www.microsoft.com/france/mstechdays/programmes/2014/fiche-session.aspx?ID=4c80262f-0b54-4ccc-9ced-49f0ae996d2b" target="_blank">Débogguer des applications Windows Runtime</a>.</p>  <p>Je ne vous donne pas le lien vers les diapositives car il n’y en a pas :-) C’est l’effet de bord de notre idée “Session 100% démos” ;-)</p>  <p>Aussi, je vous prépare le second article sur les outils avec, entre autres,</p>  <ul>   <li>L’ouverture et la comparaison de dumps de mémoire avec Visual Studio 2013</li>    <li>Le profiling mémoire d’applications JavaScript toujours avec Visual Studio 2013</li>    <li>L’analyse d’un minidump provenant du Store avec WindDbg</li> </ul>  <p>A très vite,</p>  <p>Sebastien.</p>]]></content:encoded>
    </item>
    <item>
      <title>Ebook gratuit - Location Intelligence for Windows Store Apps</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/ebook-gratuit-location-intelligence-for-windows-store-apps</link>
      <pubDate>Tue, 04 Mar 2014 05:36:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/2014/03/04/ebook-gratuit-location-intelligence-for-windows-store-apps/</guid>
      <description><![CDATA[Ce livre est une référence sur l’utilisation de Bing Maps pour les applications Windows Store 8.1....]]></description>
      <content:encoded><![CDATA[<p><a href="https://www.lulu.com/shop/ricky-brundritt/location-intelligence-for-windows-store-apps/ebook/product-21468807.html" target="_blank"><img style="border: 0px currentcolor; margin-right: 0px; margin-left: 0px; display: inline;" border="0" alt="Location Intelligence for Windows Store Apps" src="https://static.lulu.com/browse/product_thumbnail.php?productId=21468807&amp;resolution=320" width="155" align="right" height="201" /></a></p>  <p>Ce livre est une référence sur l’utilisation de Bing Maps pour les applications Windows Store 8.1. Qui plus est, il est gratuit !</p>  <ul>   <li><a href="https://blogs.msdn.com/b/rbrundritt/archive/2014/03/04/free-ebook-location-intelligence-for-windows-store-apps.aspx" target="_blank">Description du livre</a></li>    <li><a href="https://rbrundritt.files.wordpress.com/2014/02/location_intelligence_for_windows_store_apps.pdf" target="_blank">Téléchargement direct</a>&#160; </li> </ul>  <p>Tous les exemples sont fournis (C#, VB.NET , JavaScript) –&gt; <a href="https://code.msdn.microsoft.com/Location-Intelligence-for-1c691d0e" target="_blank">https://code.msdn.microsoft.com/Location-Intelligence-for-1c691d0e</a> </p>  <p>Bonne lecture,</p>  <p>Sebastien.</p>]]></content:encoded>
    </item>
    <item>
      <title>Outils de débogage WinRT</title>
      <link>https://docs.microsoft.com/archive/blogs/sbovo/outils-de-dbogage-winrt</link>
      <pubDate>Mon, 17 Feb 2014 03:33:00 GMT</pubDate>
      <dc:creator><![CDATA[Sebastien Bovo]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/sbovo/2014/02/17/outils-de-dbogage-winrt/</guid>
      <description><![CDATA[Pour faire suite à notre session TechDays, nous vous livrons tous nos outils et secrets :-)  Voici...]]></description>
      <content:encoded><![CDATA[<p>Pour faire suite à notre <a href="https://www.microsoft.com/france/mstechdays/programmes/2014/fiche-session.aspx?ID=4c80262f-0b54-4ccc-9ced-49f0ae996d2b" target="_blank">session TechDays</a>, nous vous livrons tous nos outils et secrets :-)</p>  <p>Voici les premiers.</p>  <p>&#160;</p>  <h1>Débogage de l’activation des applications</h1>  <p>L’exemple est le suivant : Votre application implémente le contrat de partage et plante seulement lorsqu’elle reçoit des données. Bien évidement, il va sans dire que votre application se comporte tout a fait correctement si elle est déjà lancée de façon traditionnelle.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0763.image_278CF5DD.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0763.image_5F00_278CF5DD.png" target="_blank"><img title="AvantLePartage" style="display: inline;" border="0" alt="AvantLePartage" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/6888.image_thumb_52D41D95.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/6888.image_5F00_thumb_5F00_52D41D95.png" width="644" height="314" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/2727.image_6FDCCC5D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/2727.image_5F00_6FDCCC5D.png" target="_blank"><img title="ApresLePartage" style="display: inline;" border="0" alt="ApresLePartage" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3568.image_thumb_0F2203E2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3568.image_5F00_thumb_5F00_0F2203E2.png" width="644" height="276" /></a> </p>  <p>La question posée est : Comment déboguer une application qui ne fonctionne pas (crashe) lors d’un lancement (c’est à dire une Activation) par contrat ou par protocole ?</p>  <p></p>  <p>Simplement en modifiant les propriétés du projet dans Visual Studio 2013 avec un clic droit sur le projet / Properties / Onglet Debug et en cochant </p>  <p><strong>Do not launch, but debug my code when it starts</strong></p>  <p><img title="DoNotLaunchButDebugMyCodeWhenItStarts" style="display: inline;" border="0" alt="DoNotLaunchButDebugMyCodeWhenItStarts" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5001.image_54A8952D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5001.image_5F00_54A8952D.png" width="528" height="161" /> </p>  <p></p>  <p>Initiez ensuite le débogage classiquement avec F5 ; Visual Studio ne lance pas l’application mais déboguera le processus dès que vous allez le lancer par quelque moyen que ce soit. Merci Visual Studio !</p>  <p>De la même façon, pour l’activation par protocole, activez cette option et lancez votre application par une des méthodes suivantes :</p>  <ul>   <li>IE moderne ou classique en tapant &quot;VotreProtocole:Vos paramètres&quot;</li> </ul>  <p><img title="IEModerne" style="display: inline;" border="0" alt="IEModerne" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1524.image_0C7BD8E2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1524.image_5F00_0C7BD8E2.png" width="296" height="200" /> </p>  <p>IE vous demande de confirmer le changement d’application : </p>  <p>&#160;<img title="SwitchApp" style="display: inline;" border="0" alt="SwitchApp" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/2022.image_358677DE.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/2022.image_5F00_358677DE.png" width="401" height="145" /></p>  <p>L’application <em>ActivationURI </em>est ensuite lancée</p>  <p><img title="ApplicationActivationURI" style="display: inline;" border="0" alt="ApplicationActivationURI" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/3630.image_3E760A1D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/3630.image_5F00_3E760A1D.png" width="362" height="158" /> </p>  <ul>   <li>Touche Windows + R</li>    <li>Dans la barre de l’explorateur Windows</li>    <li>Par une application comme celle de Richard Clark - <a title="https://www.c2i.fr/c2iPackageExplorer" href="https://www.c2i.fr/c2iPackageExplorer" target="_blank">https://www.c2i.fr/c2iPackageExplorer</a>&#160;</li> </ul>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/0456.image_5DB8B0F0.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/0456.image_5F00_5DB8B0F0.png" target="_blank"><img title="PackageExplorer" style="display: inline;" border="0" alt="PackageExplorer" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5483.image_thumb_01E09C31.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5483.image_5F00_thumb_5F00_01E09C31.png" width="644" height="342" /></a> </p>  <p>&#160; </p>  <p>&#160;</p>  <h1>Débogage des évènements Suspend/Resume/Terminate</h1>  <p>Votre application plante sur du code s’exécutant lors du Suspend ou du Resume : Comment la déboguer ? En effet, si vous lancez l’application avec Visual Studio, nous n’aurons jamais de Suspend car une application WinRT déboguée n’est jamais suspendu !</p>  <p>Visual Studio à encore une fonctionnalité pour nous : la barre d’outils <strong>Debug Location</strong></p>  <p><img title="DebugLocationToolbar" style="display: inline;" border="0" alt="DebugLocationToolbar" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/5123.image_5D98276C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/5123.image_5F00_5D98276C.png" width="336" height="199" /> <img title="DebugLocation" style="display: inline;" border="0" alt="DebugLocation" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1731.image_0AAD143B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1731.image_5F00_0AAD143B.png" width="371" height="190" /> </p>  <p>L’utiliser simule les évènements <em>Suspend</em>, <em>Resume </em>voire <em>Suspend </em>suivi par une <em>Terminaison</em>. Vous pouvez, de ce fait, déboguer votre code mais aussi vérifier que vous faites le nécessaire pour sauvegarder/charger l’état de votre application en cas de <em>Terminaison</em>.</p>  <p>L’exemple que nous avons montré pendant la session n’était pas une simple exception lors du <em>Suspend</em>. En effet, nous avons simulé un traitement long. Le plantage venait donc du dépassement du temps alloué pour l’exécution du Suspend. </p>  <p>D’ailleurs, pour mentionner ce temps maximum alloué, fut un temps où il était indiqué dans les <a href="https://msdn.microsoft.com/en-us/library/windows/apps/hh694083.aspx" target="_blank">Certification requirements</a><em></em> des applications Windows Store (je me souviens de la <a href="https://msdn.microsoft.com/en-us/library/windows/apps/dn553416.aspx" target="_blank">version archivée 4.7</a> où le temps alloué était même de 2s !). Ce n’est plus le cas mais cela ne change pas le fait que ce temps est court et pour vous le prouver nous avons ajouté des traces dans le <em>Suspend</em> :</p>  <table><tbody>     <tr>       <td style="border: 1px dotted currentcolor;" bgcolor="#e1eaff" bordercolor="#000080"><font face="Courier New">           Debug.WriteLine(&quot;Demarrage du OnSuspending :&quot; + System.DateTime.Now);              <br />Debug.WriteLine(&quot;Fin attendu : &quot; + e.SuspendingOperation.Deadline);         </font></td>     </tr>   </tbody></table>  <p></p>  <p></p>  <p>Pour les visualiser, Visual Studio nous les affiche dans la fenêtre Output lors du débogage :</p>  <p><img title="OutputWindows" style="display: inline;" border="0" alt="OutputWindows" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1667.image_4CB3837C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1667.image_5F00_4CB3837C.png" width="382" height="109" /> </p>  <p>Nous pouvons aussi les intercepter lorsque l’application est installée ou hors de Visual Studio avec DbgView.exe de <a href="https://technet.microsoft.com/en-us/sysinternals/bb842062.aspx" target="_blank">SysInternals</a> :</p>  <p><img title="DbgView" style="display: inline;" border="0" alt="DbgView" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/1602.image_47D0CFC0.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/1602.image_5F00_47D0CFC0.png" width="605" height="226" /> </p>  <p>Cela confirme que notre code n’a que 5s pour travailler lors d’un <em>Suspend</em>. La recommandation est donc de mémoriser ce qui est important au fil de l’eau pour ne pas alourdir le traitement demandé lors d’un <em>Suspend</em>.</p>  <p></p>  <p>Vous allez me dire, oui ok, nous pouvons tester le <em>Suspend </em>hors Visual Studio car il suffit de basculer vers une autre application en plein écran et attendre que la notre soit suspendue. Mais comment simuler la <em>Terminaison </em>hors de Visual Studio ?</p>  <p>Nous avons <a href="https://iinspectable.wordpress.com/2013/01/27/byebye-1-1-for-x64-and-x32-now/" target="_blank">ByeBye</a> bien sùr ! Merci <a href="https://iinspectable.wordpress.com/" target="_blank">Christophe</a> :-) L’outil se charge d’allouer le maximum de mémoire RAM afin de forcer Windows à s’alléger des applications Windows Store qui seraient en mode <em>Suspend</em>. Nous pouvons donc vérifier que notre application se comporte correctement lorsque nous la relançons après une <em>Terminaison</em>.</p>  <p><img title="ByeBye" style="display: inline;" border="0" alt="ByeBye" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/72/92/metablogapi/4353.image_17A984FD.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-72-92-metablogapi/4353.image_5F00_17A984FD.png" width="358" height="170" /> </p>  <p></p>  <p>Il me restera à aborder dans mon prochain billet le débogage Mémoire et de dumps du Store.</p>  <p>Bon debug !</p>  <p>Sebastien.</p>]]></content:encoded>
    </item>
  </channel>
</rss>