tag:blogger.com,1999:blog-61378420937601335422023-06-20T09:58:17.405-04:00Le journal Web de Simon HébertPartage de mes découvertes et connaissances dans le domaine de la technologie.Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.comBlogger10125tag:blogger.com,1999:blog-6137842093760133542.post-5177025732118873002011-03-14T23:55:00.001-04:002011-03-14T23:56:11.516-04:00Sortie officielle d'Internet Explorer 9 en version finaleMicrosoft fait le lancement de la nouvelle version d'IE 9 aujourd'hui, le lundi 14 mars à 21h (heure du Pacifique). Pour le Québec (heure de l'Est), il s'agira donc d'une disponibilité en téléchargement à partir du 15 mars à 0h00 (3 heures plus tard).<br />
<br />
Le téléchargement se fait à cette page : <a href="http://windows.microsoft.com/fr-CA/internet-explorer/products/ie-9/home">http://windows.microsoft.com/fr-CA/internet-explorer/products/ie-9/home</a><br />
Toute l'information sur cette nouvelle version est disponible sur la page précédente ainsi que sur le site officiel suivant : <a href="http://www.beautyoftheweb.com/">http://www.beautyoftheweb.com/</a><br />
<br />
Cette nouvelle version n'est cependant pas compatible avec les versions de Windows antérieures à Vista et 7.Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-29373176439067571562011-03-08T22:40:00.007-05:002011-03-09T09:41:58.626-05:00Disponibilité du Service Pack 1 de Visual Studio 2010Microsoft a annoncé aujourd'hui la sortie de la version finale de Visual Studio 2010 Service Pack 1.<br />
<br />
La nouvelle version ainsi que la mise à jour (SP1) sont disponibles pour téléchargement sur MSDN pour les abonnés. Le Service Pack 1 sera également offert à tous de façon publique le 10 mars 2011.<br />
<br />
Téléchargement sur MSDN à partir de maintenant : <a href="https://msdn.microsoft.com/fr-ca/subscriptions/securedownloads/default.aspx?pv=18%3a370">https://msdn.microsoft.com/fr-ca/subscriptions/securedownloads/default.aspx?pv=18%3a370</a><br />
Téléchargement public à partir du 10 mars : <a href="http://go.microsoft.com/fwlink/?LinkId=209902">http://go.microsoft.com/fwlink/?LinkId=209902</a><br />
<br />
Tous les détails sont ici : <a href="http://support.microsoft.com/kb/983509">Description du Service Pack 1 de Visual Studio 2010</a><br />
<br />
Des renseignements concernant les améliorations et les nouveautés de Visual Studio 2010 SP1 sont aussi disponibles sur les pages des blogs MSDN suivants :<br />
<a href="http://blogs.msdn.com/b/jasonz/archive/2011/03/08/announcing-visual-studio-2010-service-pack-1.aspx">Jason Zander's WebLog</a><br />
<a href="http://blogs.msdn.com/b/somasegar/archive/2011/03/07/visual-studio-2010-enhancements.aspx?sf1158647=1">Somasegar's WebLog</a><a href="http://blogs.msdn.com/b/somasegar/archive/2011/03/07/visual-studio-2010-enhancements.aspx?sf1158647=1"><br />
</a>Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-35619715189214610192010-07-18T11:11:00.007-04:002010-09-08T19:53:57.225-04:00Code T-SQL pour réinitialiser le champ d'identité auto-incrémentiel d'une tableLe code suivant (pour Microsoft SQL Server) permet de réinitialiser la valeur du champ d'identité auto-incrémentiel d'une table SQL à une valeur quelconque (0 dans l'exemple) sans nécessiter de supprimer les données de la table.<br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
DBCC CHECKIDENT ('nom_table', RESEED, 0)</span><br />
<br />
Remplacer <i>nom_table</i> par le nom de votre table et <i>0</i> par la valeur de départ désirée.<br />
<br />
Pour vider le contenu d'une table (s'il n'y a pas de conflit d'intégrité référentielle) et réinitialiser le champ d'identité auto-incrémentiel dans une même opération, il suffit d'effectuer l'opération suivante :<br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
TRUNCATE TABLE nom_table</span>Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-45380842741102468012010-04-27T21:23:00.000-04:002010-04-28T11:03:05.929-04:00Contrôle Menu ASP.NET ne fonctionne plus correctement avec IE 8Depuis la sortie de la version 8 de Microsoft Internet Explorer, un problème est apparu avec le contrôle Web "Menu" dans ASP.NET 2.0. La portion dynamique du menu, qui utilise du code JavaScript, ne s'affiche plus et est remplacée par un carré blanc. Il s'agit principalement d'un bogue d'interprétation de la valeur CSS par défaut du "z-index" par le menu puisque la nouvelle version d'IE (en mode standard) ne gère plus cela comme auparavant. Plus précisément, "(element).currentStyle.zIndex" retourne maintenant "auto" au lieu d'une valeur numérique, lorsqu'il n'y a pas de propriété "z-index" de spécifiée.<br />
<br />
Il suffit de forcer le navigateur en mode compatibilité (IE 7) pour que le menu fonctionne à nouveau correctement. Évidemment, ce n'est pas une solution adéquate et ce n'est pas directement le navigateur qui est en cause, mais bien le code serveur (ressources) utilisé par le menu. <br />
<br />
Pour régler le problème, il faut installer une mise à jour sur son poste de développement (si besoin pour les tests) ainsi que sur le serveur Web où est publié le site ASP.NET qui utilise le contrôle Menu. Cette mise à jour n'est pas disponible par Windows/Microsoft Update et il faut la télécharger et l'installer manuellement. Le dernier Service Pack de Windows doit être déjà installé dans certains cas pour que cela fonctionne correctement.<br />
<br />
Le correctif (Patch/Hotfix) est disponible à l'adresse suivante : <a href="http://support.microsoft.com/kb/962351">http://support.microsoft.com/kb/962351</a> <br />
<br />
Si vous ne désirez/pouvez pas appliquer la mise à jour ci-dessus, voici une solution de contournement : <a href="http://weblogs.asp.net/mhildreth/archive/2009/01/26/testing.aspx">http://weblogs.asp.net/mhildreth/archive/2009/01/26/testing.aspx</a><br />
<br />
Note : Le contrôle Menu a été réécrit avec ASP.NET 4.0 et le problème n'existe plus. Il utilise une syntaxe HTML/CSS/JavaScript plus respectueuse des standards et il devrait fonctionner adéquatement avec toutes les versions des navigateurs récents.<br />
<br />
Source : <a href="http://weblogs.asp.net/bleroy/archive/2009/03/23/asp-menu-fix-for-ie8-problem-available.aspx">http://weblogs.asp.net/bleroy/archive/2009/03/23/asp-menu-fix-for-ie8-problem-available.aspx</a>Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-84322398016855695132010-02-18T23:12:00.003-05:002010-02-18T23:17:02.464-05:00Code T-SQL pour obtenir uniquement la partie date d'une valeur de type date et heureCes exemples de code (pour Microsoft SQL Server) permettent de récupérer la portion date seulement d'un champ ou d'une variable ayant une valeur de type date et heure (datetime) combinée.<br />
<br />
Cela peut être utile par exemple pour comparer des données de date sans prendre en considération l'heure.<br />
<br />
Scénario d'utilisation pour les versions de SQL Server <= 2005 :<br />
<span style="font-family: "Courier New",Courier,monospace;"><br />
CAST(FLOOR(CAST(DateHeure AS float)) AS datetime) BETWEEN @DateDebut AND @DateFin</span><br />
<br />
Pour les versions de SQL Server >= 2008, il suffit de faire une conversion de type (CAST) puisque le type de données "date" est maintenant disponible :<br />
<br />
<span style="font-family: "Courier New",Courier,monospace;">CAST(DateHeure AS date) BETWEEN @DateDebut AND @DateFin</span>Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-55628570317547115102009-08-16T12:04:00.006-04:002009-09-21T14:44:32.303-04:00Code T-SQL pour hacher une chaîne de caractèresLe code qui suit (pour Microsoft SQL Server 2005 et supérieur) permet de hacher un texte selon les algorithmes de hachage suivants : MD2, MD4, MD5, SHA ou SHA1.<br /><br />Voici le code dans un exemple d'utilisation (si nécessaire, remplacez SHA1 par l'algorithme désiré) :<br /><span style="font-family:courier new;"><pre>SELECT SUBSTRING(master.dbo.fn_varbintohexstr(HashBytes('SHA1', 'MotDePasse')), 3, 40)</pre></span>Le format de données de la sortie de "HashBytes()" est binaire (hexadécimal). Dans cet exemple, les données binaires sont converties en texte avec la fonction "fn_varbintohexstr()" pour une utilisation directe comme chaîne de caractères. Les 2 premiers caractères (0x) qui déterminent le format hexadécimal sont aussi retirés du résultat avec "SUBSTRING()".Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-50337824122898918262009-04-02T21:05:00.010-04:002009-04-30T10:35:51.397-04:00Code T-SQL pour unir les valeurs d'une table dans une chaîne de caractèresLe code suivant (pour Microsoft SQL Server) permet de joindre les valeurs d'un champ d'une table afin de construire une chaîne de caractères dont chaque élément est séparé par un délimiteur (qui peut être personnalisé).<br /><br />La chaîne de caractères ainsi créée peut être utilisée, par exemple, pour passer en paramètre une liste de valeurs sous la forme sérialisée.<br /><br />Voici le code dans un exemple d'utilisation :<br /><span style="font-family:courier new;"><pre>DECLARE @Table table<br />(<br /> Value varchar(MAX)<br />)<br /><br />INSERT INTO @Table VALUES ('12'),('34'),('56'),('78'),('90')<br /><br />DECLARE @List varchar(MAX)<br />DECLARE @Delimiter varchar(5) = ','<br /><br />SELECT @List = COALESCE(@List + @Delimiter, '') + Value<br />FROM @Table<br /><br />SELECT @List</pre></span>Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-82170018310064341932009-03-02T22:52:00.019-05:002009-08-18T10:37:24.953-04:00Fonction T-SQL pour scinder une chaîne de caractères en tableLa fonction suivante (pour Microsoft SQL Server) permet de découper une chaîne de caractères selon un délimiteur quelconque (qui peut être passé en argument) et retourne une table contenant une ligne pour chacune des valeurs scindées.<br /><br />Cela permet donc, par exemple, de prendre un paramètre dans une procédure stockée de type "varchar(MAX)" comportant une chaîne de caractères avec des valeurs séparées par une virgule, et de découper chacune de ces valeurs pour les utiliser dans une liste "IN ( )" d'une clause "WHERE".<br /><br />Voici le code de la fonction :<br /><span style="font-family:courier new;"><pre>CREATE FUNCTION Split<br />(<br />@Delimiter varchar(5),<br />@List varchar(MAX)<br />)<br />RETURNS @TableOfValues table<br /> (<br /> RowID int IDENTITY(1,1),<br /> [Value] varchar(MAX)<br /> )<br />AS<br />BEGIN<br /> DECLARE @LenString int<br /><br /> SET @List = LTRIM(RTRIM(@List))<br /><br /> WHILE LEN(@List) > 0<br /> BEGIN<br /> SELECT @LenString =<br /> (CASE CHARINDEX(@Delimiter, @List)<br /> WHEN 0 THEN LEN(@List)<br /> ELSE (CHARINDEX(@Delimiter, @List) - 1)<br /> END)<br /><br /> INSERT INTO @TableOfValues<br /> SELECT SUBSTRING(@List, 1, @LenString)<br /><br /> SELECT @List =<br /> (CASE (LEN(@List) - @LenString)<br /> WHEN 0 THEN ''<br /> ELSE RIGHT(@List, LEN(@List) - @LenString - 1)<br /> END)<br /> END<br /> RETURN<br />END</pre></span>Voici maintenant le code d'un exemple d'utilisation de cette fonction :<br /><span style="font-family:courier new;"><pre>DECLARE @Table table<br />(<br /> TableID int<br />)<br /><br />INSERT INTO @Table VALUES ('12'),('34'),('56'),('78'),('90')<br /><br />DECLARE @List varchar(MAX)<br />SET @List = '12,34,56,78,90'<br /><br />SELECT * FROM @Table<br />WHERE TableID IN (SELECT CAST(Value AS int) FROM Split(',', @List))</pre></span>Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-22203584247861556492009-03-01T17:41:00.013-05:002009-03-02T22:48:27.169-05:00Windows 7 disponible dès cet automneIl semblerait que le nouveau système d'exploitation de Microsoft qui doit remplacer Windows Vista, soit Windows 7, sera disponible dès le début de l'automne prochain (fin septembre-début octobre) en version définitive selon plusieurs sites Web faisant mention qu'un important partenaire de Microsoft (Compal; un assembleur taïwanais qui construit des ordinateurs portatifs pour Acer et HP) aurait affirmé à ses investisseurs que la nouvelle version serait mise en vente à cette période. Microsoft n'aurait pas nié l'information.<br /><br />Pour plus de détails : <a href="http://www.pcinpact.com/actu/news/49355-windows-7-seven-disponibilite-septembre.htm">PC INpact</a><br /><br />Selon moi, cette version aurait dû être un Service Pack de Windows Vista afin d'éviter de faire payer une nouvelle version à la très grande majorité des utilisateurs qui voudront certainement remplacer Vista sur leurs ordinateurs pour libérer les ressources utilisées en trop par celui-ci.<br /><br />De plus, Windows 7 ressemble beaucoup à Windows Vista en terme de fonctionnalités et côté apparence (outre peut-être l'UAC moins invasif et plus raffiné). Il s'agit donc surtout d'une amélioration au niveau de la performance, de la stabilité et de la compatibilité du système, ce qui aurait justifié une simple mise à jour gratuite de Vista à mon point de vue.<br /><br />Peut-être que Microsoft souhaitait faire oublier le nom "Vista" en espérant avoir plus de chance avec le "7 chanceux" de Windows 7? Ou serait-ce pour respecter l'échéancier convenu d'environ 3 ans entre deux versions de Windows afin de ne pas répéter l'erreur du délai entre la sortie de Windows XP et Vista?<br /><br />En passant, le système d'exploitation pour serveur Windows Server 2008 est en grande partie basé sur le noyau de Vista, mais plusieurs fonctionnalités qui demandent beaucoup de ressources système sont désactivées par défaut ou tout simplement absentes.<br /><br />Personnellement, je trouve que le système d'exploitation Windows Vista (et ses dérivés) se comporte tout de même très bien en général. Le principal problème de celui-ci, c'est qu'il demande une machine relativement puissante et récente afin de fonctionner de façon aussi réactive que Windows XP par exemple. De plus, cette charge excessive du système limite la quantité de ressources disponibles pour les autres applications.<br /><br />À suivre...Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0tag:blogger.com,1999:blog-6137842093760133542.post-48357108042438111582009-02-28T10:10:00.001-05:002009-03-01T10:56:52.327-05:00Bienvenue!Bienvenue dans mon carnet personnel relatant, en matière de technologie, certains faits pertinents de l'actualité, les incontournables et mes découvertes. Plus précisément, ce journal a pour but de communiquer mes connaissances et mes opinions sur divers sujets techniques en informatique. Il se veut sans prétention et à titre informatif et éducatif. Les commentaires des lecteurs sont encouragés et donc, n'hésitez pas à faire part de vos réactions.Simon Héberthttp://www.blogger.com/profile/18082515229656950238noreply@blogger.com0