<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>João Filipe Rocha</title><link>http://pontonetpt.com/blogs/jf_rocha/default.aspx</link><description>Tudo sobre IT e .NET em Particular</description><language>pt</language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><image><url>http://www.feedburner.com/fb/images/pub/fb_pwrd.gif</url></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/JoaoFilipeRocha" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><title>Utilizar o IHttpHandler com Ajax</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/f-Dt3i8bZpA/utilizar-o-ihttphandler-com-ajax.aspx</link><category>Programming</category><category>Ajax</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Wed, 08 Jul 2009 03:56:21 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:35756</guid><description>&lt;p&gt;&amp;#160;&lt;img src="http://www.asp.net/App_Themes/Standard/i/ajax_logo.png" alt="" /&gt; &lt;/p&gt;  &lt;p&gt;Ao chamar um &lt;a href="http://msdn.microsoft.com/en-us/library/bb398986.aspx"&gt;Generic HTTP Handler&lt;/a&gt; (.ASHX) pelo URL, o ASP.NET avalia a forma de tratar o ficheiro conforme o que estiver defenido no web.config na tag &lt;strong&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa903367(VS.71).aspx"&gt;&amp;lt;httpHandlers&amp;gt;&lt;/a&gt;&lt;/strong&gt;. &lt;/p&gt;  &lt;p&gt;Acontece que se estivermos a trabalhar com Ajax, todos os pedidos HTTP passam pelo &lt;a href="http://www.asp.net/AJAX/documentation/live/ConfiguringASPNETAJAX.aspx#httpHandlers"&gt;handler do Ajax&lt;/a&gt; e o deste modo, quando efectuamos um pedido a um .ASHX o handler do ajax não sabe como dar resposta a esse pedido o que deixa a nossa aplicação “pendurada” á espera de resposta.&lt;/p&gt;  &lt;p&gt;Uma das soluções que encotrei para este problema é efectuar um postback na chamada ao handler, e fazendo desta forma:&lt;/p&gt;  &lt;p&gt;No markup da pagina defenimos o link que chama o .ashx&lt;/p&gt;  &lt;div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;" id="codeSnippetWrapper"&gt;   &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;     &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;asp:Linkbutton&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;id&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;btnFile&amp;quot;&lt;/span&gt; &lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#ff0000;"&gt;runat&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#ff0000;"&gt;onLoad&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;btnFile_Load&amp;quot;&lt;/span&gt; &lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#ff0000;"&gt;onClick&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;btnFile_Click&amp;quot;&lt;/span&gt; &lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#ff0000;"&gt;Text&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;Abrir Ficheiro&amp;quot;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;no Codebehind no evento Load do Linkbutton indicamos que este botão irá efectuar um postback:&lt;/p&gt;

&lt;div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:99.2%;padding-right:4px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;height:88px;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;" id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; btnFile_Load(&lt;span style="color:#0000ff;"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;{&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&amp;#160; SriptManager.GetCurrent(&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.Page).RegisterPostBackControl((Control)sender);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;E por fim definimos a chamada ao nosso link&lt;/p&gt;

&lt;div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;" id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; btnFile_Click(Object sender, EventArgs e)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;{&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    Response.Redirect(&lt;span style="color:#006080;"&gt;&amp;quot;../file.ashx&amp;quot;&lt;/span&gt;);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Desta forma os eventos do Linkbutton btnFile não passam pelo Handler do Ajax.&lt;/p&gt;

&lt;p&gt;Mas se mesmo assim necessitem de utilizar o Http Handler em conjunto com o Ajax então a unica solução é no .ASHX fazer o &lt;a href="http://msdn.microsoft.com/en-us/magazine/cc164128.aspx"&gt;handling assíncrono&lt;/a&gt; dos pedidos&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=35756" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/u1VEQVlq2oVtC7NpxJOd4xa1k98/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/u1VEQVlq2oVtC7NpxJOd4xa1k98/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/u1VEQVlq2oVtC7NpxJOd4xa1k98/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/u1VEQVlq2oVtC7NpxJOd4xa1k98/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/f-Dt3i8bZpA" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=35756</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/07/08/utilizar-o-ihttphandler-com-ajax.aspx</feedburner:origLink></item><item><title>Apontamentos de um Programador</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/1bpSbACYViw/P29571.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Tue, 30 Jun 2009 00:40:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:18400</guid><description>&lt;p&gt;&lt;img src="http://edspumps.com/UploadMediaFiles/image//REMINDER%20-%2001.gif" width="165" height="109" alt="" /&gt; &lt;/p&gt; &lt;p&gt;Para quem tem a profissão de Programador, por vezes torna-se dificil decorar tanta informação. Aqui ficam algums apontamentos que podem nos facilitar a vida.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Atalhos das Teclas para  &lt;ul&gt; &lt;li&gt;Visual Studio 2005 &lt;a href="http://download.microsoft.com/download/e/7/9/e79cce22-b196-4b9f-9ea7-b1a21f5342e9/VCSharp_2005_color.pdf"&gt;C#&lt;/a&gt; | &lt;a href="http://download.microsoft.com/download/d/6/5/d65efda0-cf25-4720-8013-b3080586c5bb/VB_2005_color.pdf"&gt;VB.NET&lt;/a&gt;  &lt;/li&gt;&lt;li&gt;Visual Studio 2008 &lt;a href="http://www.microsoft.com/downloads/info.aspx?na=22&amp;amp;p=1&amp;amp;SrcDisplayLang=en&amp;amp;SrcCategoryId=&amp;amp;SrcFamilyId=&amp;amp;u=%2fdownloads%2fdetails.aspx%3fFamilyID%3de5f902a8-5bb5-4cc6-907e-472809749973%26DisplayLang%3den"&gt;C#&lt;/a&gt; | &lt;a href="http://www.microsoft.com/downloads/info.aspx?na=22&amp;amp;p=10&amp;amp;SrcDisplayLang=en&amp;amp;SrcCategoryId=&amp;amp;SrcFamilyId=&amp;amp;u=%2fdownloads%2fdetails.aspx%3fFamilyID%3d255b8cf1-f6bd-4b55-bb42-dd1a69315833%26DisplayLang%3den"&gt;VB.NET&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;Code Snippets &lt;/li&gt; &lt;ul&gt; &lt;li&gt;Visual Studio &lt;a href="http://john-sheehan.com/blog/wp-content/uploads/vs2005-code-snippets.pdf"&gt;2005&lt;/a&gt; | &lt;a href="http://john-sheehan.com/blog/cheatsheets/visual-studio-2008-csharp-snippets.htm"&gt;2008&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;&lt;a href="http://www.sqldatabasetutorial.com/data/sqlcheetsheet.pdf"&gt;SQL Server&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/4/a/3/4a3c7c55-84ab-4588-84a4-f96424a7d82d/NET35_Namespaces_Poster_LORES.pdf"&gt;Namespaces Framework 3.5&lt;/a&gt;  &lt;/li&gt;&lt;li&gt;&lt;a href="http://acodingfool.typepad.com/blog/pdf/jquery_1.3_cheatsheet_v1.pdf"&gt;JQuery&lt;/a&gt; 1.3 &lt;/li&gt;&lt;li&gt;&lt;a href="http://snook.ca/files/prototype_1.5.0_snookca.pdf"&gt;Prototype Lib&lt;/a&gt; 1.5.0 &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.explainth.at/downloads/jsquick.pdf"&gt;Javascript&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mulberrytech.com/quickref/xslt2.pdf"&gt;XSLT&lt;/a&gt; 2.0 / &lt;a href="http://www.mulberrytech.com/quickref/xpath2.pdf"&gt;XPath&lt;/a&gt; 2.0 &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.gosquared.com/images/help_sheets/HTML%20Help%20Sheet.pdf"&gt;HTML&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://regexlib.com/CheatSheet.aspx"&gt;Regex&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;Espero que ajude…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=18400" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2yP8Xlmd3tbl86WRgToWmmUfrHo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2yP8Xlmd3tbl86WRgToWmmUfrHo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2yP8Xlmd3tbl86WRgToWmmUfrHo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2yP8Xlmd3tbl86WRgToWmmUfrHo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/1bpSbACYViw" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=18400</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/30/P29571.aspx</feedburner:origLink></item><item><title>Alô Alô Google</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/iPckHWHHTJA/P29410.aspx</link><category>Google</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Fri, 26 Jun 2009 11:15:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5970</guid><description>&lt;p&gt;&lt;img height="62" width="200" src="https://www.google.com/accounts/grandcentral/icon_01.gif" alt="" /&gt;  &lt;/p&gt;
&lt;p&gt;O Google vai lan&amp;ccedil;ar uma aplica&amp;ccedil;&amp;atilde;o denominada &lt;a target="_blank" href="https://www.google.com/voice"&gt;Google Voice&lt;/a&gt;, onde ser&amp;aacute; poss&amp;iacute;vel efectuar a gest&amp;atilde;o de todos os nossos n&amp;uacute;meros telefone.  &lt;/p&gt;
&lt;p&gt;Ao registar o servi&amp;ccedil;o &amp;eacute; nos atribu&amp;iacute;do um numero Google, e podemos associar todos os nossos telefones a esse numero e gerir todos os nossos telefonemas e efectuar enumeras &lt;a target="_blank" href="http://www.google.com/googlevoice/about.html"&gt;opera&amp;ccedil;&amp;otilde;es&lt;/a&gt;, tais como:  &lt;/p&gt;
&lt;p&gt;Quando alguem nos liga para o nosso numero Google, dependendo das configura&amp;ccedil;&amp;otilde;es, a chamada pode ser reencaminhada para um dos nossos telefones, para todos os telefones, ou simplesmente para o voicemail.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Vejam os videos (em Ingl&amp;ecirc;s)&amp;nbsp; &lt;/p&gt;
&lt;p&gt;





&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5970" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3CMlnFjFh8YFawr9sPTStXL0x5A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3CMlnFjFh8YFawr9sPTStXL0x5A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3CMlnFjFh8YFawr9sPTStXL0x5A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3CMlnFjFh8YFawr9sPTStXL0x5A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/iPckHWHHTJA" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5970</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/26/P29410.aspx</feedburner:origLink></item><item><title>Quanto custa o Windows 7</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/s3Yx23vBrj0/P29407.aspx</link><category>Microsoft</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Thu, 25 Jun 2009 18:11:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5969</guid><description>&lt;p&gt;&lt;img src="http://www.maximumpc.com/files/u69/Windows_7_Boxes.png" width="265" height="151" alt="" /&gt; &lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;Ja foram anunciados os &lt;a href="http://windowsteamblog.com/blogs/windows7/archive/2009/06/25/announcing-the-windows-7-upgrade-option-program-amp-windows-7-pricing-bring-on-ga.aspx" target="_blank"&gt;preços&lt;/a&gt; (para os EUA) do novo sistema operativo da Microsoft, o &lt;a href="http://windows.microsoft.com/en-US/windows7/products/home?os=nonwin7" target="_blank"&gt;Windows 7&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Para as versões de upgrade (XP ou Vista) são:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;b&gt;Windows 7 Home Premium (Upgrade):&lt;/b&gt; $199.99 &lt;/li&gt;&lt;li&gt;&lt;b&gt;Windows 7 Professional (Upgrade):&lt;/b&gt; $199.99 &lt;/li&gt;&lt;li&gt;&lt;b&gt;Windows 7 Ultimate (Upgrade):&lt;/b&gt; $219.99&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Para as versões completas são:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;b&gt;Windows 7 Home Premium (Versão completa):&lt;/b&gt; $199.99  &lt;/li&gt;&lt;li&gt;&lt;b&gt;Windows 7 Professional (Versão completa):&lt;/b&gt; $299.99  &lt;/li&gt;&lt;li&gt;&lt;b&gt;Windows 7 Ultimate (Versão completa):&lt;/b&gt; $319.99&lt;/li&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5969" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RVtv7nuXkKPsBxq-rnp4DhNcydY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RVtv7nuXkKPsBxq-rnp4DhNcydY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RVtv7nuXkKPsBxq-rnp4DhNcydY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RVtv7nuXkKPsBxq-rnp4DhNcydY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/s3Yx23vBrj0" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5969</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/26/P29407.aspx</feedburner:origLink></item><item><title>A Segurança Essencial</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/VUaexVD4auE/P29405.aspx</link><category>Microsoft</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Wed, 24 Jun 2009 00:33:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5968</guid><description>&lt;p&gt;&lt;img src="http://www.orn.usace.army.mil/history/images/castle_gold.jpg" width="286" height="141" alt="" /&gt; &lt;/p&gt; &lt;p&gt;A Microsoft acaba de disponibilizar para download o seu sistema Anti-Vírus, denominado &lt;a href="http://www.microsoft.com/security_essentials/"&gt;Microsoft Security Essentials&lt;/a&gt; (antigo Moro). &lt;/p&gt;&lt;p&gt;Este sistema está numa versão Beta &lt;strike&gt;e para efectuar o download é necessário estar registado no programa &lt;a href="http://connect.microsoft.com/securityessentials"&gt;Connect&lt;/a&gt; e tornar-se num beta-tester deste sistema&lt;strike&gt;. &lt;/strike&gt;&lt;/strike&gt;&lt;/p&gt;&lt;p&gt;As vantagens deste anti-vírus, é de ter pouco impacto na performance do sistema, e por ser gratuito. &lt;/p&gt;
&lt;p&gt;
O numero de inscrições no connect foram excedidas 
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5968" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/iO_F03ET8dMtGBiySFERJ9moLMY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iO_F03ET8dMtGBiySFERJ9moLMY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/iO_F03ET8dMtGBiySFERJ9moLMY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iO_F03ET8dMtGBiySFERJ9moLMY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/VUaexVD4auE" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5968</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/24/P29405.aspx</feedburner:origLink></item><item><title>Como utilizar o controlo Listview no Sharepoint</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/VBa0qITKPR0/P29390.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Thu, 18 Jun 2009 16:00:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5967</guid><description>&lt;p&gt;O controlo &lt;a href="http://msdn.microsoft.com/en-us/library/bb398790.aspx" target="_blank"&gt;ListView&lt;/a&gt; é uma das novidades da framework 3.5 para o ASP.NET. Este controlo é bastante flexivel, pois permite as facilidades do controlo &lt;a href="http://quickstarts.asp.net/quickstartv20/aspnet/doc/ctrlref/data/gridview.aspx" target="_blank"&gt;GridView&lt;/a&gt; (Paginação, Ordenação), numa lista de itens repetidos.&lt;/p&gt; &lt;p&gt;Para utilizar este controlo num projecto de Sharepoint é necessário criar no web.config as configuraçôes semelhantes a um projecto que utilize ajax, e dentro da &lt;a href="http://msdn.microsoft.com/en-us/library/ms164640.aspx" target="_blank"&gt;Tag &amp;lt;controls&amp;gt;&lt;/a&gt;  adicionar a seguinte referencia:&lt;/p&gt; &lt;p&gt;&lt;code&gt;&amp;lt;add tagPrefix=&amp;quot;asp&amp;quot; namespace=&amp;quot;System.Web.UI.WebControls&amp;quot; assembly=&amp;quot;System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35&amp;quot; /&amp;gt;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;A paginação deste controlo é controlada pelo controlo DataPager em que este necessita que a fonte de dados da ListView seja fornecida através do controlo de &lt;a href="http://quickstarts.asp.net/QuickStartv20/aspnet/doc/data/default.aspx" target="_blank"&gt;DataSource&lt;/a&gt;. Para que este funcione em Sharepoint este controlo de datasource deverá ser definido da seguinte forma:&lt;/p&gt; &lt;p&gt;&lt;code&gt;&amp;lt;asp:ObjectDataSource ID=&amp;quot;ObjectDataSource1&amp;quot; runat=&amp;quot;server&amp;quot; SelectMethod=&amp;quot;getItems&amp;quot; TypeName=&amp;quot;&lt;strong&gt;&lt;u&gt;&amp;lt;Assembly Strong Name&amp;gt;&lt;/u&gt;&lt;/strong&gt;&amp;quot;&amp;gt;&amp;lt;/asp:ObjectDataSource&amp;gt; &lt;/code&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5967" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wFBQw3ODXvaGO29US_aI5m-5Cnc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wFBQw3ODXvaGO29US_aI5m-5Cnc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wFBQw3ODXvaGO29US_aI5m-5Cnc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wFBQw3ODXvaGO29US_aI5m-5Cnc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/VBa0qITKPR0" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5967</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/19/P29390.aspx</feedburner:origLink></item><item><title>Content Editor Webpart e o Content Deploy</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/9VMkuR-Ct8A/P29268.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Mon, 08 Jun 2009 15:17:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5966</guid><description>&lt;p&gt;&lt;img alt="" src="http://media3.guzer.com/pictures/paint_kids.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;Para disponibilizar HTML numa pagina em Sharepoint a Content Editor webpart , é uma solução. &lt;/p&gt;
&lt;p&gt;Embora seja necessário ter algumas cautelas tais como: &lt;/p&gt;
&lt;p&gt;Se a nossa tipologia de Sharepoint consiste em ter uma Farm com um servidor de Authoring (inserção de conteúdos) e um servidor de Web Front End (WFE), não utilizar o Rich Editor da content editor webpart, pois o Rich Editor transforma URL’s relatios em absolutos, e em WFE ficam coisas a apontar para Authoring. &lt;/p&gt;
&lt;p&gt;Outra cautela é com o content deploy pois por vezes o HTML inserido na webpart não é o mesmo que passa para o WFE, nomeadamente Anchors com Imagens. &lt;/p&gt;
&lt;p&gt;Segundo a Microsoft a &lt;a href="http://office.microsoft.com/en-us/sharepointserver/HA100240461033.aspx"&gt;solução&lt;/a&gt; para este problema é editar os conteúdos no WFE, sim aquele que não é suposto ter acesso, enfim aqui fica o aviso. &lt;/p&gt;
&lt;p&gt;Um dos workarounds para forçar os links relativos é criar uma feature que aceda á colecção de links guardados na webpart e os torne relativos denovo.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.devcow.com/blogs/jdattis/archive/2007/09/27/11463.aspx"&gt;Solução 1&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/maximeb/archive/2008/12/23/fixing-absolute-urls-for-all-alternate-access-mappings-aam-of-content-editor-web-part-with-a-control-adapter.aspx"&gt;Solução 2&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5966" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hZOVaxlLUqxh8V1A1bgaZdSfnl4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hZOVaxlLUqxh8V1A1bgaZdSfnl4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hZOVaxlLUqxh8V1A1bgaZdSfnl4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hZOVaxlLUqxh8V1A1bgaZdSfnl4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/9VMkuR-Ct8A" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5966</wfw:commentRss><category domain="http://rss.financialcontent.com/stocksymbol">WFE</category><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/08/P29268.aspx</feedburner:origLink></item><item><title>Windows 7 sai para o mercado em meados de Outubro</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/2kKjpdBJ_xk/P29244.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Wed, 03 Jun 2009 00:22:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5965</guid><description>&lt;p&gt;&lt;img alt="" src="http://www.blumouse.com/immagini/windows-7.png" /&gt;&lt;/p&gt;
&lt;p&gt;Já foi confirmado por um portavoz da Microsoft que o proximo sistema operativo, o Windows 7 será lançado no mercado no final do mês de Outubro.&lt;br /&gt;O sistema operativo irá ser distribuído com as seguintes versões:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starter Edition (versão para notebooks e maquinas com poucos recursos, que só permitirá correr 3 aplicações em simultâneo) 
&lt;/li&gt;&lt;li&gt;Home Premium 
&lt;/li&gt;&lt;li&gt;Professional 
&lt;/li&gt;&lt;li&gt;Enterprise 
&lt;/li&gt;&lt;li&gt;Home Basic (versão para mercados emergentes)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;A versão beta acaba dia 1 de Julho, apartir desta data os PC com esta versão irão fazer um reboot de duas em duas horas.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5965" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rw8vUYK8b0EX4gRiscgt31ZZoJA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rw8vUYK8b0EX4gRiscgt31ZZoJA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rw8vUYK8b0EX4gRiscgt31ZZoJA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rw8vUYK8b0EX4gRiscgt31ZZoJA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/2kKjpdBJ_xk" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5965</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/03/P29244.aspx</feedburner:origLink></item><item><title>Será o novo dispositivo da Microsoft um Wii Killer ?</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/-XV1NBzOFqU/P29241.aspx</link><category>Microsoft</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Tue, 02 Jun 2009 17:58:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5964</guid><description>&lt;p&gt;A Microsoft está prestes a lançar um novo dispositivo que faz um reconhecimento de Movimento e de Voz do nosso corpo, o que permite jogar sem comando.&lt;/p&gt; &lt;p&gt;Ficção ou Realidade … vejam o video.&lt;/p&gt; &lt;div style="padding-bottom:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;float:none;padding-top:0px;" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:03cb8d10-ed81-4c50-8718-2ad5c2772597" class="wlWriterEditableSmartContent"&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt; &lt;p&gt;mais informação em: &lt;a href="http://www.xbox.com/en-US/?fbid=7P9LWa7Y2X5"&gt;www.xbox.com&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5964" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qlKd53Wp7sKko_rjYwCBnSyLXxU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qlKd53Wp7sKko_rjYwCBnSyLXxU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qlKd53Wp7sKko_rjYwCBnSyLXxU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qlKd53Wp7sKko_rjYwCBnSyLXxU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/-XV1NBzOFqU" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5964</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/03/P29241.aspx</feedburner:origLink></item><item><title>Na onda do Google</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/DHfVQ-_Osvs/P29239.aspx</link><category>Google</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Tue, 02 Jun 2009 16:01:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5963</guid><description>&lt;p&gt;Depois de reinventar a pesquisa de informação na web, a Google volta a surpreender com a reinvenção da comunicação da web. O projecto denominado de Wave (onda), consiste em pegar no bem conhecido conceito de email, e fundi-lo com as mensagens instantâneas, criando assim um conceito novo de comunicação colaborativa, onde uma conversação (ou onda) se transforma numa área fixa onde se envia mensagens e que para responder a uma dessas mensagens não temos que enviar outra de volta, mas sim editar a onda, que esta fica disponível em tempo real para todos os intervenientes da onda…&lt;/p&gt; &lt;p&gt;Confuso ? vejam o video (em Inglês) para ficarem com a ideia.&lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;Mais informação em &lt;a title="http://wave.google.com/" href="http://wave.google.com/"&gt;http://wave.google.com/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5963" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5eVUMP8sfxmD6q0xz4pB7qQyDiE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5eVUMP8sfxmD6q0xz4pB7qQyDiE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5eVUMP8sfxmD6q0xz4pB7qQyDiE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5eVUMP8sfxmD6q0xz4pB7qQyDiE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/DHfVQ-_Osvs" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5963</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/03/P29239.aspx</feedburner:origLink></item><item><title>Bing e decide</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/jAAPHsRUahs/P29233.aspx</link><category>Microsoft</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Sun, 31 May 2009 17:43:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5962</guid><description>&lt;p&gt;&lt;a href="http://www.bing.com"&gt;Bing&lt;/a&gt; é o novo motor de busca, desenvolvido pela Microsoft e que vai ficar &lt;a href="http://www.microsoft.com/presspass/presskits/bing/default.mspx"&gt;disponivel&lt;/a&gt; no proximo dia 3 de Junho (para todo o mundo) e dia 1 de Junho (Portugal) &lt;/p&gt;
&lt;p&gt;Aqui está um video (Inglês) que desmonstra as capacidades deste novo motor de busca:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Quanto a uma API, o Bing vai utilizar o &lt;a href="http://search.live.com/developers"&gt;Live Search API 2.0&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Para mais informações podem consultar o &lt;a href="http://blogs.msdn.com/livesearch/"&gt;Blog&lt;/a&gt; ou então o site &lt;a href="http://www.decisionengine.com/Default.html"&gt;www.decisionengine.com&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5962" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_2pchEty8oYSCKzM9zuT2bWimg0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_2pchEty8oYSCKzM9zuT2bWimg0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_2pchEty8oYSCKzM9zuT2bWimg0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_2pchEty8oYSCKzM9zuT2bWimg0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/jAAPHsRUahs" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5962</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/06/01/P29233.aspx</feedburner:origLink></item><item><title>Motor de Busca para Geeks</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/e-JgCqfc5Mc/P29166.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Mon, 18 May 2009 14:39:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5961</guid><description>&lt;p&gt;&lt;img src="http://lh5.ggpht.com/_x928-y8TN9g/ShFgj_FskHI/AAAAAAAAAx4/T_YG0Cy537o/s400/wolfram.JPG" width="478" height="192" alt="" /&gt; &lt;/p&gt; &lt;p&gt;Para aquelas pesquisas mais técnicas, existe um novo motor de busca denominado Wolfman  Alpha. Este motor baseia-se no conhecimento computacional e onde podemos extrair muita informação de caracter tecnico.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.wolframalpha.com/"&gt;http://www.wolframalpha.com/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Exemplos:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.wolframalpha.com/examples/"&gt;http://www.wolframalpha.com/examples/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5961" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Muwi9Fif_mvPq7C9cZtYy2vbCPo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Muwi9Fif_mvPq7C9cZtYy2vbCPo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Muwi9Fif_mvPq7C9cZtYy2vbCPo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Muwi9Fif_mvPq7C9cZtYy2vbCPo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/e-JgCqfc5Mc" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5961</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/05/18/P29166.aspx</feedburner:origLink></item><item><title>A minha ultima criação em Sharepoint 2007</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/XzQtz-NxjD8/P29135.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Fri, 15 May 2009 19:55:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5960</guid><description>&lt;p&gt;Finalmente entrou em ambiente de produção a minha ultima criação com a tecnologia Microsoft Office Sharepoint Server 2007&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.meofibra.pt"&gt;www.meofibra.pt&lt;/a&gt; &lt;/p&gt; &lt;p&gt; &lt;/p&gt;&lt;table&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;a href="http://www.meofibra.pt/"&gt;&lt;img src="http://lh4.ggpht.com/_x928-y8TN9g/Sg253hkgk4I/AAAAAAAAAxc/A351Jj7-F6U/s144/FireShot%20capture%20%236%20-%20%27MEO%20Fibra%20-%20%C3%80%20velocidade%20da%20luz%20Homepage%27%20-%20www_meofibra_pt_Pages_Homepage_aspx_mainZone%3D1%26zona%3D1.png.jpg" width="244" height="274" alt="" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5960" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qILdCDjN_B5P91AyM8hZhdvsOuk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qILdCDjN_B5P91AyM8hZhdvsOuk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qILdCDjN_B5P91AyM8hZhdvsOuk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qILdCDjN_B5P91AyM8hZhdvsOuk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/XzQtz-NxjD8" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5960</wfw:commentRss><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/05/16/P29135.aspx</feedburner:origLink></item><item><title>4 "armadilhas" do Sharepoint que deveriam conhecer...</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/cl-7dA0A-5g/P28968.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Sat, 11 Apr 2009 00:42:00 PDT</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5959</guid><description>&lt;div style="TEXT-ALIGN:left;" id="z-:f"&gt;&lt;img style="WIDTH:548px;HEIGHT:88px;" src="http://docs.google.com/File?id=dvdkm5n_193gfn8wdg5_b" alt="" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;Estou de volta com um desafio com o &lt;a id="bv.b" title="Microsoft Office Sharepoint Server 2007" href="http://www.microsoft.com/Sharepoint/default.mspx" target="_blank"&gt;Microsoft Office Sharepoint Server 2007&lt;/a&gt; (MOSS), que desde da minha ultima experiência, a plataforma &amp;quot;sofreu&amp;quot; um &amp;quot;&lt;a id="u70p" title="Service Pack" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=AD59175C-AD6A-4027-8C2F-DB25322F791B&amp;amp;displaylang=en" target="_blank"&gt;Service Pack&lt;/a&gt;&amp;quot;, alguns &amp;quot;&lt;a id="g46z" title="hot fixes" href="http://support.microsoft.com/search/default.aspx?catalog=LCID%3D2057&amp;amp;spid=11373&amp;amp;query=&amp;amp;adv=&amp;amp;mode=s&amp;amp;cat=False" target="_blank"&gt;hot fixes&lt;/a&gt;&amp;quot; e foram criadas muitas ferramentas pela comunidade ( basta pesquisar &lt;a id="xt3t" title="&amp;#39;Sharepoint&amp;#39; no Codeplex" href="http://www.codeplex.com/site/search?projectSearchText=sharepoint" target="_blank"&gt;&amp;#39;Sharepoint&amp;#39; no Codeplex&lt;/a&gt; ). &lt;/p&gt;
&lt;p&gt;Mas na minha opinião a plataforma continua com problemas de fundo, tais como, a construção de uma solução para instalação pode-se tornar numa tarefa desespererante com a memorização de identificadores únicos (GUIDs).&lt;br /&gt;Outro problema consiste na passagem de conteúdos entre ambientes de backoffice e frontend, denominado content deployment, falha constantemente.&lt;/p&gt;
&lt;div&gt;Na criação da solução existem 4 situações que detectei e queria divulga-las aqui e sugerir de que forma podem as contornar.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Se criarem uma coluna de um tipo (ex: MultiLine of Text) com o nome ColunaA, e se verificarem que se enganaram no tipo, não podem criar uma nova coluna com o nome ColunaA, mesmo apagando a primeira criada, com outro tipo. 
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Solução&lt;/strong&gt;: Criar uma nova coluna com outro nome e com o tipo pretendido&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;O tipo conteúdo HTML, contem um validador que corta todo o tipo de Javascript, como por exemplo um elemento object que serve para colocar elementos de Adobe Flash. 
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Solução&lt;/strong&gt;: Utilizar a webpart Content Editor Layout, que já permite colocar qualquer tipo de Javascript&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;As colunas Lookup são colunas que permitem conter valores que estejam noutras tabelas e têm um output em modo de visualização, uma cadeia de texto com o seguinte formato: &amp;quot;Valor1 ; Valor2 ; Valor3&amp;quot;. Esta cadeia de caracteres não pode exeder os 255 caracteres. 
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Solução&lt;/strong&gt;: Utilizar lookups para coisas especificas, ou conjunto de valores pré-definidos (ex:  lista de Países)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Os pages layouts são os templates em HTML que permitem dar o aspecto costumizado ao nosso formulário web, no MOSS, estes podem ser criados na ferramenta desenvolvida pela Microsoft, o Sharepoint Designer, que não avisa que as tags para MOSS são case sensitive, por exemplo a tag &amp;lt;asp:Content&amp;gt; que delimita o conteúdo dentro de um ContentPlaceHolder, quanto se utiliza MasterPages, não pode estar escrito &amp;lt;asp:content&amp;gt;. 
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Solução&lt;/strong&gt;: Ao obter o erro &amp;quot;&lt;b&gt;&lt;i&gt;Only Content controls are allowed directly in a content page that contains Content controls&lt;/i&gt;&lt;/b&gt;&amp;quot; é provável que o vosso layout tem um erro relacionado com o case sensitive.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;Espero que este post tenha sido útil em prevenir que caiam nestas situações e andem moer a cabeça com estes problemas. &lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5959" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6dTeTZ_RYEUz77Skv5iWAVt_gHY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6dTeTZ_RYEUz77Skv5iWAVt_gHY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6dTeTZ_RYEUz77Skv5iWAVt_gHY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6dTeTZ_RYEUz77Skv5iWAVt_gHY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/cl-7dA0A-5g" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5959</wfw:commentRss><category domain="http://rss.financialcontent.com/stocksymbol">MOSS</category><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/04/11/P28968.aspx</feedburner:origLink></item><item><title>Pesquisa na AD</title><link>http://feedproxy.google.com/~r/JoaoFilipeRocha/~3/XAy3qKI11fQ/P28565.aspx</link><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">João Filipe Rocha</dc:creator><pubDate>Fri, 02 Jan 2009 11:29:00 PST</pubDate><guid isPermaLink="false">9d4b03f4-ce39-4703-ab9d-5b341a2c824e:5958</guid><description> Antes de mais um Bom Ano de  2009 Tecnológico.&lt;br /&gt;&lt;br /&gt;Por vezes queremos pesquisar na &lt;a id="u5pz" title="Active Directory" href="http://en.wikipedia.org/wiki/Active_Directory"&gt;Active Directory&lt;/a&gt; (AD) por um campo especifico e não sabemos como. Para pesquisar pela AD basta:&lt;br /&gt;&lt;br /&gt;Criamos um atalho no ambiente de trabalho com o seguinte comando:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;%SystemRoot%\SYSTEM32\rundll32.exe dsquery,OpenQueryWindow&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;e este atalho dá-nos acesso a um motor de pesquisa na AD :&lt;br /&gt;
&lt;div id="gtc5" style="PADDING-RIGHT:0pt;PADDING-LEFT:0pt;PADDING-BOTTOM:1em;PADDING-TOP:1em;TEXT-ALIGN:left;"&gt;&lt;img style="WIDTH:514px;HEIGHT:291px;" src="http://docs.google.com/File?id=dvdkm5n_183dvmrmzgh_b" alt="" /&gt;&lt;br /&gt;&lt;br /&gt;em alternativa existe o &lt;a id="p9c9" title="AD Explorer" href="http://technet.microsoft.com/pt-br/sysinternals/bb963907%28en-us%29.aspx"&gt;AD Explorer&lt;/a&gt; que é uma aplicação que permite visualizar a base de dados da AD:&lt;br /&gt;
&lt;div id="e8nz" style="PADDING-RIGHT:0pt;PADDING-LEFT:0pt;PADDING-BOTTOM:1em;PADDING-TOP:1em;TEXT-ALIGN:left;"&gt;&lt;img style="WIDTH:550px;HEIGHT:363px;" src="http://docs.google.com/File?id=dvdkm5n_184fst7n5fg_b" alt="" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://pontonetpt.com/aggbug.aspx?PostID=5958" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/38qjUWZQVty3RZxIFGTL7EjzlH4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/38qjUWZQVty3RZxIFGTL7EjzlH4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/38qjUWZQVty3RZxIFGTL7EjzlH4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/38qjUWZQVty3RZxIFGTL7EjzlH4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JoaoFilipeRocha/~4/XAy3qKI11fQ" height="1" width="1"/&gt;</description><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://pontonetpt.com/blogs/jf_rocha/rsscomments.aspx?PostID=5958</wfw:commentRss><category domain="http://rss.financialcontent.com/stocksymbol">AD</category><feedburner:origLink>http://pontonetpt.com/blogs/jf_rocha/archive/2009/01/02/P28565.aspx</feedburner:origLink></item></channel></rss>
