<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Rafael O. Marques</title>
	<atom:link href="http://rafaelomarques.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rafaelomarques.wordpress.com</link>
	<description>Just another developer&#039;s blog</description>
	<lastBuildDate>Fri, 04 Nov 2011 14:29:08 +0000</lastBuildDate>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='rafaelomarques.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Rafael O. Marques</title>
		<link>http://rafaelomarques.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://rafaelomarques.wordpress.com/osd.xml" title="Rafael O. Marques" />
	<atom:link rel='hub' href='http://rafaelomarques.wordpress.com/?pushpress=hub'/>
		<item>
		<title>CakePHP: inserindo dados em relacionamento de dois níveis de hasOne</title>
		<link>http://rafaelomarques.wordpress.com/2011/07/23/cakephp-inserindo-dados-em-relacionamento-de-dois-niveis-de-hasone/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/07/23/cakephp-inserindo-dados-em-relacionamento-de-dois-niveis-de-hasone/#comments</comments>
		<pubDate>Sat, 23 Jul 2011 20:19:00 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[hasOne]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=294</guid>
		<description><![CDATA[Recentemente eu publiquei um mini tutorial mostrando como salvar nas duas tabelas, quando possui um relacionamento hasOne entre dois Models/tabela. Porém quando há o seguinte caso: Model1 hasOne Model2 Model2 hasOne Model3 A maneira que eu falei não funciona, pois o método saveAll possui apenas um nível de recursão. A partir disso, eu adicionarei apenas [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=294&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recentemente eu publiquei um <a href="http://rafaelomarques.wordpress.com/2011/07/15/trabalhando-com-relacionamento-hasone-no-cakephp/" target="_blank">mini tutorial</a> mostrando como salvar nas duas tabelas, quando possui um relacionamento hasOne entre dois Models/tabela. Porém quando há o seguinte caso:</p>
<p>Model1 hasOne Model2<br />
Model2 hasOne Model3</p>
<p>A maneira que eu falei não funciona, pois o método saveAll possui apenas um nível de recursão. A partir disso, eu adicionarei apenas mais um relacionamento no <a href="http://rafaelomarques.wordpress.com/2011/07/15/trabalhando-com-relacionamento-hasone-no-cakephp/" target="_blank">exemplo anterior</a>, copiando muito do que escrevi e alterando as partes necessárias para que ao enviar um form, as três tabelas sejam salvas.</p>
<p><span id="more-294"></span></p>
<p><pre class="brush: sql;">
CREATE TABLE IF NOT EXISTS cidades (
    id INT UNSIGNED NOT NULL AUTO_INCREMENT,
    endereco_id INT UNSIGNED NOT NULL,
    nome VARCHAR(60),
    descricao VARCHAR(200),
    PRIMARY KEY(id)
) ENGINE = InnoDB;

CREATE TABLE IF NOT EXISTS enderecos (
    id INT UNSIGNED NOT NULL AUTO_INCREMENT,
    funcionario_id INT UNSIGNED NOT NULL,
    rua VARCHAR(60),
    numero VARCHAR(15),
    cep VARCHAR(8),
    bairro VARCHAR(60),
    estado VARCHAR(2),
    pais VARCHAR(30),
    PRIMARY KEY (id)
) ENGINE = InnoDB;

CREATE TABLE IF NOT EXISTS pessoas (
    id INT UNSIGNED NOT NULL AUTO_INCREMENT,
    nome VARCHAR(60) NOT NULL,
    email VARCHAR(60) NOT NULL,
    cpf VARCHAR(11) NOT NULL,
    senha VARCHAR(20) NOT NULL,
    PRIMARY KEY (id)
) ENGINE = InnoDB;
</pre></p>
<p>A partir dai, podemos partir para o Cake. O CakePHP reconhece uma foreign key automaticamente, caso você siga o padrão de nomenclatura estipulado. No caso, uma chave estrangeira deverá ser o padrão: nome_da_entidade + _id.<br />
Então, para termo algum consistente em mãos rapidamente, vamos utilizar o scaffold para visualizar o que aconteceu nesta brincadeira:</p>
<p>O controller</p>
<p><pre class="brush: php;">
class PessoasController extends AppController {
     var $helpers = array ('Html', 'Form');
     var $name = &quot;Pessoas&quot;;
     var $scaffold;
}
</pre></p>
<p>O model de Pessoa:</p>
<p><pre class="brush: php;">
class Pessoa extends AppModel {
     var $name = &quot;Pessoa&quot;;
     var $hasOne = &quot;Endereco&quot;;
}
</pre></p>
<p>O Controller do Endereço:</p>
<p><pre class="brush: php;">
class EnderecosController extends AppController {
     var $helpers = array ('Html', 'Form');
     var $name = &quot;Enderecos&quot;;
     var $scaffold;
}
</pre></p>
<p>E o Model de Endereço:</p>
<p><pre class="brush: php;">
class Endereco extends AppModel {
 	var $name = &quot;Endereco&quot;;
 	var $hasOne = &quot;Cidade&quot;;
}
</pre></p>
<p>O model de cidades:</p>
<p><pre class="brush: php;">
class Cidade extends AppModel {
 	var $name = &quot;Cidade&quot;;
}
</pre></p>
<p>E o controller de cidades:</p>
<p><pre class="brush: php;">
class CidadesController extends AppController {
     var $helpers = array ('Html', 'Form');
     var $name = &quot;Cidades&quot;;
     var $scaffold;
}
</pre></p>
<p>Com este código, teremos um CRUD, ontem caso entre em pessoa/add, aparecerá uma tabela listando todas as pessoas cadastradas, além das opções para adicionar uma nova pessoa <strong>E </strong>para adicionar um endereço.<br />
Ao entrar em adicionar um endereço, você verá que há uma lista com os ids das pessoas cadastradas, e você atrelará o endereço a este id.</p>
<p>Mas ai fica a pergunta, o que devo fazer para adicionar de uma única vez um usuário e o seu respectivo endereço?! Como nem tudo são rosas, e as aplicações não são construídas apenas com scaffolding, será necessário realizar algumas alterações. No <a title="CakePHP Cookbook" href="http://book.cakephp.org/" target="_blank">Cook Book</a> do Cake, há uma parte dedicada a esta questão que pode ser conferida <a title="Saving Your Data by Cake Cookbook" href="http://book.cakephp.org/view/1031/Saving-Your-Data" target="_blank">aqui.</a></p>
<p>A principal diferença entre construir um form normal atrelado a um único model e um form com dados de dois models que estão relacionados é que ao utilizar o input do helper Html, você adicionará o nome do model antes de cada campo.</p>
<p><pre class="brush: php;">
// provavelmente na view add, ou o equivalente para adicionar a pessoa

echo $this-&gt;Form-&gt;create('Pessoa', array('action' =&gt; 'add'));
echo $this-&gt;Form-&gt;input('Pessoa.nome');
echo $this-&gt;Form-&gt;input('Pessoa.cpf');
echo $this-&gt;Form-&gt;input('Pessoa.email');
echo $this-&gt;Form-&gt;input('Pessoa.senha');
echo $this-&gt;Form-&gt;input('Endereco.rua');
echo $this-&gt;Form-&gt;input('Endereco.numero');
echo $this-&gt;Form-&gt;input('Endereco.cep');
echo $this-&gt;Form-&gt;input('Endereco.bairro');
echo $this-&gt;Form-&gt;input('Endereco.estado');
echo $this-&gt;Form-&gt;input('Endereco.pais');
echo $this-&gt;Form-&gt;input('Cidade.nome');
echo $this-&gt;Form-&gt;input('Cidade.descricao');
echo $this-&gt;Form-&gt;end('Confirmar cadastro');
</pre></p>
<p>E o método add (ou equivalente) no Controller de Pessoa:</p>
<p><pre class="brush: php;">
function add() {
    if (!empty($this-&gt;data)) {
	$pessoa= $this-&gt;Pessoa-&gt;save($this-&gt;data);
			
			if (!empty($pessoa)) {
				$this-&gt;data['Endereco']['pessoa_id'] = $this-&gt;Pessoa-&gt;id;
				$endereco = $this-&gt;Pessoa-&gt;Endereco-&gt;save($this-&gt;data);
				
				if (!empty($endereco)) {
					$this-&gt;data['Cidade']['endereco_id'] = $this-&gt;Pessoa-&gt;Endereco-&gt;id;
					$resultado = $this-&gt;Pessoa-&gt;Endereco-&gt;Cidade-&gt;save($this-&gt;data);
					
					if ($resultado)
						$this-&gt;Session-&gt;setFlash('Cadastrado com sucesso');
					
				}
			} 
    }
}
</pre></p>
<p>Bem, por hoje é só <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/294/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=294&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/07/23/cakephp-inserindo-dados-em-relacionamento-de-dois-niveis-de-hasone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>
	</item>
		<item>
		<title>Trabalhando com relacionamento hasOne no CakePHP</title>
		<link>http://rafaelomarques.wordpress.com/2011/07/15/trabalhando-com-relacionamento-hasone-no-cakephp/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/07/15/trabalhando-com-relacionamento-hasone-no-cakephp/#comments</comments>
		<pubDate>Fri, 15 Jul 2011 13:07:37 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[hasOne]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=283</guid>
		<description><![CDATA[Este post foi movido para o link: http://rafaelomarques.com/2011/10/trabalhando-com-relacionamento-hasone-no-cakephp/<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=283&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Este post foi movido para o link: <a href="http://rafaelomarques.com/2011/10/trabalhando-com-relacionamento-hasone-no-cakephp/" title="Trabalhando com relacionamento hasOne no CakePHP" target="_blank">http://rafaelomarques.com/2011/10/trabalhando-com-relacionamento-hasone-no-cakephp/</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/283/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/283/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/283/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=283&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/07/15/trabalhando-com-relacionamento-hasone-no-cakephp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>
	</item>
		<item>
		<title>Configurando o WAMP para rodar o CakePHP</title>
		<link>http://rafaelomarques.wordpress.com/2011/07/14/configurando-o-wamp-para-rodar-o-cakephp/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/07/14/configurando-o-wamp-para-rodar-o-cakephp/#comments</comments>
		<pubDate>Thu, 14 Jul 2011 18:02:30 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=273</guid>
		<description><![CDATA[Um problema comum que acontece quando tentamos usar o CakePHP junto ao WAMP ou EasyPHP no Windows é o seguinte: Isto acontece pois o cake utiliza o mod_rewrite, que vem desabilitado por default no WAMP. Logo, partindo do principio que você instalou o WAMP em c:/, entre no caminho: C:\wamp\bin\apache\apache2.2.6\conf e entre para editar o arquivo [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=273&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Um problema comum que acontece quando tentamos usar o CakePHP junto ao WAMP ou EasyPHP no Windows é o seguinte:<br />
<img src="http://img135.imageshack.us/img135/1951/modrewr.png" alt="" border="0" /><br />
<span id="more-273"></span></p>
<p>Isto acontece pois o cake utiliza o mod_rewrite, que vem desabilitado por default no WAMP.</p>
<p>Logo, partindo do principio que você instalou o WAMP em c:/, entre no caminho: C:\wamp\bin\apache\apache2.2.6\conf e entre para editar o arquivo httpd.conf.</p>
<p>Nele, será necessário realizar as seguintes alterações:</p>
<p><pre class="brush: php;">
// Onde encontrar esta linha comentada, apenas descomente
//altere de:
#LoadModule rewrite_module modules/mod_rewrite.so

//para:
LoadModule rewrite_module modules/mod_rewrite.so

//E onde você encontrar o seguinte:


//Altere as seguintes linhas:
//de:
Order Deny,Allow
Deny from all

//para:
Order Allow,Deny
Allow from all
</pre></p>
<p>Tendo feito isto, basta reiniciar o servidor e testar novamente:</p>
<p><img src="http://img192.imageshack.us/img192/9822/semttulonwq.png" alt="" border="0" /></p>
<p>Por hoje é só <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/273/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=273&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/07/14/configurando-o-wamp-para-rodar-o-cakephp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>

		<media:content url="http://img135.imageshack.us/img135/1951/modrewr.png" medium="image" />

		<media:content url="http://img192.imageshack.us/img192/9822/semttulonwq.png" medium="image" />
	</item>
		<item>
		<title>CakePHP &#8211; layouts, css e afins</title>
		<link>http://rafaelomarques.wordpress.com/2011/07/05/cakephp-layouts-css-e-afins/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/07/05/cakephp-layouts-css-e-afins/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 00:55:05 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[ctp]]></category>
		<category><![CDATA[layout]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=259</guid>
		<description><![CDATA[Bom, como disse eu meu post anterior, uma das coisas que tenho estudado recentemente é o framework para php CakePHP. Neste post falarei um pouco da sua estrutura e onde ficam os arquivos de layout, css, e afins. O Cake possui a seguinte estrutura na sua aplicação: Sendo que a pasta app contém a estrutura [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=259&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Bom, como disse eu meu post anterior, uma das coisas que tenho estudado recentemente é o framework para php <a title="CakePHP" href="http://www.cakephp.com.br/" target="_blank">CakePHP</a>. Neste post falarei um pouco da sua estrutura e onde ficam os arquivos de layout, css, e afins.</p>
<p>O Cake possui a seguinte estrutura na sua aplicação:<br />
<a title="ImageShack - Image And Video Hosting" href="http://imageshack.us/photo/my-images/196/capturadetela20110702s1.png/" target="_blank"><img src="http://img196.imageshack.us/img196/9017/capturadetela20110702s1.png" alt="" border="0" /></a></p>
<p><span id="more-259"></span></p>
<p>Sendo que a pasta app contém a estrutura da sua aplicação, enquanto que a pasta cake possui o framework em propriamente dito. A pasta contendo a sua aplicação possui a seguinte estrutura:<br />
<a title="ImageShack - Image And Video Hosting" href="http://imageshack.us/photo/my-images/269/capturadetela20110702s1i.png/" target="_blank"><img src="http://img269.imageshack.us/img269/1922/capturadetela20110702s1i.png" alt="" border="0" /></a></p>
<p>Dentro desta estrutura, os arquivos de layout e os arquivos de estilo css encontram-se respectivamente nas pastas views/layouts e webroot/css. Entrando na pasta views/layouts, provavelmente voce encontrará um arquivo vazio. Isto acontece pois o layout default da sua aplicação encontra-se na pasta do cake, e não da sua aplicação. Porém basta criar um arquivo chamado home.ctp para sobrescrever o layout default. Caso voce queria visualizar o arquivo home.ctp orginal, ele encontra-se em cake/libs/view/layouts, e o seu conteúdo pode ser conferido abaixo:</p>
<p><pre class="brush: php;">
&lt;!--?php /**  *  * PHP versions 4 and 5  *  * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)  * Copyright 2005-2010, Cake Software Foundation, Inc. (http://cakefoundation.org)  *  * Licensed under The MIT License  * Redistributions of files must retain the above copyright notice.  *  * @copyright     Copyright 2005-2010, Cake Software Foundation, Inc. (http://cakefoundation.org)  * @link          http://cakephp.org CakePHP(tm) Project  * @package       cake  * @subpackage    cake.cake.libs.view.templates.layouts  * @since         CakePHP(tm) v 0.10.0.1076  * @license       MIT License (http://www.opensource.org/licenses/mit-license.php)  */ ?--&gt;

	&lt;!--?php echo $this---&gt;Html-&gt;charset(); ?&gt;

		&lt;!--?php __('CakePHP: the rapid development php framework:'); ?--&gt;
		&lt;!--?php echo $title_for_layout; ?--&gt;

	&lt;!--?php 		echo $this---&gt;Html-&gt;meta('icon');

		echo $this-&gt;Html-&gt;css('cake.generic');

		echo $scripts_for_layout;
	?&gt;&lt;/pre&gt;
&lt;div id=&quot;container&quot;&gt;
&lt;div id=&quot;content&quot;&gt;
 &lt;!--?php echo $this---&gt;Session-&gt;flash(); ?&gt;

 &lt;!--?php echo $content_for_layout; ?--&gt;&lt;/div&gt;
&lt;div id=&quot;footer&quot;&gt;&lt;!--?php echo $this---&gt;Html-&gt;link(
 $this-&gt;Html-&gt;image('cake.power.gif', array('alt'=&gt; __('CakePHP: the rapid development php framework', true), 'border' =&gt; '0')),
 'http://www.cakephp.org/',
 array('target' =&gt; '_blank', 'escape' =&gt; false)
 );
 ?&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;pre&gt;
 &lt;!--?php echo $this---&gt;element('sql_dump'); ?&gt;

</pre></p>
<p>Mantendo o escopo deste post, irei falar agora o que fazer para adicionar algum arquivo css em seu layout.<br />
Analizando o código acima, podemos verificar a existencia da seguinte linha de código dentro do head:</p>
<p><pre class="brush: php;">
echo $this-&gt;Html-&gt;css(`cake.generic`);
</pre></p>
<p>O trecho acima de código está fazendo uso do helper Html, que o cake oferece. Ao utilizá-lo, voce estará adicionando um arquivo css que está localizado em: app/webroot/css. Sendo assim, caso voce queira adicionar um arquivo em seu projeto, basta colocá-lo nesta pasta e adicioná-lo utilizando o helper Html.<br />
Bem, por hoje é só <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/259/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/259/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/259/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=259&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/07/05/cakephp-layouts-css-e-afins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>

		<media:content url="http://img196.imageshack.us/img196/9017/capturadetela20110702s1.png" medium="image" />

		<media:content url="http://img269.imageshack.us/img269/1922/capturadetela20110702s1i.png" medium="image" />
	</item>
		<item>
		<title>Novos rumos, assuntos e frequência</title>
		<link>http://rafaelomarques.wordpress.com/2011/06/17/novos-rumos-assuntos-e-frequencia/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/06/17/novos-rumos-assuntos-e-frequencia/#comments</comments>
		<pubDate>Fri, 17 Jun 2011 22:33:41 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[Off Topic]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=251</guid>
		<description><![CDATA[Bom, ultimamente estive muito ocupado com trabalho + faculdade + namoro. Como eu estava praticamente saturado de tempo eu fiquei muito tempo fora do blog. Provavelmente dentro dos próximos dias estarei reatando o meu vínculo com o blog, assim como com a InfoQ, site que faço parte da equipe de editores, mas que faz alguns [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=251&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Bom, ultimamente estive muito ocupado com trabalho + faculdade + namoro. Como eu estava praticamente saturado de tempo eu fiquei muito tempo fora do blog. Provavelmente dentro dos próximos dias estarei reatando o meu vínculo com o blog, assim como com a <a title="InfoQ" href="http://infoq.com/br" target="_blank">InfoQ</a>, site que faço parte da equipe de editores, mas que faz alguns meses que não dou atenção alguma.</p>
<p>Focarei o conteúdo deste blog em alguns assuntos (podendo variar e/ou serem alterados dependendo da minha vontade e/ou necessidade). Provavelmente os assuntos mais abordados aqui estarão relacionados a PHP, CakePHP, HTML 5, tópicos gerais relacionados a qualidade de aplicações web, entre outros assuntos.</p>
<p>Bom, até os próximos posts então <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/251/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/251/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/251/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/251/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/251/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/251/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/251/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/251/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=251&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/06/17/novos-rumos-assuntos-e-frequencia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>
	</item>
		<item>
		<title>Adicionar Evento Dinamicamente em Componente em C#</title>
		<link>http://rafaelomarques.wordpress.com/2011/04/04/adicionar-evento-dinamicamente-em-componente-em-c/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/04/04/adicionar-evento-dinamicamente-em-componente-em-c/#comments</comments>
		<pubDate>Mon, 04 Apr 2011 16:26:59 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[WPF]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[evento dinâmico]]></category>
		<category><![CDATA[wpf]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=243</guid>
		<description><![CDATA[Algo as vezes chato de lembrar, mas que é bem tranquilo é adicionar evento dinamicamente em componentes. Um exemplo simples é você fazer uma consulta em um banco de dados, ou em um xml e querer popular algo com as informações, porém adicionando eventos de click, checked, unchecked, initialized, etc para cada item adicionado. Uma [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=243&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Algo as vezes chato de lembrar, mas que é bem tranquilo é adicionar evento dinamicamente em componentes. Um exemplo simples é você fazer uma consulta em um banco de dados, ou em um xml e querer popular algo com as informações, porém adicionando eventos de click, checked, unchecked, initialized, etc para cada item adicionado.</p>
<p><span id="more-243"></span>Uma maneira bem simples disso é fazer um cast do objeto sender do evento para saber qual foi o objeto que enviou o evento. Abaixo tem um exemplo com Expander adicionando CheckBox e o evento Checked do WPF, porém a idéia é válida para Buttons, Menus, etc tanto do WPF quanto do Windows.Forms</p>
<p><pre class="brush: cpp;">
// adiciona os checkboxes no expander
private void opcoesExpander_Initialized(object sender, EventArgs e)
{
	expanderStackPanel.Children.Add(new Separator());
	foreach (SeuObjeto item in SeuArrayDeItens)
	{
		CheckBox checkbox = new CheckBox();
		checkbox.Content = item.Texto;
		checkbox.Checked += new RoutedEventHandler(checkbox_Checked);
		checkbox.Unchecked += new RoutedEventHandler(checkbox_Unchecked);
		checkbox.Margin = new Thickness(5);
		expanderStackPanel.Children.Add(checkbox);
	}
}

// descobrir quem enviou o evento
public void checkbox_Checked(object sender, RoutedEventArgs e)
{
    // irá mostrar o conteúdo do CheckBox que enviou o evento
    MessageBox.Show(((CheckBox)sender).Content.ToString());
}
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/243/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=243&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/04/04/adicionar-evento-dinamicamente-em-componente-em-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>
	</item>
		<item>
		<title>Trabalhando com vários monitores em C#</title>
		<link>http://rafaelomarques.wordpress.com/2011/03/06/trabalhando-com-varios-monitores-em-c/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/03/06/trabalhando-com-varios-monitores-em-c/#comments</comments>
		<pubDate>Sun, 06 Mar 2011 18:24:37 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[System.Windows.Forms.Screen]]></category>
		<category><![CDATA[vários monitores]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=237</guid>
		<description><![CDATA[Atualmente tenho trabalhado em um projeto interessante em C#, que trabalha muito com manipulação de imagens, vídeos em um ambiente onde existem diversos monitores, e cada janela deve startar no monitor especificado e com as resoluções apropriadas. Para isso eu criei uma classe auxiliar com alguns métodos que ajudam em tarefas simples, como saber quantos [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=237&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Atualmente tenho trabalhado em um projeto interessante em C#, que trabalha muito com manipulação de imagens, vídeos em um ambiente onde existem diversos monitores, e cada janela deve startar no monitor especificado e com as resoluções apropriadas. Para isso eu criei uma classe auxiliar com alguns métodos que ajudam em tarefas simples, como saber quantos monitores existem, obter a posição necessária para iniciar a janela no monitor especificado, ver qual a resolução dos monitores, etc.</p>
<p><span id="more-237"></span></p>
<p>Trata-se de métodos bem simples e de fácil compreensão, onde é utilizado basicamente a api de System.Windows.Forms.Screen. Mais pra frente provavelmente eu incluirei métodos para trabalhar com manipulação da resolução, etc. Segue abaixo a classe:</p>
<p><pre class="brush: csharp;">
using System;
using System.Drawing;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NamespaceXPTO.Screen
{
    public class ScreenProperties
    {

        public static bool hasMoreThanOneScreen()
        {
            return System.Windows.Forms.Screen.AllScreens.Length &gt; 1;
        }

        public static int numberOfScreens()
        {
            return System.Windows.Forms.Screen.AllScreens.Length;
        }

        public static Rectangle getCurrentScreenBounds()
        {
            return System.Windows.Forms.Screen.PrimaryScreen.Bounds;
        }

        public static int getCurrentScreenX()
        {
            return System.Windows.Forms.Screen.PrimaryScreen.Bounds.X;
        }

        public static int getCurrentScreenY()
        {
            return System.Windows.Forms.Screen.PrimaryScreen.Bounds.Y;
        }

        public static int getCurrentScreenWidth()
        {
            return System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width;
        }

        public static int getCurrentScreenHeight()
        {
            return System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height;
        }

        public static Size getCurrentScreenResolution()
        {
            Rectangle rec = System.Windows.Forms.Screen.PrimaryScreen.Bounds;
            return new Size(rec.Width, rec.Height);
        }

        public static Point getCurrentScreenLocation()
        {
            Rectangle rec = System.Windows.Forms.Screen.PrimaryScreen.Bounds;
            return new Point(rec.X, rec.Y);
        }

        public static string getCurrentScreenName()
        {
            return System.Windows.Forms.Screen.PrimaryScreen.DeviceName;
        }

        public static Rectangle getScreenBounds(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    return (ie.Current as System.Windows.Forms.Screen).Bounds;
                }
            }
            return new Rectangle();
        }

        public static int getScreenX(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    Rectangle rec = (ie.Current as System.Windows.Forms.Screen).Bounds;
                    return rec.X;
                }
            }
            return 0;
        }

        public static int getScreenY(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    Rectangle rec = (ie.Current as System.Windows.Forms.Screen).Bounds;
                    return rec.Y;
                }
            }
            return 0;
        }

        public static Size getScreenResolution(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    Rectangle rec = (ie.Current as System.Windows.Forms.Screen).Bounds;
                    return new Size(rec.Width, rec.Height);
                }
            }
            return new Size();
        }

        public static Point getScreenLocation(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    Rectangle rec = (ie.Current as System.Windows.Forms.Screen).Bounds;
                    return new Point(rec.X, rec.Y);
                }
            }
            return new Point();
        }

        public static int getScreenWidth(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    Rectangle rec = (ie.Current as System.Windows.Forms.Screen).Bounds;
                    return rec.Width;
                }
            }
            return 0;
        }

        public static int getScreenHeight(int index)
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if (getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName) == index)
                {
                    Rectangle rec = (ie.Current as System.Windows.Forms.Screen).Bounds;
                    return rec.Height;
                }
            }
            return 0;
        }

        public static int getScreenIndex()
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            while (ie.MoveNext())
            {
                if ((ie.Current as System.Windows.Forms.Screen).Primary == true)
                {
                    return getIndexFromName((ie.Current as System.Windows.Forms.Screen).DeviceName);
                }
            }
            return 0;
        }

        public static int getIndexFromName(string name)
        {
            return Convert.ToInt32(string.Join(null, System.Text.RegularExpressions.Regex.Split(name, &quot;[^\\d]&quot;)));
        }

        public static List&lt;System.Windows.Forms.Screen&gt; getAllScreens()
        {
            IEnumerator ie = System.Windows.Forms.Screen.AllScreens.GetEnumerator();
            List&lt;System.Windows.Forms.Screen&gt; screens = new List&lt;System.Windows.Forms.Screen&gt;();
            while (ie.MoveNext())
            {
                screens.Add((ie.Current as System.Windows.Forms.Screen));
            }
            return screens;
        }

    }
}
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/237/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/237/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/237/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=237&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/03/06/trabalhando-com-varios-monitores-em-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>
	</item>
		<item>
		<title>Configurando Pool de Conexões com MySQL e Glassfish v3</title>
		<link>http://rafaelomarques.wordpress.com/2011/01/31/configurando-pool-de-conexoes-com-mysql-e-glassfish-v3/</link>
		<comments>http://rafaelomarques.wordpress.com/2011/01/31/configurando-pool-de-conexoes-com-mysql-e-glassfish-v3/#comments</comments>
		<pubDate>Mon, 31 Jan 2011 17:50:53 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[glassfish]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[pool de conexão]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=231</guid>
		<description><![CDATA[Neste post falarei sobre como implementar uma pool de conexões com o Glassfish V3 e o MySQL. O projeto que roda este pool está nas seguintes condições: Windows 7 Netbeans 6.9 MySQL 5 Glassfish v3 O fato de estar utilizando windows, netbeans etc não influenciará no resultado. Primeiramente devemos acessar o console admin do Glassfish. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=231&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Neste post falarei sobre como implementar uma pool de conexões com o Glassfish V3 e o MySQL. O projeto que roda este pool está nas seguintes condições:</p>
<ul>
<li>Windows 7</li>
<li>Netbeans 6.9</li>
<li>MySQL 5</li>
<li>Glassfish v3</li>
</ul>
<p>O fato de estar utilizando windows, netbeans etc não influenciará no resultado. Primeiramente devemos acessar o console admin do Glassfish. Inicie o Glassfish e acesse http://localhost:4848, como demonstrado na figura abaixo:</p>
<p><span id="more-231"></span><br />
<img src="http://img408.imageshack.us/img408/156/inicialglassfish.png" alt="Home Glassfish" width="640" height="480" /></p>
<p>No menu lateral, vá em JDBC -&gt; Grupos de conexões<br />
<img src="http://img844.imageshack.us/img844/5898/poolr.png" alt="Pool" /></p>
<p>Após escolher a opção Grupos de Conexões, será apresentada uma lista. Clique em adicionar um novo item.</p>
<p>Após clickar em adicionar um novo item, aparecerá uma nova página onde deverá ser informado o nome do Pool, o tipo de recurso e o banco de dados que você está utilizando:<br />
<img src="http://img203.imageshack.us/img203/1900/pool2s.png" alt="Pool 2" /></p>
<p>Selecione a opção para prosseguir. Na próxima página você não precisará configurar muitos parâmetros. Basta informar qual o banco, usuário, senha, etc.</p>
<p><img src="http://img132.imageshack.us/img132/6338/pool3.png" alt="pool" /></p>
<p>Um ponto importante agora é ter certeza que você adicionou o driver do mysql corretamente para o Glassfish conseguir conectar-se com o MySQL. Basta verificar se na pasta $GLASSFISH_HOME/glassfish/lib/ tem o jar mysql-connector-java-X.X.XX-bin. Após isso, basta clickar em ping no console admin para ver se a conexão está sendo realizada com sucesso.<br />
<img src="http://img573.imageshack.us/img573/1392/pool4.png" alt="pool" /></p>
<p>Após verificar que foi configurado tudo certo, é necessário criar um novo Recurso JDBC. Este passo é bem simples, basta selecionar a opção Recursos JDBC no menu (acima da opção Grupos de Conexões), e clickar no botão novo. Agora basta dar um nome para o recurso e informar qual o Pool que ele referenciará.</p>
<p><img src="http://img522.imageshack.us/img522/2125/pool5.png" alt="pool" /></p>
<p>Tendo feito isto, agora basta testar na sua aplicação.</p>
<p><pre class="brush: java;">
import java.sql.Connection;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class ConnectionFactory {

    public Connection getConnection() {
        try {
            InitialContext initialContext = new InitialContext();
            DataSource dataSource = (DataSource) initialContext.lookup(&quot;jdbc/ONomeDoRecursoJDBC&quot;);
            return dataSource.getConnection();
        } catch (NamingException ex) {
            Logger.getLogger(ConnectionFactory.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(ConnectionFactory.class.getName()).log(Level.SEVERE, null, ex);
        }
        return null;
    }
}
</pre></p>
<p>Por hoje é só <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/231/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=231&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2011/01/31/configurando-pool-de-conexoes-com-mysql-e-glassfish-v3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>

		<media:content url="http://img408.imageshack.us/img408/156/inicialglassfish.png" medium="image">
			<media:title type="html">Home Glassfish</media:title>
		</media:content>

		<media:content url="http://img844.imageshack.us/img844/5898/poolr.png" medium="image">
			<media:title type="html">Pool</media:title>
		</media:content>

		<media:content url="http://img203.imageshack.us/img203/1900/pool2s.png" medium="image">
			<media:title type="html">Pool 2</media:title>
		</media:content>

		<media:content url="http://img132.imageshack.us/img132/6338/pool3.png" medium="image">
			<media:title type="html">pool</media:title>
		</media:content>

		<media:content url="http://img573.imageshack.us/img573/1392/pool4.png" medium="image">
			<media:title type="html">pool</media:title>
		</media:content>

		<media:content url="http://img522.imageshack.us/img522/2125/pool5.png" medium="image">
			<media:title type="html">pool</media:title>
		</media:content>
	</item>
		<item>
		<title>Criando um projeto com Quickfast no Visual Studio 2008 e C++</title>
		<link>http://rafaelomarques.wordpress.com/2010/11/25/criando-um-projeto-com-quickfast-no-visual-studio-2008-e-c/</link>
		<comments>http://rafaelomarques.wordpress.com/2010/11/25/criando-um-projeto-com-quickfast-no-visual-studio-2008-e-c/#comments</comments>
		<pubDate>Thu, 25 Nov 2010 23:38:15 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[Boost]]></category>
		<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Quickfast]]></category>
		<category><![CDATA[Xerces]]></category>
		<category><![CDATA[quickfast]]></category>
		<category><![CDATA[visual studio]]></category>
		<category><![CDATA[xerces]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=224</guid>
		<description><![CDATA[Bem, hoje eu tive alguns problemas para incluir o Quickfast no meu projeto, então resolvi criar um post com o passo a passo que fiz e apontar alguns problemas que eu tive durante a criação do projeto. Primeiramente, se você esta querendo instalar o Quickfast é porque provavelmente você já sabe o que é o Fast [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=224&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Bem, hoje eu tive alguns problemas para incluir o <a href="http://code.google.com/p/quickfast/">Quickfast</a> no meu projeto, então resolvi criar um post com o passo a passo que fiz e apontar alguns problemas que eu tive durante a criação do projeto.</p>
<p>Primeiramente, se você esta querendo instalar o <a href="http://code.google.com/p/quickfast/">Quickfast</a> é porque provavelmente você já sabe o que é o <a href="http://www.fixprotocol.org/fast">Fast Protocol</a>, mas qualquer coisa, se você não sabe, por incrível que pareça, a definição na <a href="http://en.wikipedia.org/wiki/FAST_protocol">Wikipedia</a> é bem interessante.</p>
<p><span id="more-224"></span>O Quickfast possui algumas dependências, sendo elas:</p>
<ul>
<li><a href="http://www.boost.org/">Boost</a></li>
<li><a href="http://xerces.apache.org/xerces-c/">Apache Xerces</a></li>
</ul>
<p>Segundo o site do projeto, ele também possui dependência do MPC e Pearl, mas para criar o projeto, não precisa.</p>
<p>A primeira coisa é compilar o Boost. Eu escrevi um post um tempo atrás descrevendo passo a passo como compilá-lo, então não entrar em detalhes, basta olhar este <a href="http://rafaelomarques.wordpress.com/2010/11/16/compilando-o-boost-em-windows-32-e-64-bits/">link</a>. Logo depois de compilar o Boost, pegue o Xerces. Este post parte do princípio que os diretórios raiz do Boost e do Xerces estão localizados em C:\c++. Você precisá configurar uma série de variáveis de ambiente, sendo elas:</p>
<ul>
<li>BOOST_ROOT=C:\c++\boost_1_44_0</li>
<li>BOOST_VERSION=1_44_0</li>
<li>XERCES_INCLUDE=C:\c++\xerces-c-3.1.1-x86-windows-vc-9.0\include</li>
<li>XERCES_LIBNAME=xerces-c_3</li>
<li>XERCES_LIBPATH=C:\c++\xerces-c-3.1.1-x86-windows-vc-9.0\lib</li>
<li>XERCES_ROOT=C:\c++\xerces-c-3.1.1-x86-windows-vc-9.0</li>
</ul>
<p>Além disso, adicione o seguinte ao seu Path: C:\c++\xerces-c-3.1.1-x86-windows-vc-9.0\bin</p>
<p>Após isso, vá na sua Solution e inclua o projeto Quickfast. A partir de agora, tente compilar. Se funcionar, tudo certo, mas comigo deu alguns erros pois o caminho referenciado no Linker para a pasta lib do Boost estava errado no projeto que eles disponibilizam no site. Então caso de algum problema, clique com o botão direito no projeto quickfast e vá em Propriedades -&gt; Configuration Properties -&gt; Linker -&gt; General. Em Additional Library Directories, o caminho da pasta lib do Boost está referenciada como: &#8221;$(BOOST_ROOT)\lib&#8221;, porém quando você compilar o Boost, a pasta lib será colocada dentro de uma pasta criada durante a compilação. O nome da pasta vai depender se você compilou para 32 ou 64 bits. Caso tenha sido 32, a pasta será chamada Win32 e caso seja 64, a pasta será chamada de Win64. Logo, o caminho correto deverá ser &#8221;$(BOOST_ROOT)\win32\lib&#8221; ou &#8221;$(BOOST_ROOT)\win\lib&#8221;.</p>
<p>Bem, é isso, qualquer dúvidas, é só mandar.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/224/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=224&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2010/11/25/criando-um-projeto-com-quickfast-no-visual-studio-2008-e-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>
	</item>
		<item>
		<title>Compilando o Boost em Windows 32 e 64 bits</title>
		<link>http://rafaelomarques.wordpress.com/2010/11/16/compilando-o-boost-em-windows-32-e-64-bits/</link>
		<comments>http://rafaelomarques.wordpress.com/2010/11/16/compilando-o-boost-em-windows-32-e-64-bits/#comments</comments>
		<pubDate>Tue, 16 Nov 2010 13:31:47 +0000</pubDate>
		<dc:creator>ceb10n</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[bjam]]></category>
		<category><![CDATA[Boost]]></category>
		<category><![CDATA[compilar]]></category>

		<guid isPermaLink="false">http://rafaelomarques.wordpress.com/?p=211</guid>
		<description><![CDATA[Para quem precisa utilizar o Boost, mas está meio perdido ainda como compilá-lo, etc. Aqui vai um pequeno passo a passo. Primeiramente você precisará ter instalado: Windows (xp, vista, 7, etc) 32 / 64 bits Visual Studio 20xx Boost (A versão atual é a 1.44) Bjam (A versão atual é a 3.1.18) Primeiramente, coloque o [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=211&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Para quem precisa utilizar o <a href="http://www.boost.org/">Boost</a>, mas está meio perdido ainda como compilá-lo, etc. Aqui vai um pequeno passo a passo. Primeiramente você precisará ter instalado:</p>
<p><span id="more-211"></span></p>
<ul>
<li>Windows (xp, vista, 7, etc) 32 / 64 bits</li>
<li>Visual Studio 20xx</li>
<li>Boost (A versão atual é a 1.44)</li>
<li>Bjam (A versão atual é a 3.1.18)</li>
</ul>
<p>Primeiramente, coloque o Bjam no seu path. Para isso vá opções avançadas no seu computador -&gt; variáveis de ambiente e adicione o caminho do bjam no path:</p>
<p><img class="aligncenter" src="http://img181.imageshack.us/img181/9223/bjampath.png" alt="bjam-path" /></p>
<p>Após adicionar o BJam no path do seu sistema, abra o prompt de comando pelo Visual Studio: Iniciar -&gt; Todos os Programas -&gt; Microsoft Visual Studio 20XX -&gt; Visual Studio Tools -&gt; Visual Studio 20XX Command Prompt:<br />
<img class="aligncenter" src="http://img214.imageshack.us/img214/2503/vsprompt.png" alt="prompt visual studio" /></p>
<p>Vá até o caminho que você salvou o Boost e digite o seguinte comando:</p>
<p><pre class="brush: cpp;">
//Para 32 bits:
bjam -a --build-type=complete --toolset=msvc address-model=32 --stagedir=Win32

//Para 64 bits:
bjam -a --build-type=complete --toolset=msvc address-model=64 --stagedir=Win64
</pre></p>
<p>Agora é só ter paciência e esperar a compilação terminar.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rafaelomarques.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rafaelomarques.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/rafaelomarques.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/rafaelomarques.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rafaelomarques.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rafaelomarques.wordpress.com/211/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rafaelomarques.wordpress.com/211/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rafaelomarques.wordpress.com/211/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rafaelomarques.wordpress.com&amp;blog=10015296&amp;post=211&amp;subd=rafaelomarques&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rafaelomarques.wordpress.com/2010/11/16/compilando-o-boost-em-windows-32-e-64-bits/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7dd77bf33b3ab37df96a155b38c5685d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ceb10n</media:title>
		</media:content>

		<media:content url="http://img181.imageshack.us/img181/9223/bjampath.png" medium="image">
			<media:title type="html">bjam-path</media:title>
		</media:content>

		<media:content url="http://img214.imageshack.us/img214/2503/vsprompt.png" medium="image">
			<media:title type="html">prompt visual studio</media:title>
		</media:content>
	</item>
	</channel>
</rss>
