<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-18941877</id><updated>2012-01-27T12:56:39.812-03:00</updated><category term='qualidade'/><category term='atari'/><category term='bug'/><category term='acento'/><category term='free'/><category term='quebra cabeça'/><category term='bde'/><category term='river raid'/><category term='personalizado'/><category term='transação'/><category term='query'/><category term='current_date'/><category term='exemplo'/><category term='clipe'/><category term='currículo viate'/><category term='email'/><category term='date picker'/><category term='iniciante'/><category term='write'/><category term='excluir'/><category term='extensão'/><category term='coleção'/><category term='clipes'/><category term='ensinar'/><category term='filmes'/><category term='while'/><category term='modalpopup'/><category term='exibir'/><category term='java'/><category term='JPEG'/><category term='APIs'/><category term='vs 2008'/><category term='gravar'/><category term='preview'/><category term='curso'/><category term='j2me'/><category term='bytes'/><category term='biquine cavadão'/><category term='desktop'/><category term='gravação'/><category term='shutdown'/><category term='design'/><category term='mp3'/><category term='ubuntu'/><category term='método'/><category term='discussão'/><category term='semana'/><category term='voltar'/><category term='listview'/><category term='iframe'/><category term='WebCam'/><category term='financeiro'/><category term='dhtml'/><category term='site'/><category term='grid'/><category term='csharp'/><category term='palmos'/><category term='processador'/><category term='vídeo'/><category term='otimizar'/><category term='botão'/><category term='SIM'/><category term='br'/><category term='erro'/><category term='cartão'/><category term='Serviço'/><category term='update'/><category term='focus'/><category term='datas'/><category term='parâmetro'/><category term='atualizar'/><category term='número de linha'/><category term='celular'/><category term='freeware'/><category term='button'/><category term='Application_Error'/><category term='jquery'/><category term='grátis'/><category term='xfire'/><category term='twitter'/><category term='problema'/><category term='log'/><category term='verificar'/><category term='decimal'/><category term='ferramenta'/><category term='tela'/><category term='enviar'/><category term='existe'/><category term='blogspot'/><category term='gridview'/><category term='fontes'/><category term='iss'/><category term='componente'/><category term='pesquisa'/><category term='firebird'/><category term='cliente ftp'/><category term='hint'/><category term='css'/><category term='windows xp'/><category term='croacia'/><category term='spinner'/><category term='.net'/><category term='freelance'/><category term='float'/><category term='aspx'/><category term='extreme programming'/><category term='backup'/><category term='asp'/><category term='sql lite'/><category term='teclas'/><category term='mudança'/><category term='xml'/><category term='exercícios'/><category term='servia'/><category term='urls'/><category term='html help'/><category term='error 404'/><category term='selected item'/><category term='ágil'/><category term='PlayGround'/><category term='onload'/><category term='descompactar'/><category term='sql server mobile'/><category term='pocket pc'/><category term='projeto'/><category term='global'/><category term='android'/><category term='dialogo'/><category term='software'/><category term='tempo'/><category term='market'/><category term='definir'/><category term='arqhp'/><category term='banco de dados'/><category term='hospedagem'/><category term='aprender'/><category term='midp'/><category term='GWT'/><category term='javascript'/><category term='turbo pascal'/><category term='youtube'/><category term='evento'/><category term='change event'/><category term='forum'/><category term='dbdesigner'/><category term='download'/><category term='aulas'/><category term='recomeço'/><category term='correção'/><category term='Padrões Web'/><category term='emulador'/><category term='função'/><category term='amigaveis'/><category term='forms'/><category term='windows'/><category term='arquivo'/><category term='csv'/><category term='file'/><category term='default'/><category term='revista'/><category term='sistema'/><category term='opera mini'/><category term='php'/><category term='abreviar nome'/><category term='videos'/><category term='livro'/><category term='servidor'/><category term='activities'/><category term='animação'/><category term='textbox'/><category term='algoritmo'/><category term='pascal'/><category term='on-line'/><category term='retorno'/><category term='controle de tempo'/><category term='campo'/><category term='RegExp'/><category term='aplicativo'/><category term='OsCommerce'/><category term='off-line'/><category term='cinema'/><category term='between'/><category term='linguagem'/><category term='digital'/><category term='mozilla'/><category term='maps'/><category term='resize'/><category term='aplicações'/><category term='posição'/><category term='gfix'/><category term='back'/><category term='inglês'/><category term='borda'/><category term='live'/><category term='sms'/><category term='migrar'/><category term='api'/><category term='positioning'/><category term='código fonte'/><category term='motorola atrix'/><category term='array'/><category term='feliz ano novo'/><category term='modaldialog'/><category term='restore'/><category term='quebra de linha'/><category term='remover'/><category term='paginação'/><category term='frança'/><category term='genius'/><category term='portal'/><category term='sqllite'/><category term='transações'/><category term='2008'/><category term='vídeos'/><category term='tabela'/><category term='escrever'/><category term='ficanceiro'/><category term='agenda'/><category term='dicas'/><category term='dactari'/><category term='DatePickerDialog'/><category term='title'/><category term='atalho'/><category term='pagseguro'/><category term='wordpress'/><category term='NÃO'/><category term='read'/><category term='extensões'/><category term='asp.net'/><category term='programadores'/><category term='framework'/><category term='loja virtual'/><category term='comunidade'/><category term='exportar'/><category term='sgbd'/><category term='windows vista'/><category term='msdn'/><category term='brpay'/><category term='loop'/><category term='carreira'/><category term='cliente'/><category term='easy almox'/><category term='compactar'/><category term='melhorar'/><category term='bíblia'/><category term='MyBase'/><category term='bd'/><category term='compact'/><category term='incompatibilidade'/><category term='foto'/><category term='Expressão Regular'/><category term='filho'/><category term='irc'/><category term='voltando'/><category term='access'/><category term='orientação'/><category term='instalar'/><category term='artigo'/><category term='menu'/><category term='ajuda'/><category term='senha'/><category term='projetos'/><category term='drop clomun'/><category term='orkut'/><category term='lote'/><category term='sqlite'/><category term='truques'/><category term='e-books'/><category term='refresh'/><category term='my sql'/><category term='activesync'/><category term='txt'/><category term='Google'/><category term='small basic'/><category term='skin'/><category term='textview'/><category term='gratuitos'/><category term='palm pré'/><category term='discador'/><category term='screen off'/><category term='programar'/><category term='bloqueado'/><category term='unzip'/><category term='joost'/><category term='capturar'/><category term='trocar'/><category term='templates'/><category term='curriculum'/><category term='filmar'/><category term='webbrowser'/><category term='column'/><category term='tratamento'/><category term='open source'/><category term='date'/><category term='dvd'/><category term='db2'/><category term='insert'/><category term='exemplos'/><category term='delphi'/><category term='c#'/><category term='firefox'/><category term='timer trab'/><category term='popup'/><category term='cursor'/><category term='webcast'/><category term='jogo'/><category term='web service'/><category term='imagem'/><category term='músicas'/><category term='windows mobile'/><category term='entrevista'/><category term='xp'/><category term='escolher data'/><category term='setKeepScreenOn'/><category term='sincronizar'/><category term='river 3d'/><category term='conexão'/><category term='dica'/><category term='xoom'/><category term='storedprocedure'/><category term='links'/><category term='kxml'/><category term='manter'/><category term='tableless'/><category term='oracle'/><category term='visual studio'/><category term='formatação'/><category term='split'/><category term='controle'/><category term='sysdate'/><category term='html'/><category term='SimpleCursorAdapter'/><category term='tamanho'/><category term='cursos'/><category term='pay pal'/><category term='controle almoxarifado'/><category term='modelagem'/><category term='screencast'/><category term='formatar'/><category term='screen on'/><category term='converter'/><category term='contatos'/><category term='dia'/><category term='load'/><category term='tecnologia'/><category term='configuração'/><category term='programação'/><category term='3G'/><category term='top sites'/><category term='desenvolvimento'/><category term='string'/><category term='ler'/><category term='dinheiro'/><category term='msn'/><category term='internet'/><category term='chat'/><category term='height'/><category term='apk.'/><category term='entre'/><category term='valores'/><category term='pull'/><category term='database'/><category term='referência'/><category term='linux'/><category term='pixel script'/><category term='browse'/><category term='beep'/><category term='visual studio 2008'/><category term='ajax'/><category term='áudio'/><category term='tutorial'/><category term='trigger'/><category term='confirmação'/><category term='blog'/><category term='Web 2.0'/><category term='sql server'/><category term='brazil'/><category term='teste'/><category term='lista'/><category term='hello world'/><category term='unknown isc'/><category term='ClientDataSet'/><category term='folha'/><category term='microsoft'/><category term='popular'/><category term='_id'/><category term='data'/><category term='trabalho'/><category term='zip'/><title type='text'>Psicanálise de Sistemas</title><subtitle type='html'>Blog feito para ajudar</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default?start-index=101&amp;max-results=100'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>183</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-18941877.post-4855480977428558091</id><published>2012-01-25T21:55:00.000-03:00</published><updated>2012-01-25T21:55:07.540-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='forms'/><category scheme='http://www.blogger.com/atom/ns#' term='erro'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Erro Oracle + Windows Forms</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Hoje fiz meu primeiro programa em Windows Forms Application (será que vou abandonar o Delphi 7, hehehe?).&lt;br /&gt;&lt;br /&gt;E é um programa pra valer, não é teste de aprendizado. E tinha que acessar o Oracle.&lt;br /&gt;&lt;br /&gt;Só que ao executar um select, deu o seguinte erro:&amp;nbsp;System.IO.FileNotFoundException was unhandled oracle&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Achei a solução aqui&lt;/b&gt;&lt;br /&gt;&lt;a href="https://forums.oracle.com/forums/thread.jspa?threadID=696384"&gt;https://forums.oracle.com/forums/thread.jspa?threadID=696384&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;&lt;b&gt;A solução é essa&lt;/b&gt;&lt;br /&gt;This issue occurs when your on a 64bit version of Windows. Change the target CPU in to x86 and things work fine.&lt;br /&gt;&lt;br /&gt;ou seja: vai em propriedades do projeto, opção Build, e altera a propriedade Plataform target para x86&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4855480977428558091?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4855480977428558091/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4855480977428558091&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4855480977428558091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4855480977428558091'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/erro-oracle-windows-forms.html' title='Erro Oracle + Windows Forms'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6239971515426928745</id><published>2012-01-24T09:33:00.000-03:00</published><updated>2012-01-24T09:33:09.146-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ficanceiro'/><category scheme='http://www.blogger.com/atom/ns#' term='curso'/><category scheme='http://www.blogger.com/atom/ns#' term='dinheiro'/><category scheme='http://www.blogger.com/atom/ns#' term='controle'/><title type='text'>Cursos para você aprender a cuidar do seu dinheiro</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Um dos meus objetivos em 2012 é me organizar financeiramente.&lt;br /&gt;&lt;br /&gt;Tou usando um &lt;a href="http://dprogrammer.blogspot.com/2012/01/programa-para-controle-financeiro-no.html" target="_blank"&gt;programa&lt;/a&gt; para anotar meus recebimentos e despesas.&lt;br /&gt;&lt;br /&gt;Depois vou ver se leio um livro que comprei em 2008, eu acho, hehehe&lt;br /&gt;&lt;br /&gt;Também tem esses cursos que achei ontem no twitter.&lt;br /&gt;&lt;br /&gt;Cursos e palestras para aprender a cuidar melhor do seu dinheiro&lt;br /&gt;&lt;a href="http://denysegodoy.folha.blog.uol.com.br/arch2012-01-22_2012-01-28.html"&gt;http://denysegodoy.folha.blog.uol.com.br/arch2012-01-22_2012-01-28.html&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Tem curso presencial e on-line&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6239971515426928745?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6239971515426928745/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6239971515426928745&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6239971515426928745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6239971515426928745'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/cursos-para-voce-aprender-cuidar-do-seu.html' title='Cursos para você aprender a cuidar do seu dinheiro'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3466173626814997311</id><published>2012-01-12T08:41:00.000-03:00</published><updated>2012-01-12T08:41:10.555-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='menu'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Menu bacana em CSS</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vou passar a utilizar esse menu nos meus projetos em asp.net&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-jFVNozrWWBw/Tw7GRLkCwWI/AAAAAAAAAII/JBlcQrbbatM/s1600/css-technique-21.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="140" src="http://4.bp.blogspot.com/-jFVNozrWWBw/Tw7GRLkCwWI/AAAAAAAAAII/JBlcQrbbatM/s320/css-technique-21.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Demonstração&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.webdesignerwall.com/demo/css3-dropdown-menu/"&gt;http://www.webdesignerwall.com/demo/css3-dropdown-menu/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Achei nesse site, tem 50 dicas de recursos em CSS e JavaScript&lt;br /&gt;&lt;br /&gt;&lt;b&gt;50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)&lt;/b&gt;&lt;br /&gt;&lt;a href="http://coding.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/"&gt;http://coding.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3466173626814997311?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3466173626814997311/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3466173626814997311&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3466173626814997311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3466173626814997311'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/menu-bacana-em-css.html' title='Menu bacana em CSS'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-jFVNozrWWBw/Tw7GRLkCwWI/AAAAAAAAAII/JBlcQrbbatM/s72-c/css-technique-21.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2795134746052857910</id><published>2012-01-10T20:56:00.000-03:00</published><updated>2012-01-10T20:56:12.818-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='foto'/><category scheme='http://www.blogger.com/atom/ns#' term='exibir'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Exibir uma foto armazenada no oracle em um site asp.net</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei aprender isso hoje.&lt;br /&gt;&lt;br /&gt;Pegar a foto de um cadastro e exibir na página. As imagens encontram-se armazenadas no banco de dados.&lt;br /&gt;&lt;br /&gt;Consegui usando esses códigos&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Insert /retrieve an image into/ from a blob field in Oracle database using C#.Net&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.codeproject.com/KB/database/Blobfield.aspx"&gt;http://www.codeproject.com/KB/database/Blobfield.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Aconteceu esse erro: Não foi possível localizar uma parte do caminho&lt;br /&gt;&lt;br /&gt;Achei a solução nesse forum&lt;br /&gt;&lt;a href="http://www.devmedia.com.br/forum/net/398027-Upload-Com-Asp-Net-C.html"&gt;http://www.devmedia.com.br/forum/net/398027-Upload-Com-Asp-Net-C.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Usei o this.Server.MapPath para gravar corretamente a imagem em disco para poder exibir no componente Image.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2795134746052857910?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2795134746052857910/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2795134746052857910&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2795134746052857910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2795134746052857910'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/exibir-uma-foto-armazenada-no-oracle-em.html' title='Exibir uma foto armazenada no oracle em um site asp.net'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8147182581822046110</id><published>2012-01-06T13:18:00.000-03:00</published><updated>2012-01-06T13:18:06.829-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='web service'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><title type='text'>Criando um serviço do windows em C#</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Ontem eu fiz o meu primeiro windows service :-)&lt;br /&gt;&lt;br /&gt;Vou precisar de um programa que de tempos em tempos execute uma tarefa.&lt;br /&gt;&lt;br /&gt;Pesquisando no google, encontrei esses dois artigos&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Create Windows Service in Visual Studio [C#]&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.csharp-examples.net/create-windows-service/"&gt;http://www.csharp-examples.net/create-windows-service/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Creating a Simple Windows Service in C#&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.switchonthecode.com/tutorials/creating-a-simple-windows-service-in-csharp"&gt;http://www.switchonthecode.com/tutorials/creating-a-simple-windows-service-in-csharp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;No segundo artigo, o desenvolvimento do Service é a partir de um programa console e nele mostra como instalar o windows service&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8147182581822046110?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8147182581822046110/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8147182581822046110&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8147182581822046110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8147182581822046110'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/criando-um-servico-do-windows-em-c.html' title='Criando um serviço do windows em C#'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6238221240732558007</id><published>2012-01-06T13:02:00.000-03:00</published><updated>2012-01-06T13:02:53.422-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='financeiro'/><category scheme='http://www.blogger.com/atom/ns#' term='controle'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Programa para controle financeiro no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Passei a utilizar esse programa &lt;a href="https://market.android.com/details?id=incomeincloud.android.activity" target="_blank"&gt;Finanças Pessoais&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ele está na Info de Dezembro, Guia de Aplicativos.&lt;br /&gt;&lt;br /&gt;Por enquanto tá tranquilo utilizá-lo. Só sentir falta de ter subcategorias.&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6238221240732558007?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6238221240732558007/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6238221240732558007&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6238221240732558007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6238221240732558007'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/programa-para-controle-financeiro-no.html' title='Programa para controle financeiro no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-133452019250868149</id><published>2012-01-04T08:39:00.000-03:00</published><updated>2012-01-04T08:39:56.271-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off-line'/><category scheme='http://www.blogger.com/atom/ns#' term='bíblia'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Bíblia off-line para android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Eu já tinha instalado o aplicativo &lt;a href="https://market.android.com/details?id=com.sirma.mobile.bible.android" target="_blank"&gt;Bíblia&lt;/a&gt; no meu smartphone, mas ele funciona com conexão de internet para baixar os textos. O interessante dele é que o novo testamento tem a opção de áudio.&lt;br /&gt;&lt;br /&gt;Como eu tava precisando de um que funcionasse of-line, achei o &lt;a href="https://market.android.com/details?id=com.cadreworks.bible_le" target="_blank"&gt;CadreBible&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-133452019250868149?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/133452019250868149/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=133452019250868149&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/133452019250868149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/133452019250868149'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/biblia-off-line-para-android.html' title='Bíblia off-line para android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2492592882271453301</id><published>2012-01-04T08:34:00.000-03:00</published><updated>2012-01-04T08:34:58.691-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='on-line'/><category scheme='http://www.blogger.com/atom/ns#' term='curso'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Curso on-line de android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Achei interessante esse curso. Consiga criar seu aplicativo android em 5 dias&lt;br /&gt;&lt;br /&gt;Achei a dica aqui&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Quer Aprender como Desenvolver Aplicativos Android em 5 dias?&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.mestreandroid.com.br/aprenda-desenvolver-android-em-5-dias/"&gt;http://www.mestreandroid.com.br/aprenda-desenvolver-android-em-5-dias/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2492592882271453301?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2492592882271453301/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2492592882271453301&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2492592882271453301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2492592882271453301'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/curso-on-line-de-android.html' title='Curso on-line de android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7605257427478214659</id><published>2012-01-04T08:31:00.000-03:00</published><updated>2012-01-04T08:31:13.794-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='controle'/><category scheme='http://www.blogger.com/atom/ns#' term='3G'/><title type='text'>Controlando o consumo 3G do seu android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Uma dica do site da &lt;a href="http://info.abril.com.br/" target="_blank"&gt;info&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;My Data Manager controla seu consumo de dados 3G&lt;/b&gt;&lt;br /&gt;&lt;a href="http://info.abril.com.br/noticias/blogs/download-da-hora/android/my-data-manager-controla-seu-consumo-de-dados-3g/"&gt;http://info.abril.com.br/noticias/blogs/download-da-hora/android/my-data-manager-controla-seu-consumo-de-dados-3g/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7605257427478214659?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7605257427478214659/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7605257427478214659&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7605257427478214659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7605257427478214659'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/controlando-o-consumo-3g-do-seu-android.html' title='Controlando o consumo 3G do seu android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8781564137902752188</id><published>2012-01-04T08:28:00.000-03:00</published><updated>2012-01-04T08:28:50.048-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='feliz ano novo'/><title type='text'>Feliz Ano Novo</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Desejo a todos um 2012 repleto de realizações na vida pessoal e profissional. Que todos consigam consiliar as duas coisas. Que possam organizar seu tempo e serem mais felizes.&lt;br /&gt;&lt;br /&gt;Que seja um ano de muita prósperidade, paz, saúde e muito amor.&lt;br /&gt;&lt;br /&gt;Que Deus abençoe a todos.&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8781564137902752188?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8781564137902752188/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8781564137902752188&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8781564137902752188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8781564137902752188'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2012/01/feliz-ano-novo.html' title='Feliz Ano Novo'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2171966519824346331</id><published>2011-12-13T16:05:00.000-03:00</published><updated>2011-12-13T16:05:12.594-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='while'/><category scheme='http://www.blogger.com/atom/ns#' term='loop'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Percorrendo os registros de uma consulta no Sqlite</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei num programa para Android, percorrer todos os registros que uma consulta.&lt;br /&gt;&lt;br /&gt;Pesquisei como implementar um while e achei esse código&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cursor cur = db.query("tbl_countries",&amp;nbsp;null, null, null, null, null, null);&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cur.moveToFirst();&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while (cur.isAfterLast() == false) {&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; view.append("n" + cur.getString(1));&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp; &amp;nbsp;cur.moveToNext();&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cur.close();&lt;br /&gt;&lt;br /&gt;o restante do código se encontra aqui&lt;br /&gt;&lt;a href="http://www.higherpass.com/Android/Tutorials/Accessing-Data-With-Android-Cursors/2/"&gt;http://www.higherpass.com/Android/Tutorials/Accessing-Data-With-Android-Cursors/2/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2171966519824346331?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2171966519824346331/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2171966519824346331&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2171966519824346331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2171966519824346331'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/12/percorrendo-os-registros-de-uma.html' title='Percorrendo os registros de uma consulta no Sqlite'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2005894484989813502</id><published>2011-12-02T08:41:00.000-03:00</published><updated>2011-12-02T08:41:37.717-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='acento'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Problema com acentuação no Sqlite do Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estava com esse probleminha na rotina de importação do arquivo no formato csv. As palavras acentuadas eram gravadas no banco de dados com os caracteres acentuados com uma interrogação no seu lugar. A palavra Atenção por exemplo, era gravada com Aten??o.&lt;br /&gt;&lt;br /&gt;Depois de muito procurar, acabei achando essa solução&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Android - make sure the SQLite uses UTF-8 as charset&lt;/b&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/4276215/android-make-sure-the-sqlite-uses-utf-8-as-charset/6002118#6002118"&gt;http://stackoverflow.com/questions/4276215/android-make-sure-the-sqlite-uses-utf-8-as-charset/6002118#6002118&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2005894484989813502?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2005894484989813502/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2005894484989813502&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2005894484989813502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2005894484989813502'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/12/problema-com-acentuacao-no-sqlite-do.html' title='Problema com acentuação no Sqlite do Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2030587386318958284</id><published>2011-12-02T08:08:00.000-03:00</published><updated>2011-12-02T08:08:54.912-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='restore'/><category scheme='http://www.blogger.com/atom/ns#' term='firebird'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><title type='text'>Mais um erro ao restaurar backup do Firebird</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei pegar um banco de dados de um cliente, e deixar a base vazia, excluir todos os registros, mas não de todas as tabelas.&lt;br /&gt;&lt;br /&gt;Fiz o backup, e na hora de restaurar deu o seguinte erro:&amp;nbsp;Invalid token. Malformed string.&lt;br /&gt;&lt;br /&gt;Procurando no google, achei essa solução&lt;br /&gt;&lt;br /&gt;[firebase-br] Problema ao restaurar backup na versão FB 2.5&lt;br /&gt;&lt;a href="http://firebase.com.br/pipermail/lista_firebase.com.br/2010-February/066318.html"&gt;http://firebase.com.br/pipermail/lista_firebase.com.br/2010-February/066318.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;aqui tem um help sobre backup/restore&lt;br /&gt;&lt;a href="http://www.destructor.de/firebird/gbak.htm"&gt;http://www.destructor.de/firebird/gbak.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;meu comando ficou assim&lt;br /&gt;gbak -c -v -fix_fss_m win1252 -user SYSDBA -password masterkey C:\vazio_backup.fbk C:\vazio.gdb&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2030587386318958284?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2030587386318958284/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2030587386318958284&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2030587386318958284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2030587386318958284'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/12/mais-um-erro-ao-restaurar-backup-do.html' title='Mais um erro ao restaurar backup do Firebird'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-544612044750321167</id><published>2011-12-02T07:20:00.000-03:00</published><updated>2011-12-02T07:20:23.781-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='voltar'/><category scheme='http://www.blogger.com/atom/ns#' term='back'/><category scheme='http://www.blogger.com/atom/ns#' term='botão'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='button'/><title type='text'>Tratando o evento voltar do android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Tive a necessidade de verificar se o usuário estava acionando o botão de voltar do android.&lt;br /&gt;&lt;br /&gt;Fiz uma tela de cadastro de clientes, e seria complicado depois de digitar todos o campos, sem querer o usuário voltar para a tela anterior, perdendo tudo o que foi digitado.&lt;br /&gt;&lt;br /&gt;Quando se está inserindo um novo registro, pergunto no evento se o usuário deseja mesmo voltar para a tela anterior, e informo que todos os dados digitados serão perdidos.&lt;br /&gt;&lt;br /&gt;Achei aqui essa dica&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Android: Prompt user to save changes when Back button is pressed&lt;/b&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/2459848/android-prompt-user-to-save-changes-when-back-button-is-pressed/2459967#2459967"&gt;http://stackoverflow.com/questions/2459848/android-prompt-user-to-save-changes-when-back-button-is-pressed/2459967#2459967&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-544612044750321167?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/544612044750321167/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=544612044750321167&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/544612044750321167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/544612044750321167'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/12/tratando-o-evento-voltar-do-android.html' title='Tratando o evento voltar do android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4032660861607213322</id><published>2011-11-05T10:27:00.001-03:00</published><updated>2011-11-05T10:28:56.341-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='email'/><category scheme='http://www.blogger.com/atom/ns#' term='enviar'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Enviando email no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estava precisando de uma rotina para enviar email dos erros que acontecem na tela de comunicação de um programa que fiz. Essa tela recebe um arquivo zipado com arquivos de atualização e também envia arquivos para a empresa. Além de implementar um tratamento de erro para mostrar na tela do usuário, também queria que esse registro fosse enviado para mim.&lt;br /&gt;&lt;br /&gt;Achei duas maneiras de se enviar email, por intent e de forma automática. Por intent precisa da intervenção do usuário.&lt;br /&gt;&lt;br /&gt;Estou usando essa rotina&lt;br /&gt;&lt;br /&gt;Sending Emails without User Intervention (no Intents) in Android&lt;br /&gt;&lt;a href="http://www.jondev.net/articles/Sending_Emails_without_User_Intervention_%28no_Intents%29_in_Android"&gt;http://www.jondev.net/articles/Sending_Emails_without_User_Intervention_%28no_Intents%29_in_Android&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;achei essa rotina aqui&lt;br /&gt;&lt;br /&gt;Sending Email in Android using JavaMail API without using the default android app(Builtin Email application)&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/2020088/sending-email-in-android-using-javamail-api-without-using-the-default-android-ap"&gt;http://stackoverflow.com/questions/2020088/sending-email-in-android-using-javamail-api-without-using-the-default-android-ap&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;e por intent&lt;br /&gt;&lt;br /&gt;How to send email from your application&lt;br /&gt;&lt;a href="http://www.helloandroid.com/tutorials/how-send-email-your-application"&gt;http://www.helloandroid.com/tutorials/how-send-email-your-application&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4032660861607213322?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4032660861607213322/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4032660861607213322&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4032660861607213322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4032660861607213322'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/11/enviando-email-no-android.html' title='Enviando email no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8516238251675695383</id><published>2011-11-04T22:19:00.001-03:00</published><updated>2011-11-04T22:20:07.755-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='restore'/><category scheme='http://www.blogger.com/atom/ns#' term='firebird'/><category scheme='http://www.blogger.com/atom/ns#' term='erro'/><title type='text'>Erro ao restaurar backup do Firebird</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Mais uma aventura com o Firebird.&lt;br /&gt;&lt;br /&gt;Recebi o backup de um cliente e acredito que a versão do banco dele seja menos atualizada que a minha. Estou usando o Firebird 2.5&lt;br /&gt;&lt;br /&gt;Ao restaurar recebi essa mensagem quando tava em uma tabela:&lt;br /&gt;&lt;br /&gt;IBE: Invalid token.&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Malformed string.&lt;br /&gt;&lt;br /&gt;Pesquisando, achei a solução, graças a Deus e aqueles que disponibilizam seus conhecimentos e... valeu google.&lt;br /&gt;&lt;br /&gt;Esse foi o comando que usei para conseguir restaurar o banco&lt;br /&gt;&lt;br /&gt;gbak -r -p 8192 -create -v -user SYSDBA -password masterkey -FIX_FSS_METADATA WIN1252 -REP banco.fbk banco.gdb&lt;br /&gt;&lt;br /&gt;links que achei&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tech.groups.yahoo.com/group/firebird-support/message/110416"&gt;http://tech.groups.yahoo.com/group/firebird-support/message/110416&lt;/a&gt;&lt;br /&gt;&lt;a href="http://firebirdpt.wordpress.com/2008/06/28/backup-e-restore-com-gbak-em-linha-de-comando/"&gt;http://firebirdpt.wordpress.com/2008/06/28/backup-e-restore-com-gbak-em-linha-de-comando/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://firebase.com.br/pipermail/lista_firebase.com.br/2010-February/066318.html"&gt;http://firebase.com.br/pipermail/lista_firebase.com.br/2010-February/066318.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8516238251675695383?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8516238251675695383/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8516238251675695383&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8516238251675695383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8516238251675695383'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/11/erro-ao-restaurar-backup-do-firebird.html' title='Erro ao restaurar backup do Firebird'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-318088178274222596</id><published>2011-10-20T10:33:00.000-03:00</published><updated>2011-10-20T10:33:25.235-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quebra de linha'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='trocar'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Alterando a quebra de linha de um campo no Sqlite</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei trocar a quebra de linha de um campo aonde é armazenada uma observação. O problema é que o usuário pode digitar com quebra de linha e quando exporta o arquivo txt, o registro fica em mais de uma linha no arquivo.&lt;br /&gt;&lt;br /&gt;Para solucionar, tive que dá um replace no select para trocar a quebra de linha por um espaço.&lt;br /&gt;&lt;br /&gt;Achei a dica aqui&lt;br /&gt;&lt;br /&gt;How to remove carriage returns in a text field in sqlite?&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/4642535/how-to-remove-carriage-returns-in-a-text-field-in-sqlite"&gt;http://stackoverflow.com/questions/4642535/how-to-remove-carriage-returns-in-a-text-field-in-sqlite&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-318088178274222596?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/318088178274222596/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=318088178274222596&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/318088178274222596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/318088178274222596'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/10/alterando-quebra-de-linha-de-um-campo.html' title='Alterando a quebra de linha de um campo no Sqlite'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-324565175605875493</id><published>2011-10-20T10:26:00.001-03:00</published><updated>2011-10-20T10:33:56.868-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='market'/><category scheme='http://www.blogger.com/atom/ns#' term='incompatibilidade'/><category scheme='http://www.blogger.com/atom/ns#' term='xoom'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Programa incompatível com Motorola Xoom no Android Market</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Foi detectando um problema com o motorola xoom ao baixar um aplicativo que está no Android Market. Disse que era incompatível. Como instalando pelo dropbox não tinha problema nenhum, então fui a caça da solução.&lt;br /&gt;&lt;br /&gt;Consegui resolver o problema com essas dicas&lt;br /&gt;&lt;br /&gt;Application does not show up in Android Market for Motorola XOOM tablet&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/5116768/application-does-not-show-up-in-android-market-for-motorola-xoom-tablet"&gt;http://stackoverflow.com/questions/5116768/application-does-not-show-up-in-android-market-for-motorola-xoom-tablet&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem Na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-324565175605875493?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/324565175605875493/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=324565175605875493&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/324565175605875493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/324565175605875493'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/10/programa-incompativel-com-motorola-xoom.html' title='Programa incompatível com Motorola Xoom no Android Market'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1983442461806997572</id><published>2011-10-13T09:06:00.000-03:00</published><updated>2011-10-13T09:06:23.860-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mudança'/><category scheme='http://www.blogger.com/atom/ns#' term='orientação'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='tela'/><title type='text'>Detectando a mudança de orientação da tela no android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei dessa rotina para saber quando a visualização está na horizontal, para aplicar um outro layout. É que nesse não dava para usar scroll.&lt;br /&gt;&lt;br /&gt;Tou usando esse exemplo&lt;br /&gt;&lt;br /&gt;How to detect orientation change in layout in Android?&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/5726657/how-to-detect-orientation-change-in-layout-in-android"&gt;http://stackoverflow.com/questions/5726657/how-to-detect-orientation-change-in-layout-in-android&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Também achei esse&lt;br /&gt;&lt;a href="http://android-er.blogspot.com/2010/08/orientationeventlistener-detect.html"&gt;http://android-er.blogspot.com/2010/08/orientationeventlistener-detect.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1983442461806997572?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1983442461806997572/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1983442461806997572&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1983442461806997572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1983442461806997572'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/10/detectando-mudanca-de-orientacao-da.html' title='Detectando a mudança de orientação da tela no android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7557099743167182297</id><published>2011-09-05T10:53:00.001-03:00</published><updated>2011-09-05T10:53:09.051-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='textview'/><category scheme='http://www.blogger.com/atom/ns#' term='número de linha'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>TextView com mais de uma linha no Android</title><content type='html'>&lt;br /&gt;HI,&lt;br /&gt;&lt;br /&gt;Precisei fazer uma tela para o usuário informar uma observação e queria que tivesse mais de uma linha.&lt;br /&gt;&lt;br /&gt;Consegui fazer usando partes desse código no layout do meu TextView&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;edittext &lt;="" android:id="@+id/EditText02" p=""&gt;&lt;/edittext&gt;&lt;br /&gt;android:layout_width="wrap_content" android:layout_height="wrap_content"&lt;br /&gt;android:lines="5" android:gravity="top|left" android:inputType="textMultiLine"&lt;br /&gt;android:scrollHorizontally="false"&lt;br /&gt;android:minWidth="10.0dip"&lt;br /&gt;android:maxWidth="5.0dip"/&amp;gt;&lt;br /&gt;&lt;br /&gt;que achei aqui&lt;br /&gt;&lt;br /&gt;Android multi line editText (Text area)&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/2446544/android-multi-line-edittext-text-area"&gt;http://stackoverflow.com/questions/2446544/android-multi-line-edittext-text-area&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7557099743167182297?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7557099743167182297/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7557099743167182297&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7557099743167182297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7557099743167182297'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/09/textview-com-mais-de-uma-linha-no.html' title='TextView com mais de uma linha no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8698189715942766158</id><published>2011-09-01T18:23:00.000-03:00</published><updated>2011-09-01T18:23:40.914-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='verificar'/><category scheme='http://www.blogger.com/atom/ns#' term='existe'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='arquivo'/><title type='text'>Manipulando arquivos com o Java</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei testar no android se um arquivo existia, e depois de ler o seu conteúdo, deletá-lo.&lt;br /&gt;&lt;br /&gt;Usei as rotinas que achei aqui&lt;br /&gt;&lt;br /&gt;Basic File Manipulation With Java&lt;br /&gt;&lt;a href="http://www.higherpass.com/java/Tutorials/Basic-File-Manipulation-With-Java/"&gt;http://www.higherpass.com/java/Tutorials/Basic-File-Manipulation-With-Java/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8698189715942766158?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8698189715942766158/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8698189715942766158&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8698189715942766158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8698189715942766158'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/09/manipulando-arquivos-com-o-java.html' title='Manipulando arquivos com o Java'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6347117021135227726</id><published>2011-08-29T08:42:00.001-03:00</published><updated>2011-08-30T18:21:02.138-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='otimizar'/><category scheme='http://www.blogger.com/atom/ns#' term='loop'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='lote'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='insert'/><title type='text'>Otimizando o processo de insert de muitos registros no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;A rotina de importação que implementei usando o&amp;nbsp;ContentValues... put... insert... ficou uma carroça puxada por lesmas. Vou ter que refazer tudo. Procurei por dicas no google e achei bons materiais. Ainda vou implementar.&lt;br /&gt;&lt;br /&gt;Aconselho uma lida nesse testo&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Database Speed Comparison&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.sqlite.org/speed.html"&gt;http://www.sqlite.org/speed.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Achei dua maneiras, e as duas tem que ter controle de transação.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;How to speed up multiple inserts in SQLite&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.tanguay.info/web2008/codeExample.php?id=728"&gt;http://www.tanguay.info/web2008/codeExample.php?id=728&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Android: Using DatabaseUtils.InsertHelper for faster insertions into SQLite database&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.outofwhatbox.com/blog/2010/12/android-using-databaseutils-inserthelper-for-faster-insertions-into-sqlite-database/"&gt;http://www.outofwhatbox.com/blog/2010/12/android-using-databaseutils-inserthelper-for-faster-insertions-into-sqlite-database/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tem esse outro texto também sobre como otimizar&lt;br /&gt;&lt;br /&gt;&lt;b&gt;SQLite Optimization FAQ&lt;/b&gt;&lt;br /&gt;&lt;a href="http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html"&gt;http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Acredito que eu passe a utilizar esse código&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;try {&lt;br /&gt;&amp;nbsp; &amp;nbsp; mDb.beginTransaction();&lt;br /&gt;&amp;nbsp; &amp;nbsp; for (Value value : values) {&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ih.prepareForInsert();&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ih.bind(colIdx, value.getSomeValue());&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; // ...&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ih.execute();&lt;br /&gt;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp; &amp;nbsp; mDb.setTransactionSuccessful();&lt;br /&gt;} finally {&lt;br /&gt;&amp;nbsp; &amp;nbsp; mDb.endTransaction();&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;b&gt;editando&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Achei esse código e estou utilizando ele. Passou de uns 15 minutos para menos de 1, hehehe.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Notes on Android SQLite bulk insert&lt;/b&gt;&lt;br /&gt;&lt;a href="http://sagistech.blogspot.com/2010/07/notes-on-android-sqlite-bukl-insert.html"&gt;http://sagistech.blogspot.com/2010/07/notes-on-android-sqlite-bukl-insert.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6347117021135227726?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6347117021135227726/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6347117021135227726&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6347117021135227726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6347117021135227726'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/otimizando-o-processo-de-insert-de.html' title='Otimizando o processo de insert de muitos registros no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6407926599006881252</id><published>2011-08-28T12:41:00.000-03:00</published><updated>2011-08-28T12:41:47.726-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='split'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><category scheme='http://www.blogger.com/atom/ns#' term='função'/><category scheme='http://www.blogger.com/atom/ns#' term='string'/><title type='text'>Função Split no Delphi</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estou utilizando essa função numa rotina para importar um arquivo texto delimitado.&lt;br /&gt;&lt;br /&gt;Splitting a string in a string list&lt;br /&gt;&lt;a href="http://www.delphi3000.com/articles/article_2618.asp?SK="&gt;http://www.delphi3000.com/articles/article_2618.asp?SK=&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6407926599006881252?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6407926599006881252/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6407926599006881252&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6407926599006881252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6407926599006881252'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/funcao-split-no-delphi.html' title='Função Split no Delphi'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-384088612522489029</id><published>2011-08-24T09:43:00.001-03:00</published><updated>2011-08-24T09:44:55.633-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='transação'/><category scheme='http://www.blogger.com/atom/ns#' term='controle'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Controle de transação no SQLite</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei colocar um controle de transação em uma rotina do sistema para Android que estou desenvolvendo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;db.beginTransaction();&lt;br /&gt;try {&lt;br /&gt;db.execSQL(...);&lt;br /&gt;db.execSQL(...);&lt;br /&gt;db.setTransactionSuccessful();&lt;br /&gt;} finally {&lt;br /&gt;&lt;br /&gt;db.endTransaction();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;achei aqui essa dica&lt;br /&gt;&lt;a href="http://groups.google.com/group/android-developers/browse_thread/thread/ebe11a0fada35754"&gt;http://groups.google.com/group/android-developers/browse_thread/thread/ebe11a0fada35754&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;outro exemplo&lt;br /&gt;&lt;a href="http://www.helloandroid.com/tutorials/database-transactions"&gt;http://www.helloandroid.com/tutorials/database-transactions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-384088612522489029?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/384088612522489029/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=384088612522489029&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/384088612522489029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/384088612522489029'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/controle-de-transacao-no-sqlite.html' title='Controle de transação no SQLite'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-9164312811696066089</id><published>2011-08-24T09:16:00.000-03:00</published><updated>2011-08-24T09:16:09.930-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='confirmação'/><category scheme='http://www.blogger.com/atom/ns#' term='dialogo'/><category scheme='http://www.blogger.com/atom/ns#' term='NÃO'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='SIM'/><title type='text'>Utilizando um dialogo de confirmação no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Aprendi uma maneira simples de criar um dialogo para solicitar a confirmação do usuário sobre alguma ação que será executada ou não no sistema. Um dialogo com as opções de SIM e NÃO por exemplo.&lt;br /&gt;&lt;br /&gt;Achei a dica aqui&lt;br /&gt;&lt;br /&gt;How to display a Yes/No dialog box in Android?&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/2478517/how-to-display-a-yes-no-dialog-box-in-android/2478662#2478662"&gt;http://stackoverflow.com/questions/2478517/how-to-display-a-yes-no-dialog-box-in-android/2478662#2478662&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {&lt;br /&gt;&amp;nbsp; &amp;nbsp; @Override&lt;br /&gt;&amp;nbsp; &amp;nbsp; public void onClick(DialogInterface dialog, int which) {&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; switch (which){&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; case DialogInterface.BUTTON_POSITIVE:&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //botão SIM clicado&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; case DialogInterface.BUTTON_NEGATIVE:&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //botão NÃO clicado&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;AlertDialog.Builder builder = new AlertDialog.Builder(this);&lt;br /&gt;builder.setMessage("Deseja excluir o registro?").setPositiveButton("SIM", dialogClickListener)&lt;br /&gt;&amp;nbsp; &amp;nbsp; .setNegativeButton("NÃO", dialogClickListener).show();&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-9164312811696066089?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/9164312811696066089/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=9164312811696066089&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9164312811696066089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9164312811696066089'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/utilizando-um-dialogo-de-confirmacao-no.html' title='Utilizando um dialogo de confirmação no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3293243120861346444</id><published>2011-08-24T09:06:00.000-03:00</published><updated>2011-08-24T09:06:09.493-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='personalizado'/><category scheme='http://www.blogger.com/atom/ns#' term='dialogo'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Criando um dialogo personalizado no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estava usando um AlertDialog para o usuário manipular o registro de uma tabela. O problema começou quando fui colocar um teste para saber se o usuário informou um campo obrigatório. Com o AlertDialog não consegui impedir que a tela se fechasse ao clicar no botão confirmar.&lt;br /&gt;&lt;br /&gt;A solução que encontrei foi usar um dialogo personalizado. Dessa maneira se estiver tudo ok, executo o comando de fechar o dialogo.&lt;br /&gt;&lt;br /&gt;How to display a custom dialog in your Android application&lt;br /&gt;&lt;a href="http://www.helloandroid.com/tutorials/how-display-custom-dialog-your-android-application"&gt;http://www.helloandroid.com/tutorials/how-display-custom-dialog-your-android-application&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3293243120861346444?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3293243120861346444/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3293243120861346444&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3293243120861346444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3293243120861346444'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/criando-um-dialogo-personalizado-no.html' title='Criando um dialogo personalizado no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4731080048169708204</id><published>2011-08-21T00:51:00.000-03:00</published><updated>2011-08-21T00:51:17.614-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='formatação'/><category scheme='http://www.blogger.com/atom/ns#' term='float'/><category scheme='http://www.blogger.com/atom/ns#' term='decimal'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Formatando casas decimais no android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Uma dica que usei para exibir um valor decimal formatado&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;import java.util.*;&lt;br /&gt;&lt;br /&gt;DecimalFormat dec = new DecimalFormat("###.##");&lt;br /&gt;&lt;br /&gt;System.out.println(dec.format(value));&lt;br /&gt;&lt;br /&gt;peguei aqui&lt;br /&gt;&lt;a href="http://www.daniweb.com/software-development/java/threads/32513/161716#post161716"&gt;http://www.daniweb.com/software-development/java/threads/32513/161716#post161716&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4731080048169708204?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4731080048169708204/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4731080048169708204&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4731080048169708204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4731080048169708204'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/formatando-casas-decimais-no-android.html' title='Formatando casas decimais no android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-5268365348521213972</id><published>2011-08-20T13:08:00.000-03:00</published><updated>2011-08-20T13:08:47.353-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='referência'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='parâmetro'/><title type='text'>Passagem de parâmetro por referência no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei receber o valor de uma função através do parâmetro, já que estava usando a função para retorna um outro valor. No Delphi e C# é moleza. Para conseguir fazer no android, só com essa dica que achei.&lt;br /&gt;&lt;br /&gt;Can I pass parameters by reference in Java?&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/1068760/can-i-pass-parameters-by-reference-in-java"&gt;http://stackoverflow.com/questions/1068760/can-i-pass-parameters-by-reference-in-java&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;AtomicReference&lt;object&gt; ref = new AtomicReference&lt;object&gt;("Hello");mutate(ref);System.out.println(ref.get()); //Goodbye!private void mutate(AtomicReference&lt;object&gt; ref) { ref.set("Goodbye"); }Espero que possa ser útilFiquem na Paz!!!&lt;/object&gt;&lt;/object&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-5268365348521213972?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/5268365348521213972/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=5268365348521213972&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/5268365348521213972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/5268365348521213972'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/passagem-de-parametro-por-referencia-no.html' title='Passagem de parâmetro por referência no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7010610575489413668</id><published>2011-08-16T15:18:00.000-03:00</published><updated>2011-08-16T15:18:32.007-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='csv'/><category scheme='http://www.blogger.com/atom/ns#' term='txt'/><category scheme='http://www.blogger.com/atom/ns#' term='exportar'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Criando arquivo texto com quebra de linha ( arquivo CSV )</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Vou ter que criar um arquivo txt &amp;nbsp;no sistema que estou desenvolvendo.&lt;br /&gt;&lt;br /&gt;Criei o arquivo usando essa dica&lt;br /&gt;&lt;br /&gt;How to export data to CSV file – Java&lt;br /&gt;&lt;a href="http://www.mkyong.com/java/how-to-export-data-to-csv-file-java/"&gt;http://www.mkyong.com/java/how-to-export-data-to-csv-file-java/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A bronca que surgiu, foi que no notepad não mostrava cada registro em uma linha, só no wordpad.&lt;br /&gt;&lt;br /&gt;Achei a solução aqui para resolver isso&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/4794428/android-java-newline-not-working"&gt;http://stackoverflow.com/questions/4794428/android-java-newline-not-working&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;só usar: \r\n&lt;br /&gt;no exemplo tem somento \n&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7010610575489413668?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7010610575489413668/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7010610575489413668&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7010610575489413668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7010610575489413668'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/criando-arquivo-texto-com-quebra-de.html' title='Criando arquivo texto com quebra de linha ( arquivo CSV )'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-9042050978713953280</id><published>2011-08-10T09:10:00.000-03:00</published><updated>2011-08-10T09:10:59.643-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quebra de linha'/><category scheme='http://www.blogger.com/atom/ns#' term='br'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Exibir texto com quebra de linha no android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Pretendo montar uma mensagem com quebra de linha usando o AlertDialog. Procurei por um exemplo usando o \n e acabei achando um bem melhor.&lt;br /&gt;&lt;br /&gt;Nesse exemplo usa-se a tag BR do html para criar o efeito de quebra de linha&lt;br /&gt;&lt;br /&gt;articleTextView.setText(Html.fromHtml(textForTextView));&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;achei aqui&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/2840608/how-do-i-add-a-newline-to-a-textview-in-android"&gt;http://stackoverflow.com/questions/2840608/how-do-i-add-a-newline-to-a-textview-in-android&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-9042050978713953280?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/9042050978713953280/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=9042050978713953280&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9042050978713953280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9042050978713953280'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/exibir-texto-com-quebra-de-linha-no.html' title='Exibir texto com quebra de linha no android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8286328850019608842</id><published>2011-08-09T09:10:00.000-03:00</published><updated>2011-08-09T09:10:17.965-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='sqllite'/><title type='text'>Android SQLite Database - Tutorial</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Um exemplo para se trabalhar com banco de dados no android&lt;br /&gt;&lt;br /&gt;Android SQLite Database - Tutorial&lt;br /&gt;&lt;a href="http://www.vogella.de/articles/AndroidSQLite/article.html"&gt;http://www.vogella.de/articles/AndroidSQLite/article.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8286328850019608842?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8286328850019608842/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8286328850019608842&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8286328850019608842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8286328850019608842'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/android-sqlite-database-tutorial.html' title='Android SQLite Database - Tutorial'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-573920914137872231</id><published>2011-08-09T09:06:00.000-03:00</published><updated>2011-08-09T09:06:36.790-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spinner'/><category scheme='http://www.blogger.com/atom/ns#' term='change event'/><category scheme='http://www.blogger.com/atom/ns#' term='selected item'/><title type='text'>Manipular evento do spinner ao mudar item</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Essa dica é para executar algum código ao selecionar um item do spinner.&lt;br /&gt;&lt;br /&gt;Nesse exemplo vi que tem um evento ao não escolher nada ou ao escolher o mesmo item, não sei ao certo. Na verdade estou enfrentando esse problema, ao clicar no item que já está selecionado.&lt;br /&gt;&lt;br /&gt;Android Spinner: Get the selected item change event&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/1337424/android-spinner-get-the-selected-item-change-event"&gt;http://stackoverflow.com/questions/1337424/android-spinner-get-the-selected-item-change-event&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-573920914137872231?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/573920914137872231/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=573920914137872231&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/573920914137872231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/573920914137872231'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/manipular-evento-do-spinner-ao-mudar.html' title='Manipular evento do spinner ao mudar item'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3034985416553569063</id><published>2011-08-04T09:44:00.000-03:00</published><updated>2011-08-04T09:44:52.810-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spinner'/><category scheme='http://www.blogger.com/atom/ns#' term='erro'/><category scheme='http://www.blogger.com/atom/ns#' term='cursor'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><title type='text'>Erro ao usar Spinner e Cursor</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Ontem me deparei com um erro ao entrar pela segunda vez numa tela que tem uns quatro spinners. No log dizia que a tabela já tava aberta, algo assim.&lt;br /&gt;&lt;br /&gt;Os erros que peguei e procurei no google são esses&lt;br /&gt;&lt;br /&gt;ERROR/Cursor(296): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/, table = null, query = select _id, Codigo, Descricao from tabela&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;08-04 03:38:15.472: ERROR/Cursor(298): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;O erro foi solucionado usando o comando:&amp;nbsp;startManagingCursor(cursor);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Que achei aqui&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/4991179/application-did-not-close-the-cursor-or-database-object-that-was-opened-here"&gt;http://stackoverflow.com/questions/4991179/application-did-not-close-the-cursor-or-database-object-that-was-opened-here&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3034985416553569063?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3034985416553569063/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3034985416553569063&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3034985416553569063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3034985416553569063'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/erro-ao-usar-spinner-e-cursor.html' title='Erro ao usar Spinner e Cursor'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8126514347462889983</id><published>2011-08-03T14:56:00.000-03:00</published><updated>2011-08-03T14:56:17.323-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tabela'/><category scheme='http://www.blogger.com/atom/ns#' term='spinner'/><category scheme='http://www.blogger.com/atom/ns#' term='campo'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Obter o valor de um campo da tabela associada ao Spinner</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Dessa vez precisei pegar o valor código da tabela associada ao Spinner, que não é o _id. O exemplo que achei permite pegar o valor de qualquer campo. Então dá para pegar o valor do campo descrição ou código.&lt;br /&gt;&lt;br /&gt;Exemplo:&lt;br /&gt;&lt;br /&gt;Tabela sexo com os seguintes campos: _id, codsexo e descsexo&lt;br /&gt;&lt;br /&gt;codsexo seria F | M&lt;br /&gt;e descsexo FEMININO | MASCULINO&lt;br /&gt;&lt;br /&gt;Para pegar o _id é só usar esse esquema:&lt;br /&gt;int cod_id = spinnersexoIndex.getSelectedItemPosition();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;E para pegar o valor dos demais campos:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;String spinnerString = null;&lt;br /&gt;Cursor cc = (Cursor)(spinnersexoIndex.getSelectedItem());&lt;br /&gt;if (cc != null) {&lt;br /&gt;&amp;nbsp; &amp;nbsp; spinnerString = cc.getString(&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cc.getColumnIndex("codsexo") );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;peguei esse exemplo aqui&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/1776552/android-how-to-get-selected-item-from-data-driven-spinner"&gt;http://stackoverflow.com/questions/1776552/android-how-to-get-selected-item-from-data-driven-spinner&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8126514347462889983?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8126514347462889983/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8126514347462889983&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8126514347462889983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8126514347462889983'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/obter-o-valor-de-um-campo-da-tabela.html' title='Obter o valor de um campo da tabela associada ao Spinner'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8744215219846319739</id><published>2011-08-01T08:34:00.000-03:00</published><updated>2011-08-01T08:34:00.387-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='setKeepScreenOn'/><category scheme='http://www.blogger.com/atom/ns#' term='screen off'/><category scheme='http://www.blogger.com/atom/ns#' term='screen on'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Evitando que a tela do android desligue</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Existe um processo executado no meu aplicativo que demora um certo tempo e tava querendo que a tela não desligasse, para não pará-lo.&lt;br /&gt;&lt;br /&gt;Na dica que achei existem duas maneiras para se fazer isso. Uma é via código e outra é um parâmetro do layout.&lt;br /&gt;&lt;br /&gt;Keep the screen on&lt;br /&gt;&lt;a href="http://www.androidsnippets.com/keep-the-screen-on"&gt;http://www.androidsnippets.com/keep-the-screen-on&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Na pesquisar eu achei esse código para executar algum código quando a tela é ligada ou desligada&lt;br /&gt;&lt;br /&gt;Handling Screen OFF and Screen ON Intents&lt;br /&gt;&lt;a href="http://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/"&gt;http://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8744215219846319739?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8744215219846319739/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8744215219846319739&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8744215219846319739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8744215219846319739'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/08/evitando-que-tela-do-android-desligue.html' title='Evitando que a tela do android desligue'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1666667968349688206</id><published>2011-07-31T13:46:00.002-03:00</published><updated>2011-07-31T18:21:11.322-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='áudio'/><category scheme='http://www.blogger.com/atom/ns#' term='mp3'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='beep'/><title type='text'>Executando um arquivo de áudio no android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estou querendo avisar quando termina um determinado processo aqui no meu programa utilizando um arquivo de áudio. Tipo um beep para avisar que terminou.&lt;br /&gt;&lt;br /&gt;Encontrei duas dicas e numa delas um site com arquivos de áudio.&lt;br /&gt;&lt;br /&gt;Creating Sound Effects in Android: Part 1&lt;br /&gt;&lt;a href="http://www.droidnova.com/creating-sound-effects-in-android-part-1,570.html"&gt;http://www.droidnova.com/creating-sound-effects-in-android-part-1,570.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Estou usando esse Sound Effects no meu aplicativo&lt;br /&gt;&lt;br /&gt;também achei esse outro, mas não consegui utilizá-lo&lt;br /&gt;&lt;br /&gt;beep by Intent&lt;br /&gt;&lt;a href="http://www.androidsnippets.com/beep-by-intent"&gt;http://www.androidsnippets.com/beep-by-intent&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;e o site com áudios para download&lt;br /&gt;&lt;a href="http://www.soundjay.com/beep-sounds-1.html"&gt;http://www.soundjay.com/beep-sounds-1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;é isso aí, espero que posso ser útil&lt;br /&gt;&lt;br /&gt;fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1666667968349688206?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1666667968349688206/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1666667968349688206&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1666667968349688206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1666667968349688206'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/07/executando-um-arquivo-de-audio-no.html' title='Executando um arquivo de áudio no android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4279195954101571244</id><published>2011-07-26T08:49:00.000-03:00</published><updated>2011-07-26T08:49:35.181-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><category scheme='http://www.blogger.com/atom/ns#' term='between'/><category scheme='http://www.blogger.com/atom/ns#' term='valores'/><category scheme='http://www.blogger.com/atom/ns#' term='entre'/><category scheme='http://www.blogger.com/atom/ns#' term='activities'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Passando valores entre Activities no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estou usando essa técnica para passar valores entre&amp;nbsp;Activities. Exemplo: Passar o row_id do cliente escolhido para a próxima tela.&lt;br /&gt;&lt;br /&gt;Passing Data Between Activities via Bundles&lt;br /&gt;&lt;a href="http://droidweb.com/2010/02/developer-tip-10-passing-data-between-activities-via-bundles/"&gt;http://droidweb.com/2010/02/developer-tip-10-passing-data-between-activities-via-bundles/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;outro link&lt;br /&gt;&lt;a href="http://thedevelopersinfo.wordpress.com/2009/10/15/passing-data-between-activities-in-android/"&gt;http://thedevelopersinfo.wordpress.com/2009/10/15/passing-data-between-activities-in-android/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Qualquer dúvida, podem dizer.&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4279195954101571244?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4279195954101571244/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4279195954101571244&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4279195954101571244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4279195954101571244'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/07/passando-valores-entre-activities-no.html' title='Passando valores entre Activities no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4874164418797886603</id><published>2011-07-11T10:17:00.000-03:00</published><updated>2011-07-11T10:17:49.934-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='abreviar nome'/><title type='text'>Abreviando nome no Oracle</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Para melhorar a comparação entre um nome digitando com um armazenado no banco, resolvi utilizar uma função para auxiliar. Dei preferência por essa que retorna apenas o primeiro e último nome. Assim se tiver armazenado abreviado, não tem problema. Não se trata de uma comparação crítica, é para validar a abertura de uma conta aonde o usuário precisa acertar um documento de identificação, a data de nascimento e o nome da mãe.&lt;br /&gt;&lt;br /&gt;Código da função&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE FUNCTION abrevia_nome (pValue IN VARCHAR2)&lt;br /&gt;RETURN VARCHAR2 IS&lt;br /&gt;&lt;br /&gt;nome VARCHAR2(100);&lt;br /&gt;Saida VARCHAR2(2000);&lt;br /&gt;&lt;br /&gt;BEGIN&lt;br /&gt;nome := pValue;&lt;br /&gt;SELECT SubStr(nome, 1, INSTR(UPPER(NOME), ' ')) ||&lt;br /&gt;REVERSE(Trim(SubStr(REVERSE(nome), 1, INSTR(UPPER(REVERSE(NOME)), ' ')))) INTO saida FROM dual;&lt;br /&gt;&lt;br /&gt;RETURN Nvl(Saida, pValue);&lt;br /&gt;END; -- Funcao abrevia_nome&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;achei ela aqui&lt;/div&gt;&lt;div&gt;&lt;a href="http://forum.imasters.com.br/topic/216052-funcao-para-abreviar-nomes/"&gt;http://forum.imasters.com.br/topic/216052-funcao-para-abreviar-nomes/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4874164418797886603?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4874164418797886603/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4874164418797886603&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4874164418797886603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4874164418797886603'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/07/abreviando-nome-no-oracle.html' title='Abreviando nome no Oracle'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3122727871388931877</id><published>2011-07-09T14:22:00.002-03:00</published><updated>2011-07-09T14:22:41.618-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='acento'/><category scheme='http://www.blogger.com/atom/ns#' term='remover'/><category scheme='http://www.blogger.com/atom/ns#' term='csharp'/><title type='text'>Remover acentos de strings (C#)</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Passei a usar essa rotina em meus códigos.&lt;br /&gt;&lt;br /&gt;Remover acentos de strings (C#)&lt;br /&gt;&lt;a href="http://www.e-bee.com.br/site/index.php/2009/04/08/remover-acentos-de-strings-c/"&gt;http://www.e-bee.com.br/site/index.php/2009/04/08/remover-acentos-de-strings-c/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3122727871388931877?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3122727871388931877/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3122727871388931877&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3122727871388931877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3122727871388931877'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/07/remover-acentos-de-strings-c.html' title='Remover acentos de strings (C#)'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8803303696831697555</id><published>2011-07-07T08:52:00.000-03:00</published><updated>2011-07-07T08:52:43.423-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='onload'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='modalpopup'/><title type='text'>Abrir o modalpopup ao entrar na página</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Precisei desse código para mostrar ao usuário as instruções de utilização de um site. Quase ninguém vai na página de ajuda, hehehe. Ligam logo para o call center.&lt;br /&gt;&lt;br /&gt;How To Open ModalPopup on page Load in ASP.NET&lt;br /&gt;&lt;a href="http://aspdotnetcodebook.blogspot.com/2008/01/how-to-open-modalpopup-on-page-load-in.html"&gt;http://aspdotnetcodebook.blogspot.com/2008/01/how-to-open-modalpopup-on-page-load-in.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8803303696831697555?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8803303696831697555/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8803303696831697555&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8803303696831697555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8803303696831697555'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/07/abrir-o-modalpopup-ao-entrar-na-pagina.html' title='Abrir o modalpopup ao entrar na página'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2195938023491161397</id><published>2011-06-30T08:41:00.000-03:00</published><updated>2011-06-30T08:41:48.969-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='write'/><category scheme='http://www.blogger.com/atom/ns#' term='read'/><category scheme='http://www.blogger.com/atom/ns#' term='file'/><category scheme='http://www.blogger.com/atom/ns#' term='escrever'/><category scheme='http://www.blogger.com/atom/ns#' term='ler'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='arquivo'/><title type='text'>Lendo e Escrevendo arquivos no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Mais um recurso que vou usar em um sistema para android que tou desenvolvendo.&lt;br /&gt;&lt;br /&gt;Vou precisar ler arquivos recebidos via ftp para popular as tabelas do sistema.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Android writing and reading files&lt;/b&gt;&lt;br /&gt;&lt;a href="http://huuah.com/android-writing-and-reading-files/"&gt;http://huuah.com/android-writing-and-reading-files/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2195938023491161397?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2195938023491161397/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2195938023491161397&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2195938023491161397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2195938023491161397'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/lendo-e-escrevendo-arquivos-no-android.html' title='Lendo e Escrevendo arquivos no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3735385933378367920</id><published>2011-06-30T08:37:00.000-03:00</published><updated>2011-06-30T08:37:56.191-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unzip'/><category scheme='http://www.blogger.com/atom/ns#' term='descompactar'/><category scheme='http://www.blogger.com/atom/ns#' term='compactar'/><category scheme='http://www.blogger.com/atom/ns#' term='zip'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Compactando e Descompactando no Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Vou deixar uma solução que achei para compactar e descompactar via programação no Android.&lt;br /&gt;&lt;br /&gt;Estou usando no sistema que estou desenvolvendo. Ficou uma beleza.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Unzipping Files with Android (Programmatically)&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.jondev.net/articles/Unzipping_Files_with_Android_(Programmatically)"&gt;http://www.jondev.net/articles/Unzipping_Files_with_Android_(Programmatically)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Zipping Files with Android (Programmatically)&lt;/b&gt;&lt;br /&gt;&lt;a href="http://jondev.net/articles/Zipping_Files_with_Android_(Programmatically)"&gt;http://jondev.net/articles/Zipping_Files_with_Android_(Programmatically)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3735385933378367920?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3735385933378367920/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3735385933378367920&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3735385933378367920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3735385933378367920'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/compactando-e-descompactando-no-android.html' title='Compactando e Descompactando no Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1977793753121317593</id><published>2011-06-17T16:16:00.002-03:00</published><updated>2011-06-17T17:38:05.062-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='log'/><category scheme='http://www.blogger.com/atom/ns#' term='global'/><category scheme='http://www.blogger.com/atom/ns#' term='evento'/><category scheme='http://www.blogger.com/atom/ns#' term='erro'/><category scheme='http://www.blogger.com/atom/ns#' term='Application_Error'/><category scheme='http://www.blogger.com/atom/ns#' term='tratamento'/><title type='text'>Erro estranho ao implementar captura dos erros no ASP.Net</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Decidi colocar um tratamento de erro em um site que estou criando, &amp;nbsp;e deu erro ao acessar o site, depois de colocar usuário e senha. O estranho, é que antes não dava nenhum erro, não acontecia nada no modo debug.&lt;br /&gt;&lt;br /&gt;Coloquei o código no&amp;nbsp;Application_Error do Global.asax&lt;br /&gt;&lt;br /&gt;Essa foi a mensagem de erro que começou a aparecer:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;System.Web.HttpException: Arquivo inexistente.&lt;br /&gt;&amp;nbsp; &amp;nbsp;em System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo, String physicalPath, HttpResponse response)&lt;br /&gt;&amp;nbsp; &amp;nbsp;em System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context)&lt;br /&gt;&amp;nbsp; &amp;nbsp;em System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback callback, Object state)&lt;br /&gt;&amp;nbsp; &amp;nbsp;em System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()&lt;br /&gt;&amp;nbsp; &amp;nbsp;em System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&amp;amp; completedSynchronously)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pesquisando no google, achei um problema desses, e provavelmente poderia ser um acesso a um arquivo no CSS. Analisando o CSS, encontrei o problema, tinha uma linha que não usava mais, que jogava no backgroud de uma div uma imagem que não existia.&lt;br /&gt;&lt;br /&gt;Achei a solução aqui&lt;br /&gt;&lt;a href="http://forums.infragistics.com/forums/p/19543/70812.aspx#70812"&gt;http://forums.infragistics.com/forums/p/19543/70812.aspx#70812&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para implementar um log de erros, vocês podem tomar como base esse tutorial&lt;br /&gt;&lt;a href="http://www.macoratti.net/07/08/aspn_lge.htm"&gt;http://www.macoratti.net/07/08/aspn_lge.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Solução de como pegar a mensagem de erro,&amp;nbsp;Server.GetLastError()&lt;br /&gt;&lt;a href="http://pt.w3support.net/index.php?db=so&amp;amp;id=343014"&gt;http://pt.w3support.net/index.php?db=so&amp;amp;id=343014&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Caso queiram enviar o erro por email&lt;br /&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/pt-BR/aspnetpt/thread/9c152de9-2984-4854-9c48-0354df27225c"&gt;http://social.msdn.microsoft.com/Forums/pt-BR/aspnetpt/thread/9c152de9-2984-4854-9c48-0354df27225c&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Espero que possa ser útil.&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1977793753121317593?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1977793753121317593/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1977793753121317593&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1977793753121317593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1977793753121317593'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/erro-estranho-ao-implementar-captura.html' title='Erro estranho ao implementar captura dos erros no ASP.Net'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3713110685530567999</id><published>2011-06-17T08:40:00.002-03:00</published><updated>2011-06-17T08:43:33.573-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tamanho'/><category scheme='http://www.blogger.com/atom/ns#' term='height'/><category scheme='http://www.blogger.com/atom/ns#' term='iframe'/><category scheme='http://www.blogger.com/atom/ns#' term='resize'/><category scheme='http://www.blogger.com/atom/ns#' term='borda'/><category scheme='http://www.blogger.com/atom/ns#' term='refresh'/><title type='text'>Fazendo um IFrame ocupar todo o espaço do browser</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Colocaram uma TV aqui na sala para exibir a página de um sistema de monitoramento ( para acompanhar o status de servidores, processos, sistemas, etc. ). Aí eu tive a idéia de criar um sistema para trocar o conteúdo para ser exibido, para não ficar com a TV apenas com um conteúdo. Pensei em fazer em Delphi, mas achei melhor fazer em ASP.Net.&lt;br /&gt;&lt;br /&gt;Sabia que ia precisar deixar a página dando refresh a cada x tempo e que precisaria exibir a url do site na mesma página. Consegui fazer isso usando um IFrame. O desafio foi fazê-lo ficar sem as bordas e ocupar toda a área de exibição do browser, mesmo que ele estivesse em fullscreen.&lt;br /&gt;&lt;br /&gt;Comecei usando uns javascripts que achei, mas não gostei do resultado. Depois de algum tempo pesquisando, achei uma solução que resolveu o problema da borda e do redimensionamento.&lt;br /&gt;&lt;br /&gt;dessa maneira o width e o height ficam de acordo com a área client&lt;br /&gt;&lt;br /&gt;Achei aqui&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/247128/how-to-auto-size-an-iframe"&gt;http://stackoverflow.com/questions/247128/how-to-auto-size-an-iframe&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para concluir a página de exibição de páginas, usei essas idéias&lt;br /&gt;&lt;br /&gt;Carregando uma página no Iframe no codebehind do Asp.net&lt;br /&gt;&lt;a href="http://geekswithblogs.net/ranganh/archive/2005/04/25/37635.aspx"&gt;http://geekswithblogs.net/ranganh/archive/2005/04/25/37635.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Autorefresh&lt;br /&gt;&lt;a href="http://webdesign.about.com/od/metataglibraries/a/aa080300a.htm"&gt;http://webdesign.about.com/od/metataglibraries/a/aa080300a.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Também achei um javascript para a função de refresh&lt;br /&gt;&lt;a href="http://www.javascriptkit.com/script/script2/autofresh.shtml"&gt;http://www.javascriptkit.com/script/script2/autofresh.shtml&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Espero que possa ser útil&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3713110685530567999?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3713110685530567999/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3713110685530567999&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3713110685530567999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3713110685530567999'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/fazendo-um-iframe-ocupar-todo-o-espaco.html' title='Fazendo um IFrame ocupar todo o espaço do browser'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7180683327710076710</id><published>2011-06-11T12:44:00.004-03:00</published><updated>2011-06-11T13:14:59.069-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='converter'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='compact'/><category scheme='http://www.blogger.com/atom/ns#' term='sql lite'/><category scheme='http://www.blogger.com/atom/ns#' term='migrar'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Migrando um banco Sql Server Compact para SQLite</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mas uma bronca que consegui resolver, graças a Deus.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Vou iniciar o desenvolvimento de um sistema de forças de venda para android. Fiz um para windows mobile. Como não tava querendo criar todas as tabelas no SQLite, resolvi buscar uma ferramenta para realizar esse trabalho.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;O mais perto que cheguei, foi de um programa para migrar um banco de dados SQL Server para SQLite. Antes disso eu tinha encontrado um programa para exportar a estrutura e os dados do SQL Server Compact.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Então eu decidi recriar o banco de dados no SQL Server, e do SQL Server, migrar para o SQLite. Pura gambiarra? hehehe. O importante é que consegui criar o banco de dados completo para SQLite.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Receita do que precisei:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Utilitário para exportar a estrutura e os dados do sql server compact usando o SQL Server Management Studio.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SQL Compact data and schema script utility&lt;/div&gt;&lt;div&gt;&lt;a href="http://exportsqlce.codeplex.com/releases/view/52878"&gt;http://exportsqlce.codeplex.com/releases/view/52878&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Programa para criar um banco SQLite a partir de um banco de dados SQL Server&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Convert SQL Server DB to SQLite DB&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.codeproject.com/KB/database/convsqlservertosqlite.aspx"&gt;http://www.codeproject.com/KB/database/convsqlservertosqlite.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Tem um porém nesse programa. Ao utilizar o executável, deu um erro, disse que não encontrava o System.Data.SQLite.dll. Fui atrás desse arquivo no google e instalei no meu notebook.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;System.Data.SQLite&lt;/div&gt;&lt;div&gt;&lt;a href="http://sqlite.phxsoftware.com/"&gt;http://sqlite.phxsoftware.com/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Outro porém. Mesmo instalando, continuou dando erro. Vi que poderia ser problema de diferença de versão. Resolvi baixar o código fonte, adicionar em Reference a dll System.Data.SQLite e executar. Repeti o processo e deu certo&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Agora tá tudo blz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fica a dica de ferramentas para se trabalhar com o SQLite&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.sqlite.org/cvstrac/wiki?p=ManagementTools"&gt;http://www.sqlite.org/cvstrac/wiki?p=ManagementTools&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://sqlitedesigner.sourceforge.net/"&gt;http://sqlitedesigner.sourceforge.net/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://sqliteman.com/"&gt;http://sqliteman.com/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://sqlitestudio.one.pl/index.rvt"&gt;http://sqlitestudio.one.pl/index.rvt&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Espero que posso ajudar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7180683327710076710?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7180683327710076710/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7180683327710076710&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7180683327710076710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7180683327710076710'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/migrando-um-banco-sql-server-compact.html' title='Migrando um banco Sql Server Compact para SQLite'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8086478471763815752</id><published>2011-06-10T22:12:00.006-03:00</published><updated>2011-06-11T13:16:09.710-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pesquisa'/><category scheme='http://www.blogger.com/atom/ns#' term='paginação'/><category scheme='http://www.blogger.com/atom/ns#' term='popup'/><category scheme='http://www.blogger.com/atom/ns#' term='focus'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='modaldialog'/><category scheme='http://www.blogger.com/atom/ns#' term='gridview'/><title type='text'>Trabalhando com o ModalPopup do Ajax Asp.Net</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Não pretendo nesse post ensinar a implementar um dialogo modal no asp.net. Vou colocar aqui todo o material que me ajudou a deixar o meu dialogo funcional, do jeito que eu queria.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Minha necessidade: Uma tela de pequisa, que jogasse a descrição do item desejado em um textbox da página. Usei o ModalPopupExtender e no panel coloquei um textbox para o usuário digitar o termo, um botão para acionar a pesquisa, um gridview para listar o resultado e um botão para fechar o dialogo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Problemas que encontrei: Ao clicar no botão de Pesquisar, a dialogo fechava. Na paginação, dava erro ao tentar ir para outra página no gridview. Ao entrar novamente no dialogo, os resultados da pesquisa ainda estavam no gridview.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Sites que usei para elaborar meu dialogo modal de pesquisa.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Para implementar o dialogo:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ModalPopup Demonstration&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ModalPopup/ModalPopup.aspx"&gt;http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ModalPopup/ModalPopup.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Working with ModalPopup Ajax Control&lt;/div&gt;&lt;div&gt;&lt;a href="http://aspalliance.com/1509_Working_with_ModalPopup_Ajax_Control.all"&gt;http://aspalliance.com/1509_Working_with_ModalPopup_Ajax_Control.all&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Using the ASP.NET AJAX ModalPopup in an ASP.NET 3.5 application&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.dotnetcurry.com/ShowArticle.aspx?ID=285"&gt;http://www.dotnetcurry.com/ShowArticle.aspx?ID=285&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Evitando que a tela se feche:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/41824/how-do-i-prevent-the-closing-of-modal-popup-windowmodalpopupextender-on-postbac/41910#41910"&gt;http://stackoverflow.com/questions/41824/how-do-i-prevent-the-closing-of-modal-popup-windowmodalpopupextender-on-postbac/41910#41910&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Por exemplo, no botão de Pesquisar, coloquei esse código para evitar que a tela desaparecesse&lt;/div&gt;&lt;div&gt;MyModalPopoupExtender.Show()&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Para resolver o problema do pageindexchanging:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://tiredblogger.wordpress.com/2007/08/14/updated-creating-a-lookup-modal-popup/"&gt;http://tiredblogger.wordpress.com/2007/08/14/updated-creating-a-lookup-modal-popup/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;analisem esse código&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(85, 85, 85); font-family: Verdana, 'BitStream vera Sans', Helvetica, sans-serif; font-size: 12px; line-height: 17px; "&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: blue; "&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(85, 85, 85); font-family: Verdana, 'BitStream vera Sans', Helvetica, sans-serif; font-size: 12px; line-height: 17px; "&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: blue; "&gt;protected&lt;/span&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt; &lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: blue; "&gt;void&lt;/span&gt; StudentLookupGridView_PageIndexChanging(&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: blue; "&gt;object&lt;/span&gt; sender,&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(43, 145, 175); "&gt;GridViewPageEventArgs&lt;/span&gt; e)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: green; "&gt;// Recapture the current StudentCollection.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt;StudentLookupGridView.DataSource =&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt;(&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(43, 145, 175); "&gt;StudentCollection&lt;/span&gt;)Session[&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(163, 21, 21); "&gt;"LookupStudentCollection"&lt;/span&gt;];&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: green; "&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: green; "&gt;// Set to the “new page”.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt;StudentLookupGridView.PageIndex = e.NewPageIndex;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: green; "&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; color: green; "&gt;// Rebind the data.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-indent: 0.5in; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt;StudentLookupGridView.DataBind();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 9pt; font-family: Consolas; "&gt;}&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;outro link, ModalPopupExtender and GridView paging problem&lt;/div&gt;&lt;div&gt;&lt;a href="http://forums.asp.net/p/1194325/2059820.aspx"&gt;http://forums.asp.net/p/1194325/2059820.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Para limpar o resultado da pesquisa:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://forums.asp.net/t/1182860.aspx/1?Clear+All+Rows+from+GridView"&gt;http://forums.asp.net/t/1182860.aspx/1?Clear+All+Rows+from+GridView&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;GridView1.DataSource = null;&lt;/div&gt;&lt;div&gt;GridView1.DataBind();&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Para resetar o SelectedIndex e o PageIndex:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;GridView1.SelectedIndex = -1;&lt;/div&gt;&lt;div&gt;GridView1.PageIndex = 0; &lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Usei a opção AutoGenerateSelectButton do gridview para o usuário clicar e indicar o item que ele deseja escolher. Caso não se faça isso, em uma nova busca vai mostrar selecionado no gridview um item qualquer da mesma posiçao do item seleiconado anteriomente. E também vai indicar no contador de paginação a última página clicada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Coloquei esses códigos no botão de pesquisar, depois de setar o datasource com o resultado da pesquisa.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Definindo o focus de um componente ao abrir o modal dialog&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Usei essa solução. Funcionou perfeitamente.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ASP.NET: Setting Focus in Modal Dialogs&lt;/div&gt;&lt;div&gt;&lt;a href="https://msmvps.com/blogs/deborahk/archive/2009/12/16/asp-net-setting-focus-in-modal-dialogs.aspx"&gt;https://msmvps.com/blogs/deborahk/archive/2009/12/16/asp-net-setting-focus-in-modal-dialogs.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Executando a pesquisa ao pressionar ENTER&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Definindo a propriedade DefaultButton do panel, funciona. Mas eu quis utilizar o ENTER também para confirmar a linha selecionada, caso o usuário quisesse usar o TAB para navegar pelas linhas do gridview.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Usei uma função no TextBox da pesquisa, para acionar um cliquei no portão de Pesquisa&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Achei aqui&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.vbforums.com/showthread.php?t=598887"&gt;http://www.vbforums.com/showthread.php?t=598887&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Nesse post: &lt;a href="http://www.vbforums.com/showpost.php?p=3700049&amp;amp;postcount=7"&gt;http://www.vbforums.com/showpost.php?p=3700049&amp;amp;postcount=7&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pronto!!!! Foi tudo que achei em dois dias de trabalho para criar a minha tela de pesquisa. Graças a Deus, tá tudo blz. Agora vou trabalhar no layout.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ficou assim:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/-wm3xaNcWJwQ/TfLPYX-qaWI/AAAAAAAAAH8/OLFx6cEXNXo/s1600/tela_pesquisa_modal.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://4.bp.blogspot.com/-wm3xaNcWJwQ/TfLPYX-qaWI/AAAAAAAAAH8/OLFx6cEXNXo/s400/tela_pesquisa_modal.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5616779702945081698" style="cursor: pointer; width: 400px; height: 330px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Espero que possa ajudar&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8086478471763815752?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8086478471763815752/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8086478471763815752&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8086478471763815752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8086478471763815752'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/trabalhando-com-o-modalpopup-do-ajax.html' title='Trabalhando com o ModalPopup do Ajax Asp.Net'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-wm3xaNcWJwQ/TfLPYX-qaWI/AAAAAAAAAH8/OLFx6cEXNXo/s72-c/tela_pesquisa_modal.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6798137328505710346</id><published>2011-06-03T17:59:00.003-03:00</published><updated>2011-06-03T18:05:35.703-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='instalar'/><category scheme='http://www.blogger.com/atom/ns#' term='aplicativo'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='apk.'/><title type='text'>Instalando aplicativos no android facilmente</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Sei que tem como instalar através do emulador, mas eu achei uma maneira mais fácil, assim considero. Tou sempre conectado mesmo, hehehe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;É usando o serviço do &lt;a href="http://db.tt/Blom5Cq"&gt;Dropbox&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Faço o upload do apk e baixo usando o celular, molezinha, hehehe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Acessem esse link:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.blogdoandroid.com/2010/06/androidicas-instale-rapidamente-arquivos-apk-usando-o-dropbox/"&gt;http://www.blogdoandroid.com/2010/06/androidicas-instale-rapidamente-arquivos-apk-usando-o-dropbox/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Nele tem um passo-a-passo para fazer essa manobra.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Outra opção é pelo QRCode&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tecmundo.com.br/5068-como-instalar-aplicativos-no-android.htm"&gt;http://www.tecmundo.com.br/5068-como-instalar-aplicativos-no-android.htm&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6798137328505710346?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6798137328505710346/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6798137328505710346&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6798137328505710346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6798137328505710346'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/instalando-aplicativos-no-android.html' title='Instalando aplicativos no android facilmente'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6731013832346807265</id><published>2011-06-03T13:54:00.004-03:00</published><updated>2011-06-03T14:40:41.494-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='_id'/><category scheme='http://www.blogger.com/atom/ns#' term='SimpleCursorAdapter'/><category scheme='http://www.blogger.com/atom/ns#' term='listview'/><category scheme='http://www.blogger.com/atom/ns#' term='column'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Column does not exist</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mais uma surra no Android. Levei algumas horas para descobrir o erro. Não tinha procurado no google, por que eu achava que eu tava informando errado o nome do campo, ou que estava pegando a variável da tabela expenses.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Resolvi criar uma tabela no exemplo de estudo para armazenar as categorias das despesas. Criei com os campos idcat e desccat. Criei as classes para manipular a tabela, tudo indo ok, tava inserindo. Mas quando chegou na hora de listar as categorias na tela, deu o seguinte erro: &lt;b&gt;java.lang.IllegalArgumentException: column '_id' does not exist&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;O que me confundiu, é que na tabela de expenses, existe esse campo. Pensei que tava misturando os código, etc. Depois de um monte de tentativas, de alterações no código, de criar os log para saber o que estava acontecendo ( no log mostrava o nome certo da variável idcat ). Resolvi pesquisar no google pela mensagem de erro: java.lang.IllegalArgumentException  column does not exist . No resultado vi um monte de _id. Achei estranho. Um monte de gente faltando esse campo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Foi aí que descobrir entrando nas páginas, que usando o &lt;b&gt;SimpleCursorAdapter&lt;/b&gt;, &lt;b&gt;é obrigatório ter uma campo único com o nome _id&lt;/b&gt;, hehehe. Pensei que ia ter que mudar o  nome do campo, de idcat para _id, mas eu vi uma dica de mudar o nome do campo no select, ficando assim: select idcat as _id, desccat from categories.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mas para executar essa query é preciso usar o rawQuery no lugar do query.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ficou assim o código: &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;public Cursor allCategories(){&lt;/div&gt;&lt;div&gt;  return mDb.rawQuery("select idcat as _id, namecategory from " + DB_TABLE_CATEGORIES,   null);&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;e criei mais uma variável para representar esse campo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;public static final String KEY_CAT_ID = "idcat";&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;public static final String KEY_CAT_ROWID = "_id";&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;public static final String KEY_CAT_DESCRIPTION = "namecategory";&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;é isso aí, espero que possa ser útil.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;links que achei&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://androidyou.blogspot.com/2010/05/javalangillegalargumentexception-column.html"&gt;http://androidyou.blogspot.com/2010/05/javalangillegalargumentexception-column.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/3244472/android-sqlite-exceptionjava-lang-illegalargumentexception-column-id-does-no"&gt;http://stackoverflow.com/questions/3244472/android-sqlite-exceptionjava-lang-illegalargumentexception-column-id-does-no&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.anddev.org/illegalargumentex_column__id_does_not_exist_-_but_it_does-t10720.html"&gt;http://www.anddev.org/illegalargumentex_column__id_does_not_exist_-_but_it_does-t10720.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6731013832346807265?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6731013832346807265/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6731013832346807265&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6731013832346807265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6731013832346807265'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/column-does-not-exist.html' title='Column does not exist'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6388730089537718596</id><published>2011-06-02T10:23:00.011-03:00</published><updated>2011-06-02T10:51:41.852-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='title'/><category scheme='http://www.blogger.com/atom/ns#' term='dica'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><category scheme='http://www.blogger.com/atom/ns#' term='hint'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><category scheme='http://www.blogger.com/atom/ns#' term='textbox'/><title type='text'>Colocando o title dentro do textbox</title><content type='html'>&lt;div&gt;HI,&lt;br /&gt;&lt;br /&gt;Como não achei logo a solução no google, passei quase o dia todo para fazer isso. Eu já tinha tentando fazer usar isso, até consegui usando um código do &lt;a href="jquery.com"&gt;jQuery&lt;/a&gt;, mas o problema é que no campo senha ao invés de mostrar o tittle, mostrava um monte de asteriscos, hehehe. Tinha desistido de usar, mas aí o setor de marketing aqui da empresa que trabalho disse que eu precisa fazer a tela de login no mesmo estilo da tenha do twitter, sem usar o label do lado do textbox e sim colocar a descrição dentro.&lt;br /&gt;&lt;br /&gt;Testei várias soluções, algumas usavam dois textbox para a senha, etc. Por que o lance é ao entrar no text box, mudar o type dele para password.&lt;br /&gt;&lt;br /&gt;A solução que tou usando é o &lt;a href="http://plugins.jquery.com/project/ztInputHint"&gt;ZTINPUTHINT&lt;/a&gt;, que é um plugin para o &lt;a href="jquery.com"&gt;jQuery&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Dica: Controle o tamanho do textbox através do CSS, pq senão ele mostra um textbox de tamanho diferente quando abre a página, e quando você entra no componente é que ele mostra do tamanho que você definiu dentro do html.&lt;br /&gt;&lt;br /&gt;É possível ter um CSS para a dica e outra para o texto que vai ser digitado.&lt;br /&gt;&lt;br /&gt;Página de demonstração: &lt;a href="http://ztinputhint.googlecode.com/svn/other/demo.html"&gt;http://ztinputhint.googlecode.com/svn/other/demo.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Imagens da opção de login que fiz.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-564QkQwzVsU/TeeSwxzoJjI/AAAAAAAAAHg/KSFCyJ71U3I/s1600/tela_login_pusuario1.jpg"&gt;&lt;img style="width: 320px; height: 121px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5613616827241866802" border="0" alt="" src="http://1.bp.blogspot.com/-564QkQwzVsU/TeeSwxzoJjI/AAAAAAAAAHg/KSFCyJ71U3I/s320/tela_login_pusuario1.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-1LlRWz3w1pI/TeeTFVryV8I/AAAAAAAAAHo/J3IyKlGRl1Y/s1600/tela_login_pusuario2.jpg"&gt;&lt;img style="width: 320px; height: 123px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5613617180470040514" border="0" alt="" src="http://1.bp.blogspot.com/-1LlRWz3w1pI/TeeTFVryV8I/AAAAAAAAAHo/J3IyKlGRl1Y/s320/tela_login_pusuario2.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na PAZ!!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6388730089537718596?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6388730089537718596/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6388730089537718596&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6388730089537718596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6388730089537718596'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/06/colocando-o-title-dentro-do-textbox.html' title='Colocando o title dentro do textbox'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-564QkQwzVsU/TeeSwxzoJjI/AAAAAAAAAHg/KSFCyJ71U3I/s72-c/tela_login_pusuario1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2758450247381084733</id><published>2011-05-31T08:32:00.004-03:00</published><updated>2011-05-31T08:51:35.431-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='motorola atrix'/><category scheme='http://www.blogger.com/atom/ns#' term='bug'/><category scheme='http://www.blogger.com/atom/ns#' term='sms'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Motorola Atrix</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Como tou aprendendo a programa para o Android e sempre tive a vontade de comprar um celular com esse sistema operacional. Estava esperando o momento certo e ele tinha chegado. Estava com muita vontade de testar o programa no celular. No emulador num é a mesma coisa, hehehe. No windows mobile até dava, já que se usa uma canetinha. Mas passar o dedo na tela do computador, sem condições, hehehe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Estava esperando para comprar um com android 2.2. E recentemente foi lançado o &lt;a href="http://g1.globo.com/tecnologia/noticia/2011/04/g1-testou-o-atrix-celular-que-vira-notebook.html"&gt;Motorola Atrix&lt;/a&gt;. Pense no desejo de comprar um, mesmo custando quase o preço de um tablet. Mas eu considero essa compra como um investimento, já que tou aprendendo para migrar um sistema de força de vendas que temos para windows mobile.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mas não estou escrevendo apenas para falar dessa aquisição :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ele tem um probleminha com SMS, hehehe. Pense, quase me causa um problemão. Enviaram SMS para mim e eu nada de receber, e era importante.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pesquisando no google, encontrei essas soluções. Agora tá tudo blz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://forum.clubedohardware.com.br/showpost.php?p=5032235&amp;amp;postcount=14"&gt;http://forum.clubedohardware.com.br/showpost.php?p=5032235&amp;amp;postcount=14&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://forumatrixbrasil.forunsgratis.net/viewtopic.php?f=30&amp;amp;t=20&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a&amp;amp;sid=9f614c4a4a479a0a4618d504627ffe12&amp;amp;start=70"&gt;http://forumatrixbrasil.forunsgratis.net/viewtopic.php?f=30&amp;amp;t=20&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a&amp;amp;sid=9f614c4a4a479a0a4618d504627ffe12&amp;amp;start=70&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2758450247381084733?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2758450247381084733/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2758450247381084733&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2758450247381084733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2758450247381084733'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/motorola-atrix.html' title='Motorola Atrix'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4194832629335788445</id><published>2011-05-27T21:44:00.002-03:00</published><updated>2011-05-27T21:56:45.572-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aspx'/><category scheme='http://www.blogger.com/atom/ns#' term='iss'/><category scheme='http://www.blogger.com/atom/ns#' term='error 404'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Erro 404 no IIS</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Depois de um servidor windows 2003 ser formatado e o IIS instalado novamente, tive que configurar um site em aspx que estou criando.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Não funcionou, deu erro 404, de página não encontrada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fui almoçar e nosso gerente de T.I fez um teste colocando uma página teste.html dentro da pasta e ela foi exibida no browser. Então a configuração do endereço do site tava ok.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pesquisando mais um pouco no google, quando voltei, por "erro 404 ASPX iis" encontrei a solução para o problema. Estava desabilitada a permissão para exibir paginas Asp.Net 2.0.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Links&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.babooforum.com.br/forum/index.php?/topic/145200-iis-60-erro-http-404-em-paginas-asp/"&gt;http://www.babooforum.com.br/forum/index.php?/topic/145200-iis-60-erro-http-404-em-paginas-asp/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/44f16c37-f727-4244-9813-2289e13dadba.mspx?mfr=true"&gt;http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/44f16c37-f727-4244-9813-2289e13dadba.mspx?mfr=true&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;é isso aí&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4194832629335788445?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4194832629335788445/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4194832629335788445&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4194832629335788445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4194832629335788445'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/erro-404-no-iis.html' title='Erro 404 no IIS'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1717926865735367608</id><published>2011-05-22T20:27:00.002-03:00</published><updated>2011-05-22T20:33:47.966-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='drop clomun'/><category scheme='http://www.blogger.com/atom/ns#' term='emulador'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='pull'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Obtendo o Banco de Dados do emulador Android</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Essa dica é para obter o banco de dados que está no emulador.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Acessem esse site&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.boringmonday.com/jc/2010/11/22/sqlite-database-on-your-android-emulator/"&gt;http://www.boringmonday.com/jc/2010/11/22/sqlite-database-on-your-android-emulator/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Precisei manipular o banco de dados para saber como excluir um campo da tabela, criar uma trigger, etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Não dá para usar o comando alter table drop column no android. É preciso renomear a tabela, criar uma nova com o mesmo nome, depois dá um select insert para pupular a nova tabela e depois excluir a tabela que foi renomeada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fica assim o comando&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;db.execSQL("ALTER TABLE \"main\".\"expenses\" RENAME TO \"oXHFcGcd04oXHFcGcd04_expenses\"");&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;db.execSQL("CREATE TABLE \"main\".\"expenses\" (\"_id\" integer PRIMARY KEY ,\"description\" text NOT NULL ,\"value\" number(9,2) NOT NULL );");&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;db.execSQL("INSERT INTO \"main\".\"expenses\" SELECT \"_id\",\"description\",\"value\" FROM \"main\".\"oXHFcGcd04oXHFcGcd04_expenses\";");&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;db.execSQL("DROP TABLE \"main\".\"oXHFcGcd04oXHFcGcd04_expenses\";");&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1717926865735367608?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1717926865735367608/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1717926865735367608&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1717926865735367608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1717926865735367608'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/obtendo-o-banco-de-dados-do-emulador.html' title='Obtendo o Banco de Dados do emulador Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4264510733140871366</id><published>2011-05-22T12:34:00.004-03:00</published><updated>2011-05-22T12:44:07.585-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><category scheme='http://www.blogger.com/atom/ns#' term='atualizar'/><category scheme='http://www.blogger.com/atom/ns#' term='definir'/><category scheme='http://www.blogger.com/atom/ns#' term='DatePickerDialog'/><category scheme='http://www.blogger.com/atom/ns#' term='update'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Definindo a data inicial do DatePickerDialog</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Tinha ido dormir umas quatro da manhã tentando definir a data do Date Picker Dialog com a data que tá gravada na tabela quando se está editando o registro. Achei um exemplo, mas não consegui fazer, devia ser o sono, pois, analisando o mesmo exemplo agora de manhã depois de ter acordado ( a hora? meio dia, hehehe ), consegui botar para funcionar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Agora quando se está editando, é exibida a data que está gravada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiz com base nesse exemplo&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/5593963/how-to-update-the-date-in-datepiker-dialog-android"&gt;http://stackoverflow.com/questions/5593963/how-to-update-the-date-in-datepiker-dialog-android&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Código que estou utilizando&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;    @Override&lt;/div&gt;&lt;div&gt;    protected Dialog onCreateDialog(int id) {&lt;/div&gt;&lt;div&gt;        switch (id) {&lt;/div&gt;&lt;div&gt;        case DATE_DIALOG_ID:        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;if (definirdata){        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;String _date[] = mPickDateExpense.getText().toString().split("/");&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;mYear = Integer.parseInt(_date[2]);        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;mMonth = Integer.parseInt(_date[1]) - 1; // mes vai de 0 a 11        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;mDay = Integer.parseInt(_date[0]);&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;definirdata = false;                &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;            return new DatePickerDialog(this,&lt;/div&gt;&lt;div&gt;                        mDateSetListener,&lt;/div&gt;&lt;div&gt;                        mYear, mMonth, mDay);&lt;/div&gt;&lt;div&gt;        }&lt;/div&gt;&lt;div&gt;        return null;&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4264510733140871366?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4264510733140871366/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4264510733140871366&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4264510733140871366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4264510733140871366'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/definindo-data-inicial-do.html' title='Definindo a data inicial do DatePickerDialog'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1113524261021881038</id><published>2011-05-22T01:37:00.005-03:00</published><updated>2011-05-22T02:17:20.253-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><category scheme='http://www.blogger.com/atom/ns#' term='converter'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='gravar'/><category scheme='http://www.blogger.com/atom/ns#' term='string'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Gravando datas no SQLite do Android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Continuo avançando aqui no exemplo expenses. Hoje consegui gravar a data no banco de dados, graças a Deus.&lt;br /&gt;&lt;br /&gt;Depois de muita tentativa e erro e muitas pesquisas no Google, fui achando as soluções.&lt;br /&gt;&lt;br /&gt;Primeiro erro que me deparei foi esse: java.text.ParseException: Unparseable date&lt;br /&gt;&lt;br /&gt;Tava tentando converter a data da despesa ( uma string ) que tava no formato dd-MM-yyyy para jogar dentro de uma variável do tipo data. Só depois que percebi que tinha esquecido de trocar o traço pela barra deixando o formato assim: dd/MM/yyyy.&lt;br /&gt;&lt;br /&gt;Código para converter uma string em data&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Date datepayment =  formatter.parse(datepaymentText.getText().toString());&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;datepaymentText é um Button.&lt;br /&gt;&lt;br /&gt;O segundo erro que me deparei foi: java.lang.ClassCastException: java.util.Date&lt;br /&gt;&lt;br /&gt;Pensei que o problema era na hora de gravar no campo data da tabela. Desabilitei a linha que dá um insert no banco e mesmo assim tava dando esse erro. Então deduzi que o problema era na passagem de parametro. Fiquei pensando, como é que pode passar um campo data para um metódo que tem uma variavel do tipo data e dá erro?&lt;br /&gt;&lt;br /&gt;Pesquisando no google descobrir que ao invés de usar a biblioteca java.sql.Date, eu deveria usar java.util.Date. Depois que fiz isso, não deu mais erro.&lt;br /&gt;&lt;br /&gt;E nessa mesma busca vi que eu deveria converter essa variável data que tá no formato dd/MM/yyyy para yyyy-MM-dd, que é o formaro do banco de dados.&lt;br /&gt;&lt;br /&gt;O código para gravar a data no banco de dados ficou assim:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;public long createExpense(Date datepayment){&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; ContentValues initialValues = new ContentValues();&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; dateFormat.applyPattern("yyyy-MM-dd");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; initialValues.put(KEY_DATEPAYMENT, dateFormat.format(datepayment));          &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; return mDb.insert(DB_TABLE, null, initialValues);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Deixei só o campo data para exemplificar.&lt;br /&gt;&lt;br /&gt;Agora tá beleza, tá gravando e recuperando o campo data&lt;br /&gt;&lt;br /&gt;Ficou assim a tela do programa&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-uFm_w1XTjXQ/TdiZRIK_ybI/AAAAAAAAAHQ/59p1k1WjRVo/s1600/data%2Bdespesa%2Bandroid.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 270px; height: 400px;" src="http://2.bp.blogspot.com/-uFm_w1XTjXQ/TdiZRIK_ybI/AAAAAAAAAHQ/59p1k1WjRVo/s400/data%2Bdespesa%2Bandroid.jpg" alt="" id="BLOGGER_PHOTO_ID_5609401855420385714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Espero que possa ser útil.&lt;br /&gt;&lt;br /&gt;Páginas que me ajudaram&lt;br /&gt;&lt;a href="http://www.guj.com.br/java/76586-converter-um-campo-de-um-text-field-em-date#403825"&gt;http://www.guj.com.br/java/76586-converter-um-campo-de-um-text-field-em-date#403825&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.guj.com.br/java/36076-converter-string-para-uma-data"&gt;http://www.guj.com.br/java/36076-converter-string-para-uma-data&lt;/a&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/754684/how-to-insert-a-sqlite-record-with-a-datetime-set-to-now-in-android-application"&gt;http://stackoverflow.com/questions/754684/how-to-insert-a-sqlite-record-with-a-datetime-set-to-now-in-android-application&lt;/a&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/3842509/android-java-datetime-values-from-string-to-long-to-string-issue"&gt;http://stackoverflow.com/questions/3842509/android-java-datetime-values-from-string-to-long-to-string-issue&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1113524261021881038?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1113524261021881038/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1113524261021881038&amp;isPopup=true' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1113524261021881038'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1113524261021881038'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/gravando-datas-no-sqlite-do-android.html' title='Gravando datas no SQLite do Android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-uFm_w1XTjXQ/TdiZRIK_ybI/AAAAAAAAAHQ/59p1k1WjRVo/s72-c/data%2Bdespesa%2Bandroid.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1715264148594498310</id><published>2011-05-22T00:49:00.002-03:00</published><updated>2011-05-22T00:56:00.646-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='escolher data'/><category scheme='http://www.blogger.com/atom/ns#' term='date picker'/><category scheme='http://www.blogger.com/atom/ns#' term='dialogo'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='button'/><title type='text'>Escolhendo uma data com o date picker no android</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Um outro componente que adicionei no formulário foi o Date Picker. O exemplo que achei coloca a data escolhida em um textview e o dialog para a escolha da data é a partir de um button.&lt;br /&gt;&lt;br /&gt;Eu modifiquei o código para jogar a data escolhida no próprio button.&lt;br /&gt;&lt;br /&gt;Usei o exemplo do site do android&lt;br /&gt;&lt;a href="http://developer.android.com/resources/tutorials/views/hello-datepicker.html"&gt;http://developer.android.com/resources/tutorials/views/hello-datepicker.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Que achei nesse site&lt;br /&gt;&lt;a href="http://blog.professorcoruja.com/2010/11/componente-date-picker-no-android-form.html"&gt;http://blog.professorcoruja.com/2010/11/componente-date-picker-no-android-form.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1715264148594498310?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1715264148594498310/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1715264148594498310&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1715264148594498310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1715264148594498310'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/escolhendo-uma-data-com-o-date-picker.html' title='Escolhendo uma data com o date picker no android'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3473996759687518808</id><published>2011-05-22T00:23:00.003-03:00</published><updated>2011-05-22T00:56:29.333-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='array'/><category scheme='http://www.blogger.com/atom/ns#' term='spinner'/><category scheme='http://www.blogger.com/atom/ns#' term='popular'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='posição'/><title type='text'>Populando um spinner a partir de um array</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Usei a dica &lt;a href="http://androidforbeginners.blogspot.com/2010/01/how-to-populate-spinner-widget-from.html"&gt;desse site&lt;/a&gt; para exibir os valores em um spinner que não estão em uma tabela do banco de dados. Nesse caso, os valores são provenientes de um array.&lt;br /&gt;&lt;br /&gt;Para obter a posição do valor selecionado basta usar: Spinner.getSelectedItemPosition()&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fontes:&lt;br /&gt;&lt;br /&gt;How to populate a Spinner widget from an Array&lt;br /&gt;&lt;a href="http://androidforbeginners.blogspot.com/2010/01/how-to-populate-spinner-widget-from.html"&gt;http://androidforbeginners.blogspot.com/2010/01/how-to-populate-spinner-widget-from.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Obtendo a posição do item selecionado&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/2903961/how-to-get-an-items-position-from-items-id-in-android-spinner"&gt;http://stackoverflow.com/questions/2903961/how-to-get-an-items-position-from-items-id-in-android-spinner&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Criando widget Spinner&lt;br /&gt;&lt;a href="http://www.portalandroid.org/comunidade/viewtopic.php?f=7&amp;amp;t=5670"&gt;http://www.portalandroid.org/comunidade/viewtopic.php?f=7&amp;amp;t=5670&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fiquem na Paz&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3473996759687518808?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3473996759687518808/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3473996759687518808&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3473996759687518808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3473996759687518808'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/populando-um-spinner-partir-de-um-array.html' title='Populando um spinner a partir de um array'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6235958358202631115</id><published>2011-05-20T23:07:00.008-03:00</published><updated>2011-05-20T23:31:55.421-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sysdate'/><category scheme='http://www.blogger.com/atom/ns#' term='default'/><category scheme='http://www.blogger.com/atom/ns#' term='current_date'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><category scheme='http://www.blogger.com/atom/ns#' term='date'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='trigger'/><title type='text'>Campo data com valor padrão no SQLite</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ainda tou engatinhando no Android, levando uns tombos, mas graças a Deus eu tou conseguindo avançar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;No exemplo de controle de despesas já coloquei um spinner para indicar o tipo de pagamento da despesa.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/-nFTa2R-7bP8/TdcgaR1H0HI/AAAAAAAAAHA/UMCTnDz-v9Y/s1600/expenses1_spinner.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://2.bp.blogspot.com/-nFTa2R-7bP8/TdcgaR1H0HI/AAAAAAAAAHA/UMCTnDz-v9Y/s400/expenses1_spinner.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5608987496748142706" style="float: left; margin-top: 0px; margin-right: 10px; margin-bottom: 10px; margin-left: 0px; cursor: pointer; width: 257px; height: 400px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/-bBy1zT9HTSw/Tdcgjj9Da-I/AAAAAAAAAHI/vi5KDTrgoc8/s1600/expenses2_spinner.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://3.bp.blogspot.com/-bBy1zT9HTSw/Tdcgjj9Da-I/AAAAAAAAAHI/vi5KDTrgoc8/s400/expenses2_spinner.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5608987656232070114" style="cursor: pointer; width: 259px; height: 400px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Agora a minha batalha é colocar o campo data dessa despesa. Estava incluindo no SQLite Manager, extensão do firefox, um campo do tipo data e selecionei para não ter valor null, e quando se faz isso, temos obrigação de informar um valor padrão. Tinha colocado SYSDATE, mas não deu certo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pesquisando no google, encontrei uma solução usando uma trigger para atualizar a data antes de inserir.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;CREATE TABLE foo (&lt;/div&gt;&lt;div&gt;id NUMBER NOT NULL,&lt;/div&gt;&lt;div&gt;created DATE);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TRIGGER insert_date AFTER INSERT ON foo&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;UPDATE foo SET created = DATETIME('NOW')  WHERE rowid = new.rowid;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;fonte: &lt;a href="http://www.mail-archive.com/sqlite-users@sqlite.org/msg02914.html"&gt;http://www.mail-archive.com/sqlite-users@sqlite.org/msg02914.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Só que dessa maneira aí, o campo vai ser atualizado, mesmo que eu informe a data na tela.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Modifiquei a trigger para testar se o campo está vazio, se tiver, atualiza a data atual do banco.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;CREATE TRIGGER insert_date AFTER INSERT ON foo&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;UPDATE foo SET created = DATETIME('NOW')  WHERE rowid = new.rowid and new.created is null;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Agora vou tentar colocar o campo data no formulário.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Espero que possar ser úitl, fiquem na Paz&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6235958358202631115?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6235958358202631115/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6235958358202631115&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6235958358202631115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6235958358202631115'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/campo-data-com-valor-padrao-no-sqlite.html' title='Campo data com valor padrão no SQLite'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-nFTa2R-7bP8/TdcgaR1H0HI/AAAAAAAAAHA/UMCTnDz-v9Y/s72-c/expenses1_spinner.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4320891109110199550</id><published>2011-05-18T18:06:00.004-03:00</published><updated>2011-05-18T18:27:18.696-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='banco de dados'/><category scheme='http://www.blogger.com/atom/ns#' term='exemplo'/><category scheme='http://www.blogger.com/atom/ns#' term='programadores'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android, primeiro programa com banco de dados.</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Hoje consegui terminar um exemplo de uma aula sobre android da devmedia. Deu um trabalhão danado. O vídeo é do tempo que nem tinha celular com android. Mas graças a Deus e com a ajuda das pessoas que alimentam o google com conteúdo, consegui botar para funcionar. Também tive esse trabalho todo porque não manjo quase nada de Java.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Consegui avançar depois que descobrir como contornar o erro "Source not found". Achei a dica &lt;a href="http://www.anotherandroidblog.com/2010/06/02/source-not-found-debugging/"&gt;nesse blog&lt;/a&gt; para usar controle de exceção e ter no debug a mensagem correta do erro.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;E alguns dos erros é que algumas coisas deixaram de existir no sdk atual, e tive que pesquisar como fazer da forma atual.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Alguns sites que me ajudaram:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.higherpass.com/Android/Tutorials/Accessing-Data-With-Android-Cursors/"&gt;http://www.higherpass.com/Android/Tutorials/Accessing-Data-With-Android-Cursors/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://androidforums.com/application-development/182546-nullpointerexception-cant-see-why.html"&gt;http://androidforums.com/application-development/182546-nullpointerexception-cant-see-why.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/5320421/android-development-null-pointer-exception-on-database-insert"&gt;http://stackoverflow.com/questions/5320421/android-development-null-pointer-exception-on-database-insert&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.anotherandroidblog.com/2010/06/02/source-not-found-debugging/"&gt;http://www.anotherandroidblog.com/2010/06/02/source-not-found-debugging/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.brighthub.com/mobile/google-android/articles/28673.aspx"&gt;http://www.brighthub.com/mobile/google-android/articles/28673.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;sobre menu&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.itwizard.ro/how-to-create-a-standard-android-menu-135.html"&gt;http://www.itwizard.ro/how-to-create-a-standard-android-menu-135.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;tive que usar equals para passar uma long para string e testar se era igual a zero, para saber se era vazia.&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/2033088/java-how-to-check-if-object-is-null"&gt;http://stackoverflow.com/questions/2033088/java-how-to-check-if-object-is-null&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Esse foi por causa de um erro ao recuperar os dados do item selecionado, tinha que mover para o primeiro, mesmo retornando apenas um resultado&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/4847875/android-database-cursorindexoutofboundsexception-index-1-requested-with-a-size"&gt;http://stackoverflow.com/questions/4847875/android-database-cursorindexoutofboundsexception-index-1-requested-with-a-size&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Tela do Programa&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/-AiRWgT9mST4/TdQ4Z9J88aI/AAAAAAAAAGw/paC8HswlaSg/s1600/tela%2Bandroid1.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://2.bp.blogspot.com/-AiRWgT9mST4/TdQ4Z9J88aI/AAAAAAAAAGw/paC8HswlaSg/s400/tela%2Bandroid1.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5608169454547300770" style="cursor: pointer; width: 400px; height: 279px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Agora vou incrementá-lo. Usar pesquisa, outras tabelas, etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4320891109110199550?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4320891109110199550/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4320891109110199550&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4320891109110199550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4320891109110199550'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/android-primeiro-programa-com-banco-de.html' title='Android, primeiro programa com banco de dados.'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-AiRWgT9mST4/TdQ4Z9J88aI/AAAAAAAAAGw/paC8HswlaSg/s72-c/tela%2Bandroid1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-5530788579844862671</id><published>2011-05-10T14:21:00.006-03:00</published><updated>2011-05-10T14:42:06.093-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bde'/><category scheme='http://www.blogger.com/atom/ns#' term='storedprocedure'/><category scheme='http://www.blogger.com/atom/ns#' term='query'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><category scheme='http://www.blogger.com/atom/ns#' term='bytes'/><title type='text'>Exibir dados a partir de uma procedure</title><content type='html'>HI,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Hoje tive uns probleminhas para exibir o resultado de uma procedure. Um cliente criou uma procedure para retornar os dados dos clientes. Nunca tinha usado isso no Delphi. Criei rapidinho uma tela para exibir esse resultado em um componente grid.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;O primeiro problema que tive, e que recorri ao google, foi quando tentei setar o componente TStoredProc para true. Deu o seguinte erro: error creating cursor handle. Pesquisando no google, descobrir que só posso dá um StoredProc1.ExecProc;. Pois bem, associei um datasource ao componente StoredProc1 e em runtime, executei o ExecProc e não mostrou nada no grid. Aí pensei, deve ser por que esse troço só serve para executar comandos que não retornam dados. Foi aí que tive a idéia de dar um select na procedure e usar o componente query.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ficou assim: Select * from Nome_Procedure. Dei um open e mostrou os resultados no Grid. Mas aí surgiu o segundo problema. Em algumas colunas tava mostrando (BYTES) ao invés do valor do campo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Coloquei um Label para receber o conteúdo de campo, mas não mostrou nada. Label.caption := Query.FieldByName('codigo').AsString;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fui a procura de uma rotina para converter de bytes para integer e achei &lt;a href="http://forum.devmedia.com.br/viewtopic.php?p=167952#167952"&gt;esse código&lt;/a&gt;. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiz uma adaptação e criei essa função:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;function BytesToInteger(Campo: TField): integer;&lt;/div&gt;&lt;div&gt;   var   MyBuffer : ^integer;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;    with Campo do&lt;/div&gt;&lt;div&gt;    begin&lt;/div&gt;&lt;div&gt;      GetMem(MyBuffer, DataSize);&lt;/div&gt;&lt;div&gt;      try&lt;/div&gt;&lt;div&gt;        if not GetData(MyBuffer) then&lt;/div&gt;&lt;div&gt;           result := 0&lt;/div&gt;&lt;div&gt;        else&lt;/div&gt;&lt;div&gt;           result := MyBuffer^;{ Do something with the data };&lt;/div&gt;&lt;div&gt;      finally&lt;/div&gt;&lt;div&gt;        { Free the space }&lt;/div&gt;&lt;div&gt;        FreeMem(MyBuffer, DataSize);&lt;/div&gt;&lt;div&gt;      end;&lt;/div&gt;&lt;div&gt;    end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Testei na tela e exibiu em um label o código correto, fiquei animado. Depois eu modifiquei a consulta para converter para float, com o resultado, desanimei. Mostrou o resultado em notação científica. Se eu fosse tentar resolver isso ia ficar muito complicado o código, cheio de conversões.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/-L7cNLAEc7UU/Tcl32NiqbcI/AAAAAAAAAGg/sVesqxfSdNU/s1600/grid_sem_tratamento.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://2.bp.blogspot.com/-L7cNLAEc7UU/Tcl32NiqbcI/AAAAAAAAAGg/sVesqxfSdNU/s400/grid_sem_tratamento.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5605142984470982082" style="cursor: pointer; width: 400px; height: 89px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Foi aí que eu tive a idéia de tratar isso na query, fazendo um type cast.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;A query tava assim&lt;/i&gt;&lt;/div&gt;&lt;div&gt;select codigo, nome, limite from EXPCLIENTES&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Modificando a query&lt;/i&gt;&lt;/div&gt;&lt;div&gt;select cast(codigo as integer) codigo, nome, cast(limite as double precision) limite from EXPCLIENTES&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Passou a apresentar corretamente os campos no Grid.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/-E1ulHNIKaNA/Tcl4caP73xI/AAAAAAAAAGo/mRrIEfx0LMQ/s1600/grid_com_tratamento.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://4.bp.blogspot.com/-E1ulHNIKaNA/Tcl4caP73xI/AAAAAAAAAGo/mRrIEfx0LMQ/s400/grid_com_tratamento.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5605143640717123346" style="cursor: pointer; width: 400px; height: 65px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Espero que possa ser útil.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fiquem na Paz&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-5530788579844862671?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/5530788579844862671/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=5530788579844862671&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/5530788579844862671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/5530788579844862671'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/05/exibir-dados-partir-de-uma-procedure.html' title='Exibir dados a partir de uma procedure'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-L7cNLAEc7UU/Tcl32NiqbcI/AAAAAAAAAGg/sVesqxfSdNU/s72-c/grid_sem_tratamento.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-462745192401245672</id><published>2011-04-18T02:19:00.005-03:00</published><updated>2011-04-18T02:28:41.165-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='código fonte'/><category scheme='http://www.blogger.com/atom/ns#' term='formatar'/><title type='text'>Formatando seu código no blog</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Tou indo domir, mas antes deixo essa dica que precisei utilizar agora para formatar o código de uma rotina em c#. Para ficar um pouco mais elegante.&lt;br /&gt;&lt;br /&gt;Primeiro: Edite o HTML do blogspot e coloquei a formatação CSS. &lt;a href="http://www.manoli.net/csharpformat/csharp.css"&gt;Pegue aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Segundo: Utilize este site para formatar seu código &lt;a href="http://www.manoli.net/csharpformat/"&gt;http://www.manoli.net/csharpformat/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Terceiro: Cole o código HTML no post ( na opção Editar Html ) e pronto.&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; GetRandomPasswordUsingGUID(&lt;span class="kwrd"&gt;int&lt;/span&gt; length)&lt;br /&gt;       {&lt;br /&gt;           &lt;span class="rem"&gt;// Get the GUID&lt;/span&gt;&lt;br /&gt;           &lt;span class="kwrd"&gt;string&lt;/span&gt; guidResult = System.Guid.NewGuid().ToString();&lt;br /&gt;&lt;br /&gt;           &lt;span class="rem"&gt;// Remove the hyphens&lt;/span&gt;&lt;br /&gt;           guidResult = guidResult.Replace(&lt;span class="str"&gt;"-"&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;.Empty);&lt;br /&gt;&lt;br /&gt;           &lt;span class="rem"&gt;// Make sure length is valid&lt;/span&gt;&lt;br /&gt;           &lt;span class="kwrd"&gt;if&lt;/span&gt; (length &amp;gt;= 0 || length &amp;gt; guidResult.Length)&lt;br /&gt;               &lt;span class="kwrd"&gt;throw&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; ArgumentException(&lt;span class="str"&gt;"Length must be between 1 and "&lt;/span&gt; + guidResult.Length);&lt;br /&gt;&lt;br /&gt;           &lt;span class="rem"&gt;// Return the first length bytes&lt;/span&gt;&lt;br /&gt;           &lt;span class="kwrd"&gt;return&lt;/span&gt; guidResult.Substring(0, length);&lt;br /&gt;       }&lt;/pre&gt;&lt;br /&gt;Na Visualização o código não aparece formatado. Deve ter um outro lugar para colocar o CSS, depois vejo isso.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Intel +, fiquem na Paz!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-462745192401245672?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/462745192401245672/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=462745192401245672&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/462745192401245672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/462745192401245672'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/04/formatando-seu-codigo-no-blog.html' title='Formatando seu código no blog'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6881932902962710717</id><published>2011-04-18T01:44:00.006-03:00</published><updated>2011-04-18T02:18:58.555-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='Expressão Regular'/><category scheme='http://www.blogger.com/atom/ns#' term='remover'/><category scheme='http://www.blogger.com/atom/ns#' term='RegExp'/><category scheme='http://www.blogger.com/atom/ns#' term='csharp'/><title type='text'>Retornar apenas números e letras</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estou usando Asp.net com C#&lt;br /&gt;&lt;br /&gt;Precisei retornar apenas os números do CPF informado no TextBox, que está com mascara.&lt;br /&gt;&lt;br /&gt;Não estava a fim de usar replace. Então pesquisei no google uma rotina que utilizasse &lt;a href="http://guia-er.sourceforge.net/"&gt;Expressão Regularar&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Montei essa função com o que achei.&lt;pre class="csharpcode"&gt;       &lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span class="rem"&gt;/// Retornar apenas as letras e os números da variável passada como parametro&lt;/span&gt;&lt;br /&gt;      &lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span class="rem"&gt;/// &amp;lt;param name="valor"&amp;gt;Valor com caracteres&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span class="rem"&gt;/// &amp;lt;returns&amp;gt;Apenas número e letras&amp;lt;/returns&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; RetornaNumeroLetra(&lt;span class="kwrd"&gt;string&lt;/span&gt; valor)&lt;br /&gt;      {          &lt;br /&gt;          &lt;span class="kwrd"&gt;try&lt;/span&gt;&lt;br /&gt;          {&lt;br /&gt;              Regex regexObj = &lt;span class="kwrd"&gt;new&lt;/span&gt; Regex(&lt;span class="str"&gt;@"[^0-9]"&lt;/span&gt;);&lt;br /&gt;              &lt;span class="kwrd"&gt;return&lt;/span&gt; regexObj.Replace(valor, &lt;span class="str"&gt;""&lt;/span&gt;);&lt;br /&gt;          }&lt;br /&gt;          &lt;span class="kwrd"&gt;catch&lt;/span&gt; (ArgumentException ex)&lt;br /&gt;          {&lt;br /&gt;              &lt;span class="rem"&gt;// Syntax error in the regular expression &lt;/span&gt;&lt;br /&gt;              &lt;span class="kwrd"&gt;throw&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; Exception(ex.Message);&lt;br /&gt;          }&lt;br /&gt;      }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Intel +, fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6881932902962710717?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6881932902962710717/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6881932902962710717&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6881932902962710717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6881932902962710717'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/04/retornar-apenas-numeros-e-letras.html' title='Retornar apenas números e letras'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8956400547837361589</id><published>2011-04-18T01:39:00.004-03:00</published><updated>2011-04-18T02:17:51.066-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retorno'/><title type='text'>O Último Retorno</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Quase que não consigo me logar no meu blog, hehehe. Tempão que não apareço por aqui.&lt;br /&gt;&lt;br /&gt;Tou voltando para ficar.&lt;br /&gt;&lt;br /&gt;Conteúdo para manter esse blog atualizado, tem um montão.&lt;br /&gt;&lt;br /&gt;Acabei de fazer um curso de Asp.Net e tou com boas práticas para compartilhar com vocês. Espero que voltem todos, hehehe. E que apareçam mais visitantes.&lt;br /&gt;&lt;br /&gt;Também tou estudando Android, mas por conta própria.&lt;br /&gt;&lt;br /&gt;Intel +, fiquem na Paz!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8956400547837361589?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8956400547837361589/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8956400547837361589&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8956400547837361589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8956400547837361589'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2011/04/o-ultimo-retorno.html' title='O Último Retorno'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-565128109862650090</id><published>2009-08-24T10:59:00.003-03:00</published><updated>2009-08-24T11:05:57.481-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dicas'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><category scheme='http://www.blogger.com/atom/ns#' term='tecnologia'/><category scheme='http://www.blogger.com/atom/ns#' term='programação'/><title type='text'>Meu Twitter</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Já tem um tempão que criei &lt;a href="http://twitter.com/dprogrammer"&gt;meu Twitter&lt;/a&gt;, mas como não queria escrever se eu tava sentado no vazo sanitário ou escobando os dentes, não tava postando nada nele.&lt;br /&gt;&lt;br /&gt;Mas agora já sei o que escrever nele ( claro que cometo um certo pecado de falar da minha vida pessoal, hehehe ). Vou postar dicas sobre tecnologia, desenvolvimento, etc. Não será apenas um instrumento de apontar para artigos aqui do blog. Terá conteúdo próprio.&lt;br /&gt;&lt;br /&gt;Espero vocês lá: &lt;a href="http://twitter.com/dprogrammer"&gt;http://twitter.com/dprogrammer&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tem um post sobre download de vídeo aulas e apostilas sobre C# e Visual Basic.Net.&lt;br /&gt;&lt;br /&gt;Até Mais&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-565128109862650090?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/565128109862650090/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=565128109862650090&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/565128109862650090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/565128109862650090'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/08/meu-twitter.html' title='Meu Twitter'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1217997986382414955</id><published>2009-08-02T08:24:00.002-03:00</published><updated>2009-08-02T08:54:15.241-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='contatos'/><category scheme='http://www.blogger.com/atom/ns#' term='msn'/><category scheme='http://www.blogger.com/atom/ns#' term='excluir'/><category scheme='http://www.blogger.com/atom/ns#' term='live'/><title type='text'>Apagando todos os contatos do windows mobile</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Depois de alguns meses sem aparecer por aqui, sem responder aos comentários, resolvi aproveitar um novo começo de mês para voltar a atualizar esse blog e ao site de vídeos que tenho, que também foi abandonado.&lt;br /&gt;&lt;br /&gt;Começo com uma chatice que tive ao acessar o MSN a partir do windows mobile 6, com o meu htc p4351. Quando fui realizar o login pela primeira vez apareceu uma tela de sim/não dizendo que todos o meus contatos do msn seriam incluídos nos contatos do wm. Tava precisando acessar o MSN naquele momento, então permiti.&lt;br /&gt;&lt;br /&gt;Pensem na bagunça que ficou meus contatos. Mais de 180 contatos, hehehe. Resolvi então a excluir alguns contatos do ppc. Dois problemas: A tela de contatos do windows mobile não permite selecionar mais de um registro e o contato também será excluído do MSN, hehehe.&lt;br /&gt;&lt;br /&gt;Resolvi excluir todos os contatos do ppc. Procurei a solução e &lt;a href="http://www.gsmfans.com.br/index.php?topic=6461.0"&gt;encontrei&lt;/a&gt; uma maneira de fazer uma limpa geral nos contatos.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.gsmfans.com.br/index.php?topic=6461.0"&gt;Solução:&lt;/a&gt; Start&gt;Settings&gt;Sim Manager&gt;Menu&gt;Delete Contacts.&lt;br /&gt;&lt;br /&gt;Na busca em um forum encontrei a dica e usar outro programa para conversar com o MSN. Acabei instalando o &lt;a href="http://www.palringo.com/en/gb/"&gt;Palringo&lt;/a&gt;. Tá perfeito agora. Ele conversa com outros serviços também.&lt;br /&gt;&lt;br /&gt;Uma amigo passou pelo mesmo problema. Ele excluiu tudo e foi usar o msn de novo e os contatos sumiram do MSN. Ele disse que tem uma opção de recuperar os contatos no messenger.&lt;br /&gt;&lt;br /&gt;Não testei a possibilidade de sincronizar os contatos com o outlook, excluir os contatos do MSN, deixando apenas os contatos do Telefone e mandando sincronizar de novo. Para ver se remove do ppc esses contatos que foram excluídos no pc.&lt;br /&gt;&lt;br /&gt;Até Mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1217997986382414955?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1217997986382414955/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1217997986382414955&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1217997986382414955'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1217997986382414955'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/08/apagando-todos-os-contatos-do-windows.html' title='Apagando todos os contatos do windows mobile'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2454255667765456139</id><published>2009-03-21T21:53:00.005-03:00</published><updated>2009-03-25T09:03:28.194-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='semana'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><category scheme='http://www.blogger.com/atom/ns#' term='dia'/><category scheme='http://www.blogger.com/atom/ns#' term='algoritmo'/><category scheme='http://www.blogger.com/atom/ns#' term='datas'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Retornar a data do primeiro e do último dia da semana</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estou trabalhando em uma rotina para enviar a rota da semana para os vendedores. Minha idéia foi de enviar todos os registros da semana, e não apenas do dia atual até o último dia da semana.&lt;br /&gt;&lt;br /&gt;Então como fazer para enviar os registros que estão entre Domingo e Sábado ?&lt;br /&gt;&lt;br /&gt;Abrir o delphi e fiz um algotimo para pegar a data do primeiro dia (Domingo) da semana e do último (Sábado) dia.&lt;br /&gt;&lt;br /&gt;Ficou assim:&lt;br /&gt;&lt;br /&gt;procedure TForm1.BitBtn1Click(Sender: TObject);&lt;br /&gt;Var DiaSemanaHoje : Byte;&lt;br /&gt;begin&lt;br /&gt;DiaSemanaHoje := DayOfWeek(Date());&lt;br /&gt;&lt;br /&gt;Edit2.Text := DateToStr(Date() - (DiaSemanaHoje - 1));&lt;br /&gt;Edit3.Text := DateToStr(Date() + (7 - DiaSemanaHoje));&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;Preciso utiliza isso no Oracle. Então lá vou eu para a home page do banco de dados (utilizo o oracle express aqui no note).&lt;br /&gt;&lt;br /&gt;Peguei o exemplo que se encontra &lt;a href="http://dprogrammer.blogspot.com/2009/03/formatacao-de-datas-no-oracle.html"&gt;aqui no blog&lt;/a&gt; para pegar o dia da semana e bolei essa Sql:&lt;br /&gt;&lt;br /&gt;select SYSDATE AS HOJE,&lt;br /&gt;        SYSDATE - (to_char(SYSDATE, 'D') - 1) AS DOMINGO,&lt;br /&gt;        SYSDATE + (7 - to_char(SYSDATE, 'D')) AS SABADO&lt;br /&gt;from dual&lt;br /&gt;&lt;br /&gt;Pronto. Já posso trabalhar com essa lógica no Where.&lt;br /&gt;&lt;br /&gt;Mas aí achei um jeito mais simples, hehehe.&lt;br /&gt;&lt;br /&gt;Pegar pelo dia da semana no ano.&lt;br /&gt;&lt;br /&gt;Então o Where vai ficar assim (Delphi):&lt;br /&gt;&lt;br /&gt;Sql.Add('Where to_char(SYSDATE, ''WW'') = ' + IntToStr(WeekOfTheYear(Date)));&lt;br /&gt;&lt;br /&gt;Espero que possa ajudar mais alguém com isso.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;[editando]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mostrei esse código a um amigo que é DBA e ele me mostrou outra maneira de pegar as datas do primeiro e último dia da semana utilizando a função do &lt;a href="http://www.techonthenet.com/oracle/functions/next_day.php"&gt;NEXT_DAY&lt;/a&gt; do Oracle.&lt;br /&gt;&lt;br /&gt;select sysdate AS HOJE ,&lt;br /&gt;TRUNC(next_day(sysdate,'MONDAY')-8) as DOMINGO,&lt;br /&gt;TRUNC(next_day(sysdate,'SATURDAY')) as SABADO&lt;br /&gt;from dual&lt;br /&gt;&lt;br /&gt;Acabei utilizando essa lógina no meu Where. É que pegando a semana do Ano deu bug, hehehe. Não retornou a Segunda e a Terça.&lt;br /&gt;&lt;br /&gt;Where TRUNC(Data) BetWeen TRUNC(next_day(sysdate,'MONDAY')-8) and TRUNC(next_day(sysdate,'SATURDAY'))&lt;br /&gt;&lt;br /&gt;Esse TRUNC é para retornar a data sem a parte da hora.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;[/editando]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Até +&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2454255667765456139?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2454255667765456139/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2454255667765456139&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2454255667765456139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2454255667765456139'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/03/retornar-data-do-primeiro-e-do-ultimo.html' title='Retornar a data do primeiro e do último dia da semana'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4211006438843178537</id><published>2009-03-02T09:30:00.004-03:00</published><updated>2009-03-02T09:36:36.487-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><category scheme='http://www.blogger.com/atom/ns#' term='formatação'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Formatação de Datas no Oracle</title><content type='html'>Dica para formatar uma data no Oracle.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;AM&lt;/strong&gt; - AM ou PM&lt;br /&gt;&lt;strong&gt;CC&lt;/strong&gt; - Século&lt;br /&gt;&lt;strong&gt;D&lt;/strong&gt; - Dia da semana (1-7)&lt;br /&gt;&lt;strong&gt;DAY&lt;/strong&gt; - Dia da semana ('SUNDAY')&lt;br /&gt;&lt;strong&gt;DD&lt;/strong&gt; - Dia do mês (1-31)&lt;br /&gt;&lt;strong&gt;DDD&lt;/strong&gt; - Dia do ano&lt;br /&gt;&lt;strong&gt;DY&lt;/strong&gt; - Dia da semana abreviado ('SUN')&lt;br /&gt;&lt;strong&gt;FM&lt;/strong&gt; - Tira os blanks ou Zeros da esquerda&lt;br /&gt;&lt;strong&gt;HH&lt;/strong&gt; - Hora do dia (0-12)&lt;br /&gt;&lt;strong&gt;HH24&lt;/strong&gt; - Hora do dia (0-24)&lt;br /&gt;&lt;strong&gt;MI&lt;/strong&gt; - Minutos da Hora&lt;br /&gt;&lt;strong&gt;MM&lt;/strong&gt; - Mês com 2 dígitos&lt;br /&gt;&lt;strong&gt;MON&lt;/strong&gt; - Mês abreviado ('NOV')&lt;br /&gt;&lt;strong&gt;MONTH &lt;/strong&gt;- Mês por extenso ('NOVEMBER')&lt;br /&gt;&lt;strong&gt;PM&lt;/strong&gt; - AM ou PM&lt;br /&gt;&lt;strong&gt;RR&lt;/strong&gt; - Ano com 2 dígitos - especial&lt;br /&gt;&lt;strong&gt;RRRR&lt;/strong&gt; - Ano com 4 dígitos&lt;br /&gt;&lt;strong&gt;SS&lt;/strong&gt; - Segundos do minuto(0 - 59)&lt;br /&gt;&lt;strong&gt;SSSSS&lt;/strong&gt;- Segundos do dia&lt;br /&gt;&lt;strong&gt;W&lt;/strong&gt; - Semana do Mês&lt;br /&gt;&lt;strong&gt;WW&lt;/strong&gt; - Semana do Ano&lt;br /&gt;&lt;strong&gt;YEAR&lt;/strong&gt; - Ano por extenso&lt;br /&gt;&lt;strong&gt;YY&lt;/strong&gt; - Ano com 2 dígitos&lt;br /&gt;&lt;strong&gt;YYYY&lt;/strong&gt; - Ano com 4 dígitos&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Achei essa &lt;a href="http://glufke.net/oracle/viewtopic.php?t=22"&gt;dica&lt;/a&gt; quando precisei semana passada pegar o dia da semana, para determinar se era dia útil, sábado ou domingo.&lt;br /&gt;&lt;br /&gt;Exemplo: select to_char(SYSDATE, 'D') from dual&lt;br /&gt;&lt;br /&gt;Até Mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4211006438843178537?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4211006438843178537/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4211006438843178537&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4211006438843178537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4211006438843178537'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/03/formatacao-de-datas-no-oracle.html' title='Formatação de Datas no Oracle'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2256257705064660090</id><published>2009-02-27T22:23:00.007-03:00</published><updated>2009-02-27T22:44:16.436-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webbrowser'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><category scheme='http://www.blogger.com/atom/ns#' term='load'/><category scheme='http://www.blogger.com/atom/ns#' term='exemplo'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='preview'/><title type='text'>Delphi HTML Preview</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Acabei de preparar um exemplo com uma &lt;a href="http://delphi.about.com/cs/adptips2004/a/bltip0104_4.htm"&gt;rotina&lt;/a&gt; que achei para visualizar um código HTML no componente WebBrowser sem precisar criar um arquivo.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/SaiUMrO1gZI/AAAAAAAAAGA/1E3lKicVsSI/s1600-h/delphi_html_preview.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 353px;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SaiUMrO1gZI/AAAAAAAAAGA/1E3lKicVsSI/s400/delphi_html_preview.jpg" alt="" id="BLOGGER_PHOTO_ID_5307655106340422034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Antes quando precisa exibir algo em HTML no programa, eu criava um arquivo .html com o código e caregava no componente. Mas recentemente precisei exibir um código HTML armazenado no banco de dados. Poderia ter feito no esquema que já sabia, mas decidi fazer algo mais decente, hehehe. Pegar o código e carregar diretamente no componente TWebBrowser.&lt;br /&gt;&lt;br /&gt;Download do exemplo &lt;a href="http://www.4shared.com/file/89894966/c94e9264/HtmlPreview.html"&gt;AQUI&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Até Mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2256257705064660090?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2256257705064660090/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2256257705064660090&amp;isPopup=true' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2256257705064660090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2256257705064660090'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/02/delphi-html-preview.html' title='Delphi HTML Preview'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_6HEffI4v80I/SaiUMrO1gZI/AAAAAAAAAGA/1E3lKicVsSI/s72-c/delphi_html_preview.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8964086850112352866</id><published>2009-02-27T21:41:00.002-03:00</published><updated>2009-02-27T22:01:04.939-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='APIs'/><category scheme='http://www.blogger.com/atom/ns#' term='PlayGround'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Serviço'/><title type='text'>O Desenvolvedor agora brinca no Google</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Tem coisa melhor do que aprender com exemplos?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://google-code-updates.blogspot.com/2009/01/playing-around-with-googles-ajax-apis.html"&gt;Ben Lisbakken&lt;/a&gt;, engenheiro do Google criou um &lt;a href="http://code.google.com/apis/ajax/playground/"&gt;serviço&lt;/a&gt; para facilitar a vida de quem deseja aprender a trabalhar com as APIs em JavaScript do Google. Ele chegou a conclusão de que os manuais não eram o suficiente para o aprendizado das APIs e criou esse serviço nos seus 20% de tempo que são dedicados aos projetos pessoais.&lt;br /&gt;&lt;br /&gt;Acho que se eu dormir só umas quatro horas por dia, sobra um pouco de tempo para esses tais projetos pessoais. Geralmente trabalho das 07:30 às 00:00, hehehe. Acordo às 06:00.&lt;br /&gt;&lt;br /&gt;Ontem andei brincando nesse &lt;a href="http://code.google.com/apis/ajax/playground/"&gt;PlayGround&lt;/a&gt;. São dezenas de exemplos agrupados pelos tipos de APIs. É possível editar o exemplo e visualizar todo o código.&lt;br /&gt;&lt;br /&gt;Excelente iniciativa. Lembro que eu vivia no Help do Pascal olhando os exemplos. Aprendi muito. E eu nem entendia direito o que estava escrito. Estava em inglês, hehehe. Até brinco dizendo que primeiro entendia o exemplo para depois saber o que tava escrito, hehehe.&lt;br /&gt;&lt;br /&gt;Fonte: &lt;a href="http://info.abril.uol.com.br/professional/desenvolvimento/google-cria-playground-para-pr.shtml"&gt;Blog da Info&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Até Mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8964086850112352866?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8964086850112352866/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8964086850112352866&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8964086850112352866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8964086850112352866'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/02/o-desenvolvedor-agora-brinca-no-google.html' title='O Desenvolvedor agora brinca no Google'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8229439012985520120</id><published>2009-02-27T21:24:00.003-03:00</published><updated>2009-02-27T21:32:17.551-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='loja virtual'/><category scheme='http://www.blogger.com/atom/ns#' term='OsCommerce'/><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='pagseguro'/><title type='text'>Integrando seu site ao PagSeguro</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Acabei de ver uma propaganda do &lt;a href="https://pagseguro.uol.com.br/?ind=487086"&gt;PagSeguro&lt;/a&gt; dizendo que está disponível uma blibioteca em PHP para download.&lt;br /&gt;&lt;br /&gt;Acessando o &lt;a href="https://pagseguro.uol.com.br/Terceirizacao.aspx"&gt;site&lt;/a&gt; vi que existem mais opções, inclusive em .Net.&lt;br /&gt;&lt;br /&gt;Um dia ainda coloco no ar uma lojinha para mim, hehehe. Tem muito código aqui para vender por 2 reaus, hehehe.&lt;br /&gt;&lt;br /&gt;Até Mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8229439012985520120?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8229439012985520120/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8229439012985520120&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8229439012985520120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8229439012985520120'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/02/integrando-seu-site-ao-pagseguro.html' title='Integrando seu site ao PagSeguro'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3726403833070173543</id><published>2009-02-18T15:26:00.003-03:00</published><updated>2009-02-18T15:40:32.003-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='palm pré'/><category scheme='http://www.blogger.com/atom/ns#' term='palmos'/><title type='text'>LG passa a usar o Windows Mobile</title><content type='html'>Por Daniel Serrano&lt;br /&gt;&lt;br /&gt;A Microsoft está com motivos de sobra para comemorar. Esta semana a empresa anunciou que a LG um dos maiores fabricantes do mundo de celulares estará utilizando o seu sistema operacional Mobile (foto) em mais de 50 modelos, o que aumentará substancialmente o market share da MS em operacionais para dispositivos móveis.&lt;br /&gt;&lt;br /&gt;A LG já havia utilizado o Windows Mobile anteriormente, mas apenas em um único modelo. A MS cujo sistema operacional Windows equipa mais de 90% de notebooks e PCs, ao redor do mundo, segundo dados da empresa, quer repetir a façanha nos dispositivos móveis.&lt;br /&gt;&lt;br /&gt;Restante da notícia AQUI&lt;br /&gt;&lt;a href="http://planetech.uol.com.br/?p=4070"&gt;http://planetech.uol.com.br/?p=4070&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;É bom saber disso. Um dos motivos de minha ausência aqui no blog é o fato deu está trabalhando no desenvolvimento de um sistema de vendas para Windows Mobile. A versão atual é em PalmOS e a Palm está nos abandonando. O novo SmartPhone, o &lt;a href="http://meiobit.pop.com.br/mobile/especial/ces-a-palm-voltou"&gt;palm Pré&lt;/a&gt;, com sistema operacional WebOS não executará os aplicativos antigos.&lt;br /&gt;&lt;br /&gt;E ainda tem o fato da Microsoft ter anunciado a nova versão do &lt;a href="http://www.gizmodo.com.br/conteudo/hands-do-windows-mobile-65-nova-interface-detona"&gt;Windows Mobile, versão 6.5&lt;/a&gt;. Significa que em breve teremos a 7.0. Acho que vem no mesmo tempo do Windows 7.&lt;br /&gt;&lt;br /&gt;Até a Próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3726403833070173543?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3726403833070173543/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3726403833070173543&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3726403833070173543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3726403833070173543'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2009/02/lg-passa-usar-o-windows-mobile.html' title='LG passa a usar o Windows Mobile'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3529446701999792819</id><published>2008-12-22T20:45:00.003-03:00</published><updated>2008-12-22T20:53:21.919-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='desenvolvimento'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='melhorar'/><title type='text'>Sete maneiras de melhorar o desenvolvimento de software</title><content type='html'>&lt;span style="font-weight:bold;"&gt;A receita para equilibrar agilidade e documentação e estabelecer um ciclo de entregas regulares existe. Leia a opinião de especialistas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para se concretizarem, os projetos de software exigem investimentos, apoio, cuidados, trabalho árduo e dedicação. Uma boa prática de gerenciamento de entrega garante que, depois de criado, o software possa ser implementado com êxito, atendendo às necessidades da área que o solicitou e, ainda, de outras unidades que queiram utilizá-lo no futuro.&lt;br /&gt;&lt;br /&gt;Na lista de clientes que confirmam essa premissa está uma grande empresa britânica de telecomunicações. A companhia decidiu mudar de fornecedor na hora de realizar uma reengenharia dos sistemas para gestão da área de billing (bilhetagem) e da emissão de contas. A companhia tinha de implementar as mudanças em três meses ou poderia perder centenas de milhões de libras, inclusive com queda no valor das ações. Outra questão era que, na época, os processos para desenvolvimento de software eram ruins e o gerenciamento de entrega extremamente problemático.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A empresa de telecomunicações chamou uma empresa especializada para ajudá-la a entregar o software no prazo e recuperar um processo falho de gerenciamento das mudanças. Com isso, em três meses, fez os lançamentos pendentes e conseguiu realizar a reformulação de dois aplicativos. Mais importante, estabeleceu um processo de gerenciamento de entregas simples e direto para assegurar que futuras liberações aconteçam no devido tempo e com a qualidade exigida.&lt;br /&gt;&lt;br /&gt;A seguir, segue um detalhamento de todo o processo, inclusive, com os erros cometidos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;1. Entender o estado atual do gerenciamento de entregas.&lt;/span&gt;&lt;br /&gt;Você não pode começar a consertar alguma coisa sem entender o que ela é e qual o problema. O primeiro passo para aprimorar o sistema de gerenciamento das entregas do nosso cliente foi criar um panorama detalhado do processos antigos. Para começar, a empresa realizou várias sessões explanatórias com pessoas-chave envolvidas no processo de software.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Nas reuniões, o fornecedor descobriu que o ponto de partida era muito ruim: ainda havia software a espera de liberação, depois de dois meses em que ele estava pronto.&lt;br /&gt;Os ambientes de teste eram limitados, sem gerenciamento e, portanto, desatualizados e impossíveis de usar. Pior ainda, melhorar novos ambientes e renovar os existentes era um processo relativamente lento.&lt;br /&gt;&lt;br /&gt;Em média, um teste manual de software demorava três meses. E boa parte deles acabava sendo abandonado, o que reduzia a qualidade das soluções entregues.&lt;br /&gt;&lt;br /&gt;De um modo geral, o engajamento da equipe de desenvolvimento era muito baixo. Como os profissionais nunca tinham sido ajudados a fornecer software de boa qualidade, regularmente, estavam desestimulados.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2. Estabelecer um ciclo regular de liberações.&lt;/span&gt;&lt;br /&gt;Quando obtivemos um panorama geral do estado atual do processo, começamos a definir um ciclo regular de liberações.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Se a equipe de engenharia é o coração do projeto, o ciclo de liberações é seu batimento cardíaco. Para determinar a freqüência de liberações para produção, foi preciso descobrir de quanto teste não funcional precisaríamos e quanto tempo demoraria. Este projeto exigiu teste de regressão, desempenho e integração.&lt;br /&gt;Estabelecer um ciclo de liberações é vital porque:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;•         Cria uma oportunidade de discutir a fundo os testes não funcionais de que o software possa precisar.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;•         Anuncia um cronograma de entrega das porções da funcionalidade que as partes interessadas poderão obter. Se elas souberem que haverá liberação de funcionalidade regularmente, podem continuar concordando em relação ao resultado final esperado.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;•         Cria uma rotina que todas as equipes podem seguir (inclusive marketing e engenharia).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;•         Dá aos clientes a confiança de que podem pedir algo e receber o que pediram.&lt;br /&gt;O ciclo de liberações tem de ser o mais exato possível, não um número inatingível que você inventou durante o almoço. Antes de anunciá-lo, teste-o. Não há nada pior para um processo de liberações já falho do que mais datas ilusórias!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sugerimos um ciclo semanal. Este plano, porém, mostrou-se inviável, já que o ambiente de banco de dados do cliente não podia ser renovado com suficiente rapidez. Então tentamos ciclos quinzenais. Não houve objeção imediata dos participantes, mas as duas primeiras tentativas fracassaram! Tornou-se viável depois que superamos alguns gargalos do ambiente e automatizamos alguns testes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Por fim, estabelecemos um ciclo em que, a cada duas semanas, o código da equipe de engenharia, pronto para produção, era encaminhado para teste no sistema. Quinze dias depois, liberamos este código para produção.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lembre-se: seu ciclo de liberações não diz respeito a quando seu cliente quer a liberação, mas quando você pode realizá-la com o nível desejado de qualidade. Nossos clientes apoiaram nosso ciclo de liberações porque nós os chamamos para ajudar a determiná-lo. A opinião dos clientes é apenas um dos fatores levados em conta para estabelecer a regularidade das liberações.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;3. Adotar processos leves. Testá-los no início e revisá-los regularmente.&lt;/span&gt;&lt;br /&gt;Se existe um princípio norteador da engenharia (ou reengenharia) de um processo, este princípio é desenvolver um pouco, analisar os resultados e fazer um pouco mais. Repita esta abordagem cíclica até alcançar os resultados desejados.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Processos leves são aqueles que não exigem aprovações longas e burocráticas ou reuniões intermináveis para obter consenso. Normalmente, demandam apenas o nível mínimo aceitável de inputs e outputs. O que lhes falta em volume e burocracia é compensado com resposta a mudanças e adoção popular!&lt;br /&gt;Subjacente a esta abordagem há o problema espinhoso da documentação. Você precisa registrar o que fez e como fez. Do contrário, o que vai revisar e como vai melhorar?&lt;br /&gt;&lt;br /&gt;Não é o tipo de documentação volumosa que ameaça as florestas tropicais ou dá sono nos leitores. É a documentação que as pessoas (técnicas ou não) podem ler e seguir.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A equipe de engenharia escolheu uma ferramenta comercial para documentar seu trabalho colaborativo. Os engenheiros usaram o software para elaborar uma documentação mínima, porém eficaz, do que estavam concordando em criar em cada ciclo de trabalho. Registraram o que e como tinham criado e o que era necessário para que entrasse em funcionamento. Vimos o valor desta abordagem e a implementamos -- assim como a ferramenta – para o restante dos envolvidos no processo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Inicialmente, sugerimos uma seqüência de tarefas para liberar o software que recebemos das equipes de engenharia, abrangendo o modo como recebemos a entrega por parte do sistema de gerenciamento de controle de origem, que nomes os pacotes teriam e como cada elemento (código executável, scripts de banco de dados etc.) funcionaria em quais plataformas. Depois fizemos um teste simulado utilizando código fictício para cada elemento. Testamos nossa seqüência documentando o que e como fizemos. Isso formou a base das instruções de instalação.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Em seguida, as pessoas que iriam implementar o release real fizeram outro teste simulado usando apenas a nossa documentação. Elas estenderam, corrigiram e aprimoraram nossas instruções. O processo se tornou mais abrangente e todos colaboraram com a documentação. O processo foi adotado de maneira mais ampla e com mais qualidade, já que todos ajudaram a defini-lo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Revisamos o processo depois de cada liberação. Examinamos a documentação e identificamos mudanças feitas durante a liberação. A cada vez, verificamos como a documentação poderia ser aprimorada e incorporamos os aprimoramentos ao processo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4. Estabelecer uma infra-estrutura de liberações no início.&lt;/span&gt;&lt;br /&gt;A infra-estrutura de liberações é tudo aquilo que precisa existir para que o software seja implementado e as pessoas possam utilizá-lo. Seu compromisso com o cliente não é somente criar um software excelente, mas que ele esteja disponível para ser acessado e utilizado.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para obter um bom processo de liberação, é crucial que você descubra o que precisa estar implantando para disponibilizar ao cliente antes da equipe de engenharia acabar de criar o software.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A infra-estrutura de liberações cobre hardware, storage, conexões de rede, banda larga, licenças de software, perfis dos usuários e permissões de acesso. Recursos humanos e habilidades também fazem parte da infra-estrutura de liberações. Se você precisa que um software especializado seja instalado e configurado, por exemplo, não é uma atitude inteligente excluir do seu plano de infra-estrutura a disponibilidade das habilidades envolvidas ou o custo de obtê-las.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Quando estiver em busca do hardware necessários ou das habilidades que faltam (por exemplo, para configurar redes seguras), é vital descobrir gargalos ocultos o mais cedo possível. Você precisa resolvê-los antes que eles atrasem a entrega do software.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Não é coisa simples. Nós nos esforçamos para implantar nossa infra-estrutura de liberações assim que iniciamos o projeto. Depois de seis semanas, ainda estávamos esperando memória e hard drives especiais para os servidores de teste!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;5. Automatizar e padronizar o máximo possível.&lt;/span&gt;&lt;br /&gt;A automação permite que você execute tarefas repetitivas sem comprometer recursos humanos valiosos. A padronização garante que inputs e outputs da automação sejam consistentes o tempo todo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Antes do nosso envolvimento com o projeto, as equipes de engenharia produziam manualmente um pacote implementável. Não havia garantia de que um novo pacote seria igual ao anterior. Na realidade, nem havia garantia de que era o software que as equipes andavam desenvolvendo e se funcionaria! Muitas vezes, a equipe técnica levava dias para criar um pacote com os recursos que estavam sendo entregues em uma estrutura que pudesse ser implementada.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Formulamos imediatamente uma estrutura e critérios de aceitação para o pacote implementável que as equipes estavam nos entregando e as ajudamos a padronizar o empacotamento. Isso ativou a implementação de processos automatizados para criar o software nesta estrutura consistente para cada ponto da liberação.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;De repente, o empacotamento do software para liberação deixou de ser um problema. Sua executabilidade estava garantida, já que tínhamos automatizado a verificação dos critérios de aceitação — por exemplo, testar o código antes da entrega e implementar o teste para assegurar que a implementação real poderia ser feita. Como resultado, conseguimos empacotar, versionar, testar e implementar código acabado com um único comando em pouquíssimo tempo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mas a automação não parou por aí. A cada ciclo de desenvolvimento, tínhamos que fazer ainda mais testes de regressão. Os testes de regressão existentes levavam três semanas para serem executados manualmente e, por isso, as liberações nunca eram bem testadas.&lt;br /&gt;&lt;br /&gt;No nosso recém-criado ciclo de liberações, tínhamos que realizar testes de regressão, desempenho e integração em duas semanas para podermos colocar em produção. Podíamos superar a questão de ter diferentes tipos de teste utilizando ambientes separados para cada um. Mas como encaixar três meses de testes de regressão em um período de duas semanas?!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Iniciamos um exercício de priorização. O cliente identificou os testes de regressão mais prioritários, o mínimo que aceitaria como prova de que a antiga funcionalidade ainda executava. Depois partimos para automatizar este conjunto. Testes de aceitação subseqüentes também se tornaram automatizados, assegurando que poderíamos fazer testes de regressão em cada liberação em algumas horas em vez de dias.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;6. Estabelecer expectativas positivas.&lt;/span&gt;&lt;br /&gt;Se a liberação de software é importante para você, não faça segredo disso. Nossas equipes reforçaram o compromisso de liberar o software quando sabiam que era importante.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Endossamos esta importância ao estabelecer que o gerente de liberações designado presumiria que o software estaria pronto na data que as equipes concordaram que ele estaria pronto. Fizemos o gerente de programa (na realidade, nosso cliente) explicar para as equipes por que esta liberação era importante. (No fim das contas, o motivo era não perder  muito dinheiro!)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pedimos que o software fornecido pelas equipes de engenharia seguisse um padrão (versionado, testado, documentado e empacotado). Estabelecemos que solicitaríamos este empacotamento padrão para cada ciclo de liberação. Tivemos de explicar por que queríamos o software desta maneira (nosso processo automatizado se tornava mais fácil e consistente) e incorporamos o feedback da equipe ao processo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Estabelecer expectativas positivas é uma ótima maneira de empoderar todos os envolvidos no processo. Não nos foi delegada nenhuma autoridade executiva e, portanto, não receávamos sansões ou demissões. Tínhamos o poder da expectativa positiva para fazer as pessoas aderirem e nos ajudarem a melhorar o processo de liberação. Elas tomaram decisões-chave (que nunca tinham se sentido capazes de tomar antes) porque "Mike e Tym precisam deste software na quinta-feira e nós dissemos que o entregaríamos”.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;7. Investir em pessoas.&lt;/span&gt;&lt;br /&gt;Não importa o quanto você gaste em hardware, software e processos imaginativos -- sem o comprometimento dos membros da equipe você não alcançará um sucesso sustentável na liberação do seu software.Talvez você nem mesmo tenha um software para liberar!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Provavelmente você pensou que falaríamos em arregimentar as pessoas certas e recompensá-las bem ou que discorreríamos sobre as ferramentas e qualificações necessárias para o trabalho. A verdade é que você sabe que precisa ter as pessoas certas nas equipes (a definição de "certas" varia de uma empresa para outra), você deve recompensá-las adequadamente pelo valor que agregam e, sim, você deve assegurar que elas tenham as ferramentas e qualificações necessárias.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Nossa pressuposição básica é de que as pessoas estão inerentemente interessadas em fazer um bom trabalho. Se você quiser que os membros das suas equipes se importem com seu produto e com a realização de um bom trabalho, antes você precisa demonstrar que se importa com o que é importante para elas. Desde o começo do projeto, criamos um ótimo relacionamento com todos os membros das equipes, baseado em compreensão e respeito mútuo. Demonstramos que éramos flexíveis em termos de desafios pessoais e fizemos o que estava ao nosso alcance para ajudar. Comprar almoço, pegar alguma coisa para beber, organizar treinamento, aconselhar, ouvir problemas, fazer o papel do advogado do diabo... fizemos o que era necessário para que cada indivíduo se sentisse valorizado e um elemento vital do processo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;No nosso primeiro contato com o projeto, detectamos um sentimento geral de apatia. Alguns funcionários fixos mais antigos estavam simplesmente à espera de um pacote de dispensa de pessoal; outros não eram chamados para nada porque nunca tinham feito nada certo. Nos dedicamos a criar um bom relacionamento e despertar um auto-julgamento positivo para que as pessoas voltassem a se importar em adicionar valor pessoal ao processo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;O gerenciamento de liberações é uma parte muito importante de qualquer projeto de software e, freqüentemente, não recebe a atenção que merece. Poderíamos compartilhar muitas outras dicas e observações excelentes sobre nossa experiência de fortalecer o processo de liberações desta empresa de telecomunicações de médio porte. Mas estas são as sete mais importantes para nós neste caso específico, embora suponhamos que sejam idéias muito boas para qualquer situação.&lt;br /&gt;Um bom gerenciamento de liberações exige trabalho árduo, determinação e ótima comunicação. Mas o mais importante é a habilidade de revisar, aprender e adaptar melhorias.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Boa sorte!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mike Sutton era um menino programador prodígio. Hoje, depois de 15 anos de atuação, deixou de ser tão menino mas é prodigioso em ajudar as equipes de programação a se tornarem fornecedoras de soluções vencedoras utilizando metodologias ágeis e abordagens pragmáticas como as descritas neste artigo. CEO da Wizewerx, é consultor de TI independente especializado em soluções de desenvolvimento Java high-end e coaching e mentoring para métodos ágeis e já trabalhou para empresas de primeira linha no Reino Unido e na Europa.&lt;br /&gt;Tym Moore estava ocupado demais ajudando seus clientes e não conseguiu enviar a tempo sua biografia de autor.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;copiado de&lt;/div&gt;&lt;div&gt;&lt;a href="http://cio.uol.com.br/estrategias/2008/12/09/sete-maneiras-de-melhorar-o-lancamento-de-software/paginador/pagina_3"&gt;cio.uol.com.br&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3529446701999792819?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3529446701999792819/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3529446701999792819&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3529446701999792819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3529446701999792819'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/12/sete-maneiras-de-melhorar-o.html' title='Sete maneiras de melhorar o desenvolvimento de software'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-482920894633704325</id><published>2008-12-08T12:24:00.004-03:00</published><updated>2008-12-08T13:41:21.731-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='grátis'/><category scheme='http://www.blogger.com/atom/ns#' term='top sites'/><category scheme='http://www.blogger.com/atom/ns#' term='curso'/><category scheme='http://www.blogger.com/atom/ns#' term='dicas'/><category scheme='http://www.blogger.com/atom/ns#' term='inglês'/><title type='text'>Inglês na Faixa</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Um dia ainda aprendo inglês para poder assistir filmes sem legendas, hehehe. Última vez que tentei, faltou força de vontade. Comprei a coleção &lt;a href="http://www.dmp.es/pages/bbc/eplus.html"&gt;BBC English Plus&lt;/a&gt; que vinha na revista EPOCA. isso foi em 2006. Estudei uns 5 livros e depois parei.&lt;br /&gt;&lt;br /&gt;Vou ver se converto os DVDs para avi e estudar no smartphone, hehehe. Um dia faço isso.&lt;br /&gt;&lt;br /&gt;Mas antes de tentar concluir esse curso, vou estudar outros.&lt;br /&gt;&lt;br /&gt;No momento estou baixando o &lt;a href="http://siteatied.blogspot.com/2008/09/curso-completo-em-udio-e-apostila-ingls.html"&gt;Curso Completo em Áudio e Apostila - Inglês Profissional&lt;/a&gt;. São 650mb de conteúdo. Vai do básico ao nível profissional.&lt;br /&gt;&lt;br /&gt;Antes eu tinha baixado o &lt;a href="http://siteatied.blogspot.com/2008/07/curso-bsico-de-ingls-aprenda-ingls-em.html"&gt;Curso Básico de Inglês. Aprenda Inglês em apenas 30 dias&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Para ajudar nessa tarefa, também é bom usar o serviço de gratis de alguns sites:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.englishexperts.com.br/"&gt;English Experts&lt;/a&gt; - guia para quem estuda inglês por contra própria usando a internt.&lt;br /&gt;&lt;a href="http://www.teclasap.com.br/blog/"&gt;Tecla SAP&lt;/a&gt; - dicas de inglês.&lt;br /&gt;&lt;a href="http://www.inglescurso.net/"&gt;Inglês Curso&lt;/a&gt; - curso grátis de inlgês&lt;br /&gt;&lt;a href="http://www.carlosromero.com.br/2008/08/pratique-ingls-ouvindo-audiobooks.html"&gt;Audiobooks Gratuitos em Inglês&lt;/a&gt; - livros em audio.&lt;br /&gt;&lt;a href="http://www.bbc.co.uk/worldservice/learningenglish/"&gt;BBC Learning English&lt;/a&gt; - estude inglês no site da BBC.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Se alguém tiver alguma dica ae, é só dizer que atualizo este post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-482920894633704325?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/482920894633704325/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=482920894633704325&amp;isPopup=true' title='5 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/482920894633704325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/482920894633704325'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/12/ingls-na-faixa.html' title='Inglês na Faixa'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3450333825230461560</id><published>2008-11-09T15:24:00.003-03:00</published><updated>2008-11-09T15:37:39.378-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quebra cabeça'/><category scheme='http://www.blogger.com/atom/ns#' term='fontes'/><category scheme='http://www.blogger.com/atom/ns#' term='jogo'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><title type='text'>Quebra Cabeça 16 peças em Delphi</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Tem mais de uma ano que fiz esse joguinho. Estava esquecido aqui em meu HD. Resolvi disponibilizar os fontes por causa de um pedido de um jogo desse em meu antigo Blog.&lt;br /&gt;&lt;br /&gt;O código num tá muito comentando, hehehe. Se alguém tiver alguma dúvida do funcionamento é só deixar um comentário.&lt;br /&gt;&lt;br /&gt;Um outro joguinho que fiz foi o da Senha. Esse tá disponibilizado no Baixaki e no SuperDownload (nesse foi publicado por outra pessoa).&lt;br /&gt;&lt;br /&gt;Tela do quebra cabeça de 16 peças. Esse é com números. Tem que colocar as peças na sequencia.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_6HEffI4v80I/SRcsSFUN4EI/AAAAAAAAAFQ/NoBbXfxxPOQ/s1600-h/qcabeca16pecas.jpg"&gt;&lt;img style="cursor: pointer; width: 267px; height: 356px;" src="http://3.bp.blogspot.com/_6HEffI4v80I/SRcsSFUN4EI/AAAAAAAAAFQ/NoBbXfxxPOQ/s400/qcabeca16pecas.jpg" alt="" id="BLOGGER_PHOTO_ID_5266726978409324610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fontes&lt;br /&gt;&lt;a href="http://www.4shared.com/file/70420729/f4cb56b9/Fonte_QCabeca16.html"&gt;http://www.4shared.com/file/70420729/f4cb56b9/Fonte_QCabeca16.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Até a próxima&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3450333825230461560?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3450333825230461560/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3450333825230461560&amp;isPopup=true' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3450333825230461560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3450333825230461560'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/11/quebra-cabea-16-peas-em-delphi.html' title='Quebra Cabeça 16 peças em Delphi'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_6HEffI4v80I/SRcsSFUN4EI/AAAAAAAAAFQ/NoBbXfxxPOQ/s72-c/qcabeca16pecas.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8489070595418067</id><published>2008-11-08T12:21:00.010-03:00</published><updated>2008-11-08T13:17:39.357-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servia'/><category scheme='http://www.blogger.com/atom/ns#' term='músicas'/><category scheme='http://www.blogger.com/atom/ns#' term='frança'/><category scheme='http://www.blogger.com/atom/ns#' term='croacia'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeos'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>Momentun Relax #2</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Hoje é dia especial para mim e para outros, claro.&lt;br /&gt;&lt;br /&gt;Estou executando a versão 3.2, hehehe. Vai ter bolo e guaraná. Enquanto espero esse momento - antes vou lá no shopping - tou aqui catando uns vídeos novos no youtube. Procurando por novas esperiências musicais. Muita coisa que estou descobrindo vem lá da Croácia, Servia e França.&lt;br /&gt;&lt;br /&gt;Esse segundo Momentum Relax será para compartilhar esse conteúdo&lt;br /&gt;&lt;br /&gt;&lt;font style="font-weight: bold;"&gt;Maksim - Nostradamus&lt;/font&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/cymJu9FWW1E&amp;hl=pt-br&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/cymJu9FWW1E&amp;hl=pt-br&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Não conhecia &lt;a href="http://www.wikimusicguide.com/Maksim_Mrvica"&gt;Maksim&lt;/a&gt;. Lembrei logo da &lt;a href="http://pt.wikipedia.org/wiki/Vanessa-Mae"&gt;Vanessa Mae&lt;/a&gt;, só que ele é um mestre no Piano.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font style="font-weight: bold;"&gt;Karma - Amore mio&lt;/font&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/AXMs47m0Jz0&amp;hl=pt-br&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/AXMs47m0Jz0&amp;hl=pt-br&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.menart.si/index.php?performer_id=45"&gt;Karma&lt;/a&gt;. Achei sem querer, estava procurando no Youtube pelo termo Amore Mio.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font style="font-weight: bold;"&gt;Danijel Djokic - Amore Mio&lt;/font&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/a0UTtid7uNE&amp;hl=pt-br&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/a0UTtid7uNE&amp;hl=pt-br&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blogger.com/%20http://www.myspace.com/danieldjokic"&gt;Danijel Djokic&lt;/a&gt;. Outro que descobri pesquisando pelo termo Amore Mio. Gostei tanto que virou toque do meu celular.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;E para encerrar, dois vídeos que encontrei sem querer, querendo, hehehe&lt;br /&gt;&lt;br /&gt;&lt;font style="font-weight: bold;"&gt;IL DIVO - Regresa a mi&lt;/font&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/kD3iMsWePVw&amp;hl=pt-br&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/kD3iMsWePVw&amp;hl=pt-br&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://pt.wikipedia.org/wiki/Il_Divo"&gt;Il Divo&lt;/a&gt;. Esse foi sem querer mesmo. Tava assistindo aos vídeos relacionados ao Amore Mio e acabei encontrando esse vídeo com outro título, nos comentários e que tinha o nome desse quarteto.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Alizee - Laisla Bonita&lt;/span&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/tZlgNj-rIxw&amp;hl=pt-br&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/tZlgNj-rIxw&amp;hl=pt-br&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://pt.wikipedia.org/wiki/Aliz%C3%A9e"&gt;Alizee&lt;/a&gt;. Encontrei com outro título também. Nos comentários tinha o nome Alizee.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Até a Próxima&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8489070595418067?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8489070595418067/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8489070595418067&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8489070595418067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8489070595418067'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/11/momentun-relax-2.html' title='Momentun Relax #2'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7599824660440588017</id><published>2008-11-03T15:34:00.001-03:00</published><updated>2008-11-03T15:36:19.942-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='aprender'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><title type='text'>Java ou C#?</title><content type='html'>&lt;div class="olho"&gt;&lt;p&gt;Qual linguagem o profissional deve aprender para ganhar mais? Por Nivaldo Foresti.&lt;/p&gt;&lt;/div&gt;                                Java ou C#? Qual a linguagem que devo aprender para ganhar mais? Essa é pergunta que mais me fazem por onde ando. Deve valer milhões de reais, pois ela é feita em reuniões, para indicar ao filho do amigo, para uma reportagem etc. Enfim, todos querem saber que linguagem será mais lucrativa para um profissional.&lt;br /&gt;&lt;br /&gt;Minha resposta? Qualquer uma delas. Vale a pena saber a linguagem da moda? Claro! Mais oportunidades de emprego aparecem, os salários são maiores, mas é isso mesmo o que mais importa? Acredito que não.  O que mais importa, no final, é ter conceitos sólidos de algoritmos, na programação orientada a objetos, em sintaxe SQL, na arquitetura em multicamada e, em pelo menos, uma linguagem de programação.&lt;br /&gt;&lt;br /&gt;Na atualidade, com a internet, alguns outros conceitos são importantes, como estas sopas de letras HTML, XML, CSS, XAML, SOAP. Não esqueça de acrescentar Javascript, Ajax e Actionscript (este vindo do Flash) e um pouco de Photoshop. Além disso, mesmo conhecendo tudo isso seu trabalho pode demandar freqüentemente o conhecimento de uma nova linguagem com pouco tempo de estudo. Como fazer isso?&lt;br /&gt;&lt;br /&gt;A primeira dica é buscar, entre diversos tutoriais na internet, aquele que mais se adapta a seu objetivo, já que uma linguagem serve a inúmeras aplicações. Eis aqui uma pequena receita, que pode servir  como exemplo. Leia o manual com o tutorial da linguagem. Geralmente ele é pequeno e rápido de se fazer. Mantenha o manual de referência da sintaxe à mão, entenda como funciona o compilador, suas opções e, se houver, seu ambiente de desenvolvimento (IDE), comece com um programa simples, como imprimir uma linha no navegador. Compile-o e use as funcionalidades básicas de debugging como break points, inspeção de variáveis etc.&lt;br /&gt;&lt;br /&gt;Depois, crie uma lista, como essa abaixo, para entrar na maioria dos recursos da linguagem e entender como el funciona. Comece, por exemplo, por aumentar a complexidade do seu programa básico em uma ordem como esta:&lt;br /&gt;&lt;br /&gt;1)    Mostre uma série de números em um looping infinito usando uma tecla especifica para parar o programa;&lt;br /&gt;&lt;br /&gt;2)    Crie um programa com uma série Fibonacci, encontre o máximo e o mínimo em uma lista de números;&lt;br /&gt;&lt;br /&gt;3)    Aceite caracteres ou números do teclado e ordene a lista em ordem ascendente e descendente;&lt;br /&gt;&lt;br /&gt;4)    Crie um programa para calcular um número &lt;span class="link-external"&gt;&lt;a target="_blank" href="http://en.wikipedia.org/wiki/Reynolds_number"&gt;Reynolds&lt;/a&gt;&lt;/span&gt;. Ele deve aceitar os valores necessários em suas unidades apropriadas. Se o número for menor que 2100 mostre a mensagem Fluxo Laminar, se estiver entre 2100 e 4000 mostre a mensagem Fluxo Transiente, se foi maior que 4000, mostre a mensagem Fluxo Turbulento. Você irá usar os desvios If, else, then etc.;&lt;br /&gt;&lt;br /&gt;5)    Modifique o programa para perguntar se deseja calcular de novo. Com a resposta S, pergunte novamente pelos parâmetros, com a resposta N saia do programa (Do while loop). Informe números que podem dar erro no cálculo. Exemplo: coloque um=0, ele dá um erro de DIVIDE BY ZERO? Como a linguagem trata essa situação? Existe tratamento de exceção? (exception handling)&lt;br /&gt;&lt;br /&gt;6)    Faça cálculos científicos, tais como raiz quadrada, fatorial, seno, coseno etc.;&lt;br /&gt;&lt;br /&gt;7)    Imprima o resultado em diferente formatos, com casas decimais, truncando após a terceira casa, colocando zeros à esquerda ou direita, justificando etc. (operações com strings);&lt;br /&gt;&lt;br /&gt;8)    Abra um arquivo texto e o converta em HTML;&lt;br /&gt;&lt;br /&gt;9)    Pegue a data e hora do sistema e o converta em outro formato;&lt;br /&gt;&lt;br /&gt;10)    Crie arquivos com a data e hora no nome do arquivo;&lt;br /&gt;&lt;br /&gt;11)    Pegue uma tabela HTML e grave um arquivo separado por vírgulas;&lt;br /&gt;&lt;br /&gt;12)    Extraia palavras em maiúsculas ou palavras únicas de um arquivo;&lt;br /&gt;&lt;br /&gt;13)    Implemente quebra de linha automática conforme o tamanho da janela mostrada (veja o programa Notepad do Windows);&lt;br /&gt;&lt;br /&gt;14)    Adicione ou remova itens no começo, meio ou fim de um array;&lt;br /&gt;&lt;br /&gt;15)    Verifique, por fim, se esses recursos são suportados na sua linguagem: funções virtuais, referencias, pointers? Existem coisas como namespace, package, module, estude então o assunto &lt;span class="link-external"&gt;&lt;a target="_blank" href="http://en.wikipedia.org/wiki/Name_mangling"&gt;name mangling&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Java ou C#? Você responde.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Nivaldo Foresti&lt;/b&gt; é programador há 30 anos, desde a jurássica era do mainframe. Foi consultor e desenvolvedor de produtos na internet como o BOL e hoje tem uma empresa de webcasting, com software nacional. Neste espaço, o colunista revela o que os desenvolvedores podem esperar da profissão, além de analisar as novas eras tecnológicas que se aproximam. E-mail: &lt;span class="link-mailto"&gt;&lt;a href="mailto:nforesti@yahoo.com"&gt;nforesti@yahoo.com&lt;/a&gt;&lt;/span&gt; .&lt;br /&gt;&lt;br /&gt;Copiado de: &lt;a href="http://idgnow.uol.com.br/computacao_corporativa/voce/idgcoluna.2008-09-21.7647510499/"&gt;idgnow&lt;/a&gt;&lt;br /&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7599824660440588017?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7599824660440588017/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7599824660440588017&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7599824660440588017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7599824660440588017'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/11/java-ou-c.html' title='Java ou C#?'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6320560048493269368</id><published>2008-11-01T20:20:00.005-03:00</published><updated>2008-11-01T21:30:38.757-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programar'/><category scheme='http://www.blogger.com/atom/ns#' term='small basic'/><category scheme='http://www.blogger.com/atom/ns#' term='linguagem'/><category scheme='http://www.blogger.com/atom/ns#' term='aprender'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='programação'/><title type='text'>Microsoft Small Basic</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estava lendo o &lt;a href="http://info.abril.uol.com.br/blog/downloaddahora/"&gt;blog de download da Info&lt;/a&gt; e dei de cara com uma nova linguagem de programação da microsoft destinada ao aprendizado de lógica de programação. Trata-se do &lt;a href="http://msdn.microsoft.com/en-us/devlabs/cc950524.aspx"&gt;Small Basic&lt;/a&gt;, mais uma encarnação do velho Basic (que, na empresa de Bill Gates, equivale à moeda número 1 do Tio Patinhas).&lt;br /&gt;&lt;br /&gt;Instalei e já executei o tradicional Hello World, hehehe.&lt;br /&gt;&lt;br /&gt;Gostei do que vi. Quando você coloca o cursor em uma função da linguagem por exemplo, na barra localizada do lado direito exibe um texto descrevendo seu funcionamento.&lt;br /&gt;&lt;br /&gt;Tem até o &lt;a href="http://www.dcc.ufla.br/%7Ebruno/wxlogo/docs/oquee.html"&gt;LOGO&lt;/a&gt;, hehehe. Minhas primeiras aulas de algoritmo usando um computador (&lt;a href="http://pt.wikipedia.org/wiki/Intel_80386"&gt;386&lt;/a&gt;) foram com ele. Fazia altas figuras.&lt;br /&gt;&lt;br /&gt;Alguém aí lembra dessa tartaruga ? hehehe&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_6HEffI4v80I/SQz0mUBtrJI/AAAAAAAAAFI/Qzi67nfNFWA/s1600-h/logo_tartaruga.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 301px;" src="http://1.bp.blogspot.com/_6HEffI4v80I/SQz0mUBtrJI/AAAAAAAAAFI/Qzi67nfNFWA/s400/logo_tartaruga.jpg" alt="" id="BLOGGER_PHOTO_ID_5263851003537370258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vou procurar alguns algoritmos e implementar. Verificar se é bom mesmo para quem está iniciando.&lt;br /&gt;&lt;br /&gt;Achei aqui&lt;br /&gt;&lt;a href="http://info.abril.uol.com.br/blog/downloaddahora/20081029_listar.shtml?124017"&gt;Conheça a nova linguagem Small Basic&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/SQzoSsuj_fI/AAAAAAAAAFA/nKZsYRGukbw/s1600-h/small+basic.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 312px;" src="http://4.bp.blogspot.com/_6HEffI4v80I/SQzoSsuj_fI/AAAAAAAAAFA/nKZsYRGukbw/s400/small+basic.jpg" alt="" id="BLOGGER_PHOTO_ID_5263837472431013362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Até a Próxima&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6320560048493269368?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6320560048493269368/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6320560048493269368&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6320560048493269368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6320560048493269368'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/11/microsoft-small-basic.html' title='Microsoft Small Basic'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_6HEffI4v80I/SQz0mUBtrJI/AAAAAAAAAFI/Qzi67nfNFWA/s72-c/logo_tartaruga.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2971021182715526328</id><published>2008-10-31T21:37:00.000-03:00</published><updated>2008-10-31T21:38:39.255-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unknown isc'/><category scheme='http://www.blogger.com/atom/ns#' term='firebird'/><category scheme='http://www.blogger.com/atom/ns#' term='erro'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><category scheme='http://www.blogger.com/atom/ns#' term='windows vista'/><title type='text'>Erro executando Procedure - "unknown ISC error 0"</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Ontem me deparei com o erro &lt;span id="thread_subject_site"&gt;"unknown ISC error 0". Depois de muito procurar no google não encontrei uma solução, talvez não tenha me dedicado, hehehe.&lt;br /&gt;&lt;br /&gt;Mas ficava lembrando que a única que vez que tive problema com uma procedure no Firebird utilizando Delphi 7, foi por causa do tamanho do nome. Se não me engano o erro indicava que o problema era o tamanho, não me recordo muito bem.&lt;br /&gt;&lt;br /&gt;Desconfiei que poderia ser esse o motivo, mas continuei no google. Estava desconfiado por que no Windows Vista as mensagens de erro nem sempre indicam o verdadeiro motivo, hehehe. Sem falar que as outras procedures estavam ok.&lt;br /&gt;&lt;br /&gt;Foi só apagar a procedure e criá-la de novo com um nome menor que deu certo. Deveria ter tentado isso logo, hehehe.&lt;br /&gt;&lt;br /&gt;A procedure é bem simples, serve para pegar o próximo valor de um Generator. Por isso sabia que o erro num era nela, hehehe.&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2971021182715526328?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2971021182715526328/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2971021182715526328&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2971021182715526328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2971021182715526328'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/10/erro-executando-procedure-unknown-isc.html' title='Erro executando Procedure - &quot;unknown ISC error 0&quot;'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-2303590664545053810</id><published>2008-10-28T20:48:00.005-03:00</published><updated>2008-10-28T22:20:56.026-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aulas'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='dicas'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeos'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>Divulgue seus vídeos de dicas</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Quel tal um &lt;a href="http://www.tipsinaction.com/index.html"&gt;site&lt;/a&gt; para divulgar as suas vídeo aulas ? Seus vídeos de dicas sobre os mais variados assuntos ?&lt;br /&gt;&lt;br /&gt;Cadastre-se no site &lt;a href="http://www.tipsinaction.com/index.html"&gt;tipsinaction.com&lt;/a&gt; e utilize a opção de sugerir um vídeo.&lt;br /&gt;&lt;br /&gt;Realizando o cadastro você também terá acesso aos comentários e descrições dos vídeos. Aproveite atmbém para indicar vídeos que acha que será útil para outras pessoas. Compartilhe seus conhecimentos.&lt;br /&gt;&lt;br /&gt;No momento o site só trabalha com vídeos que estão no &lt;a href="http://www.youtube.com/"&gt;youtube&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.tipsinaction.com/index.html"&gt;&lt;img style="cursor: pointer; width: 400px; height: 316px;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SQe46BrsR0I/AAAAAAAAAE4/rJHVhLvg3BQ/s400/tipsinaction.jpg" alt="" id="BLOGGER_PHOTO_ID_5262377996629329730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Até a Próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-2303590664545053810?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/2303590664545053810/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=2303590664545053810&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2303590664545053810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/2303590664545053810'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/10/divulgue-seus-vdeos-de-dicas.html' title='Divulgue seus vídeos de dicas'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_6HEffI4v80I/SQe46BrsR0I/AAAAAAAAAE4/rJHVhLvg3BQ/s72-c/tipsinaction.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8017196412551905048</id><published>2008-10-28T20:06:00.005-03:00</published><updated>2008-10-28T20:32:13.183-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='entrevista'/><category scheme='http://www.blogger.com/atom/ns#' term='curriculum'/><category scheme='http://www.blogger.com/atom/ns#' term='dicas'/><category scheme='http://www.blogger.com/atom/ns#' term='currículo viate'/><category scheme='http://www.blogger.com/atom/ns#' term='trabalho'/><title type='text'>Dicas sobre Currículo Vitae e Entrevista de Emprego</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Segue alguns vídeos que encontrei sobre currículo vitae.&lt;br /&gt;&lt;br /&gt;Ainda lembro do primeiro que fiz. Não tinha nenhum a experiência profissional. Tinha apenas trabalhado como monitor de biologia no primeiro ano de curso.&lt;br /&gt;&lt;br /&gt;Falei sobre os trabalhos envolvendo programação. Um dele foi para uma feira de informática do colégio, foi em Delphi 2, era um sistema para clínica odontológica. Isso foi em 96. Nosso professor que fez tudo, hehehe. Só tinhamos visto pascal até o momento. Mas ficavamos prestando atenção nas explicações. Lembro das tabela sendo criadas no Database Desktop, em piradox, hehehe.&lt;br /&gt;&lt;br /&gt;Outro trabalho foi o de conclusão do cusro na materia de introdução a analise de sistemas, em 97. Eram grupos de quatro alunos. Em nossa equipe o professor colocou os melhores. Era um sistema de controle escolar. Pena que não tenho os fontes. Um dos módulos que fiz foi a grade de horário das turmas. Da alocação do professor em cada horário.&lt;br /&gt;&lt;br /&gt;Também coloquei a pretenção salarial. Coisa que não se deve fazer mais. Coloquei como se fosse uma SQL, hehehe. Salário Between XXXX and XXXX. Lembro dos valores, mas não vem ao caso. O importante é que fui contratado e depois de 10 anos voltei a trabalhar para a pessoa que entreguei esse currículo vitae, hehehe. Depois disso foi só na base do QI, não precisei criar mais nenhum.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Depois do Momentum Nostalgia, vamos aos vídeos, hehehe.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/fredwizard/consultoria-montando-um-curriculo-video_54f3f2f28.html"&gt;Consultoria - Montando um currículo&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/s4bconsultores/como-hacer-un-curriculum-vitae-exitoso-en-5-minutos-video_066151d34.html"&gt;Como hacer un Curriculum Vitae exitoso en 5 minutos&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/caputconsultoria/como-conquistar-o-primeiro-emprego-video_9aa812403.html"&gt;&lt;span style="text-decoration: underline;"&gt;Como Conquistar o Primeiro Emprego&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/rebonato/dicas-de-como-se-comportar-em-entrevistas-de-emprego-video_c2ee5a374.html"&gt;Dicas de como se comportar em entrevistas de emprego&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;O primeiro vídeo é muito bom. Recomendo a todos.&lt;br /&gt;&lt;br /&gt;Até mais.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8017196412551905048?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8017196412551905048/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8017196412551905048&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8017196412551905048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8017196412551905048'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/10/dicas-sobre-currculo-vitae-e-entrevista.html' title='Dicas sobre Currículo Vitae e Entrevista de Emprego'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3191315190657134600</id><published>2008-10-26T20:45:00.003-03:00</published><updated>2008-10-26T20:58:34.786-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clipes'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='joost'/><category scheme='http://www.blogger.com/atom/ns#' term='cinema'/><category scheme='http://www.blogger.com/atom/ns#' term='brazil'/><category scheme='http://www.blogger.com/atom/ns#' term='filmes'/><category scheme='http://www.blogger.com/atom/ns#' term='biquine cavadão'/><title type='text'>Momentun Relax #1</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Tempão que num publico nada aqui. Não é falta de assunto, é de tempo mesmo.&lt;br /&gt;&lt;br /&gt;Vou começar a escrever sobre outros assuntos. Nem só de programação é que vive o homo sapiens.&lt;br /&gt;&lt;br /&gt;Ontem li uma materia sobre o &lt;a href="http://www.joost.com/"&gt;Joost&lt;/a&gt;. Antes não usava o programa, não tinha conexão para isso. Mas agora já é possível assistir os canais diretamente no browser. E agora tenho uma conexão descente, hehehe.&lt;br /&gt;&lt;br /&gt;Pena que num tem muitos canais brasileiros. Tou curtindo alguns clipes do &lt;a href="http://www.joost.com/110002c"&gt;Brazilian Hits&lt;/a&gt;. &lt;a href="http://www.joost.com/110002k/t/Biquini-Cavad%C3%A3o-Timidez"&gt;Biquine cavadão&lt;/a&gt; para ser mais preciso. Também já assistir alguns filmes do &lt;a href="http://pt.wikipedia.org/wiki/Buster_Keaton"&gt;Buster Keaton&lt;/a&gt;, o palhaço que nunca ri. Os vídeos possuem boa qualidade e o tempo não segue o padrão de 1o minutos do &lt;a href="http://www.youtube.com/"&gt;youtube&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3191315190657134600?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3191315190657134600/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3191315190657134600&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3191315190657134600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3191315190657134600'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/10/momentun-relax-1.html' title='Momentun Relax #1'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7447450126639975726</id><published>2008-08-29T22:51:00.004-03:00</published><updated>2008-08-29T23:08:34.071-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='restore'/><category scheme='http://www.blogger.com/atom/ns#' term='gfix'/><category scheme='http://www.blogger.com/atom/ns#' term='erro'/><category scheme='http://www.blogger.com/atom/ns#' term='shutdown'/><title type='text'>Problema com Firebird, Database shutdown.</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Recebi de um cliente o backup da base de dados de um sistema que possuo. Procedi com o Restore do bkp (a base fica em um servidor linux, eu uso windows) utilizando o IB Express. Ok, até aí tudo bem.&lt;br /&gt;&lt;br /&gt;Fui executar o programa e deu um erro dizendo que a base estava shutdown. Pensei que o serviço do firebird estava parado, mas estava tudo normal.&lt;br /&gt;&lt;br /&gt;Abri normalmente outra base no ib expert. Então fui a caça da solução no google e encontrei uma &lt;a href="http://www.destructor.de/firebird/gfix.htm"&gt;página&lt;/a&gt; com os comando do gfix. Vi lá que tinha um parametro para deixar a base on-line.&lt;br /&gt;&lt;br /&gt;Executei o seguinte comando:&lt;br /&gt;gfix -o -user sysdba -password masterkey base.gdb, e ficou tudo OK.&lt;br /&gt;&lt;br /&gt;Tela de erro do IB Expert&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/SLipUMofOMI/AAAAAAAAAEw/udlZAEBWxRA/s1600-h/erro+restore+backup+linux+firebird.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SLipUMofOMI/AAAAAAAAAEw/udlZAEBWxRA/s400/erro+restore+backup+linux+firebird.jpg" alt="" id="BLOGGER_PHOTO_ID_5240124330899093698" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Utilização do GFIX&lt;br /&gt;&lt;a href="http://www.destructor.de/firebird/gfix.htm"&gt;http://www.destructor.de/firebird/gfix.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Até  a Próxima&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7447450126639975726?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7447450126639975726/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7447450126639975726&amp;isPopup=true' title='7 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7447450126639975726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7447450126639975726'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/08/problema-com-firebird-database-shutdown.html' title='Problema com Firebird, Database shutdown.'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_6HEffI4v80I/SLipUMofOMI/AAAAAAAAAEw/udlZAEBWxRA/s72-c/erro+restore+backup+linux+firebird.jpg' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8018557304626467978</id><published>2008-08-24T21:36:00.005-03:00</published><updated>2008-08-24T21:59:24.220-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='componente'/><category scheme='http://www.blogger.com/atom/ns#' term='delphi'/><category scheme='http://www.blogger.com/atom/ns#' term='skin'/><title type='text'>Deixe seu programa mais bonito e interessante</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Estou para fazer um novo programa e gostaria que ele tivesse uma aparência mais sofisticada.&lt;br /&gt;&lt;br /&gt;Fui a procura de um componente de skin para Delphi e achei o &lt;a href="http://www.fabricio.pro.br/default.asp?id=1&amp;amp;mnu=1&amp;amp;ACT=5&amp;amp;content=40"&gt;VclSkin&lt;/a&gt;. Instalei no meu delphi 7 e criei um pequeno exemplo que vou disponibilizar aqui.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/SLIADgGvgtI/AAAAAAAAAEg/Sem-vVcMs9I/s1600-h/skin5.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SLIADgGvgtI/AAAAAAAAAEg/Sem-vVcMs9I/s320/skin5.jpg" alt="" id="BLOGGER_PHOTO_ID_5238249376743129810" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/SLIALzrOkKI/AAAAAAAAAEo/4NkEr1k_dQk/s1600-h/skin4.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SLIALzrOkKI/AAAAAAAAAEo/4NkEr1k_dQk/s320/skin4.jpg" alt="" id="BLOGGER_PHOTO_ID_5238249519435387042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Esse exemplo tem o recurso de trocar a skin em tempo de execução e de carregar o último skin selecionado.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/60323460/28270a88/FontesTesteSkin.html"&gt;Download dos Fontes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/60323560/29e560bf/TesteSkin.html"&gt;Download do executável&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Qualquer dúvida é só dizer&lt;br /&gt;&lt;br /&gt;Até a próxima&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8018557304626467978?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8018557304626467978/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8018557304626467978&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8018557304626467978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8018557304626467978'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/08/deixe-seu-programa-mais-bonito-e.html' title='Deixe seu programa mais bonito e interessante'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_6HEffI4v80I/SLIADgGvgtI/AAAAAAAAAEg/Sem-vVcMs9I/s72-c/skin5.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4869030699304518229</id><published>2008-08-24T12:25:00.001-03:00</published><updated>2008-08-24T12:27:26.892-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cursos'/><category scheme='http://www.blogger.com/atom/ns#' term='gratuitos'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Cursos Gratuitos</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Dica de cursos gratuitos de HTML, PHP Básico e Linux Ubuntu.&lt;br /&gt;&lt;br /&gt;IPED&lt;br /&gt;&lt;a href="http://www.iped.com.br/site/gratis/"&gt;http://www.iped.com.br/site/gratis/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Até a Próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4869030699304518229?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4869030699304518229/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4869030699304518229&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4869030699304518229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4869030699304518229'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/08/cursos-gratuitos.html' title='Cursos Gratuitos'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-9019281043397579739</id><published>2008-08-24T11:21:00.003-03:00</published><updated>2008-08-24T11:26:53.969-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='timer trab'/><category scheme='http://www.blogger.com/atom/ns#' term='tempo'/><category scheme='http://www.blogger.com/atom/ns#' term='projeto'/><category scheme='http://www.blogger.com/atom/ns#' term='controle'/><title type='text'>Time Trab - Vídeo</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Fiz um vídeo do programa que criaei para controlar o tempo gasto em um projeto.&lt;br /&gt;&lt;br /&gt;Esse vídeo já é da nova versão. Fazia muito tempo que não atualizava o programa. Incluir um recurso que foi bastante solicitado, para informar diretamente o valor da hora, antes o valor só era obtido informando o salário e as horas dispensadas no projeto por dia.&lt;br /&gt;&lt;br /&gt;Essa nova versão tembém é compatível com o windows vista.&lt;br /&gt;&lt;br /&gt;Depois faço um vídeo com áudio.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/xFEuMxjGqow&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/xFEuMxjGqow&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-9019281043397579739?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/9019281043397579739/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=9019281043397579739&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9019281043397579739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9019281043397579739'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/08/time-trab-vdeo.html' title='Time Trab - Vídeo'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3498005000012436951</id><published>2008-08-03T21:50:00.005-03:00</published><updated>2008-08-24T22:16:22.869-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='desenvolvimento'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeos'/><category scheme='http://www.blogger.com/atom/ns#' term='links'/><category scheme='http://www.blogger.com/atom/ns#' term='programação'/><title type='text'>Vídeos sobre desenvolvimento de sistemas</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Vou colocar aqui os links de alguns vídeos que achei sobre programação.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/pivaggi/delphi-7-dicas-parte-1-video_df8a7e97e.html"&gt;Delphi 7 - Dicas (Parte 1)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/pivaggi/delphi-7-dicas-parte-2-video_2d1ae9343.html"&gt;Delphi 7 - Dicas (Parte 2)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/mastergaurav/aspnet-web-service-hello-world-with-audio-video_aedbf0ca0.html"&gt;ASP.Net Web Service - Hello World (With Audio)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/70k0/the-basics-of-java-programming-video_24ab015cb.html"&gt;The Basics Of Java Programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/dextercowley/eclipse-and-java-for-total-beginners-video_626cf45ad.html"&gt;Eclipse and Java for Total Beginners&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/belgampaul/tutorial-creating-web-services-with-netbeans-video_a2987cdf7.html"&gt;Tutorial "creating web services" with NetBeans&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/googledevelopers/uploading-youtube-videos-with-the-php-client-library-video_8926ec3d8.html"&gt;Uploading YouTube Videos with the PHP Client Library&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/cbirdieuk/php-file-upload-video_0e3dc6566.html"&gt;PHP file upload&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/davidmbush/datasets-and-storedprocedures-in-visual-studio-2008-video_6a9e2f959.html"&gt;DataSets and StoredProcedures in Visual Studio 2008&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/ramonduraes/migrando-para-net-framework-visual-studio-2008-video_ce9f8182a.html"&gt;Migrando para .NET Framework - Visual Studio 2008&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tipsinaction.com/ramonduraes/qualidade-em-projetos-de-software-video_83ce68422.html"&gt;Qualidade em projetos de software&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Espero que aproveitem os vídeos.&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3498005000012436951?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3498005000012436951/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3498005000012436951&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3498005000012436951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3498005000012436951'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/08/vdeos-sobre-desenvolvmento-de-sistemas.html' title='Vídeos sobre desenvolvimento de sistemas'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8203852071290196428</id><published>2008-06-21T01:52:00.002-03:00</published><updated>2008-06-21T01:57:08.404-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pascal'/><category scheme='http://www.blogger.com/atom/ns#' term='vídeo'/><category scheme='http://www.blogger.com/atom/ns#' term='programadores'/><category scheme='http://www.blogger.com/atom/ns#' term='iniciante'/><title type='text'>Pascal para iniciantes, o vídeo</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Acabei de assistir esse vídeo e tou com dificuldade até agora para respirar. É muito hilário, hehehe.&lt;br /&gt;&lt;br /&gt;Vejam o quanto é complicado determinar se um número é primo ou não.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/DxK3TU42zeU&amp;amp;hl=en"&gt;&lt;embed src="http://www.youtube.com/v/DxK3TU42zeU&amp;hl=en" type="application/x-shockwave-flash" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8203852071290196428?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8203852071290196428/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8203852071290196428&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8203852071290196428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8203852071290196428'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/06/pascal-para-iniciantes-o-vdeo.html' title='Pascal para iniciantes, o vídeo'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1825362150268573374</id><published>2008-06-08T22:03:00.008-03:00</published><updated>2008-06-09T22:46:19.513-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual studio'/><category scheme='http://www.blogger.com/atom/ns#' term='configuração'/><category scheme='http://www.blogger.com/atom/ns#' term='activesync'/><category scheme='http://www.blogger.com/atom/ns#' term='sincronizar'/><category scheme='http://www.blogger.com/atom/ns#' term='emulador'/><title type='text'>Configurando o ActiveSync para Sincronizar com o Emulador</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Pesquisando sobre como criar um arquivo de instalação para pocket pc, acabei aprendendo como configurar o ActiveSync para sincronizar com o emulador. Antes quando não sabia e precisei capturar as telas de um exemplo que fiz que utiliza o sql server mobile, tive que colocar um código para criar o banco de dados e uma tabela, já que não conseguir copiar o banco de dados no emulador.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Configurando o ActiveSync&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Acesse a opção "Configurações de conexão" e marque a opção "Permitir conexões com um dos seguintes itens" e em seguida escolha o item "DMA". Clique em OK para confirmar.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/SE3Yq1OTV7I/AAAAAAAAAC0/pcnA0aliz4M/s1600-h/config_activesync.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SE3Yq1OTV7I/AAAAAAAAAC0/pcnA0aliz4M/s320/config_activesync.jpg" alt="" id="BLOGGER_PHOTO_ID_5210058574290704306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Usando o Emulador&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;No Visual Studio, em Tools, escolha a opção "&lt;span style="font-weight: bold;"&gt;Device Emulator Manager...&lt;/span&gt;".&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/SE3ZKtdSsQI/AAAAAAAAAC8/--cMsT6-R7Y/s1600-h/device+manager.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_6HEffI4v80I/SE3ZKtdSsQI/AAAAAAAAAC8/--cMsT6-R7Y/s320/device+manager.jpg" alt="" id="BLOGGER_PHOTO_ID_5210059121961906434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Clique com o botão direito do mouse em uma opção de Emulador e clique em &lt;span style="font-weight: bold;"&gt;Connect&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_6HEffI4v80I/SE3ZkNONBQI/AAAAAAAAADE/6RY0CjPIJEI/s1600-h/escolher+imagem+emulador.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_6HEffI4v80I/SE3ZkNONBQI/AAAAAAAAADE/6RY0CjPIJEI/s320/escolher+imagem+emulador.jpg" alt="" id="BLOGGER_PHOTO_ID_5210059559985284354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para sincronizar o emulador com o ActiveSync, clique novamente com o botão direito sobre o tipo de emulador escolhido e clique em &lt;span style="font-weight: bold;"&gt;Cradle&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/SE3aAcaDNMI/AAAAAAAAADM/mOJGwz6wgMc/s1600-h/ativando+conexao+com+o+emulador.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_6HEffI4v80I/SE3aAcaDNMI/AAAAAAAAADM/mOJGwz6wgMc/s320/ativando+conexao+com+o+emulador.jpg" alt="" id="BLOGGER_PHOTO_ID_5210060045097841858" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Em seguida será iniciado o processo de sincronia.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/SE3asPw66sI/AAAAAAAAADU/-TAxJYfX12c/s1600-h/sincronizando.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_6HEffI4v80I/SE3asPw66sI/AAAAAAAAADU/-TAxJYfX12c/s320/sincronizando.jpg" alt="" id="BLOGGER_PHOTO_ID_5210060797618350786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Caso tenha algum problema, dê um shutdown no emulador, depois vá nas configurações do ActiveSync e desmarque a opção de "Permitir conexões com um dos seguintes itens" e clique em OK. Em seguida ative novamente o emulador, clique em connect e depois em cradle. Acesse novamente as configurações do ActiveSync e marque a opção "Permitir conexões com um dos seguintes itens". Esse procedimento deve iniciar o processo de sincronia.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Qualquer dúvida é só perguntar.&lt;br /&gt;&lt;br /&gt;Até a Próxima.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Fonte:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=3958"&gt;http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=3958&lt;/a&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/pt-br/library/ms228714.aspx"&gt;http://msdn.microsoft.com/pt-br/library/ms228714.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1825362150268573374?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1825362150268573374/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1825362150268573374&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1825362150268573374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1825362150268573374'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/06/configurando-o-activesync-para.html' title='Configurando o ActiveSync para Sincronizar com o Emulador'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_6HEffI4v80I/SE3Yq1OTV7I/AAAAAAAAAC0/pcnA0aliz4M/s72-c/config_activesync.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-4671053618782916467</id><published>2008-06-01T10:36:00.014-03:00</published><updated>2008-11-07T21:09:23.057-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='pocket pc'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><category scheme='http://www.blogger.com/atom/ns#' term='cliente ftp'/><title type='text'>Desenvolvendo um Cliente FTP para Pocket PC</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Agora estou na etapa de criar um cliente ftp para Pocket PC.&lt;br /&gt;&lt;br /&gt;Achei um &lt;a href="http://aspalliance.com/1187_Building_a_Simple_FTP_Application_Using_C_20.5"&gt;cliente de ftp em C#&lt;/a&gt; e fui tentar usar o código em um projeto Smart Device e não funcionou. Algumas classes não existem no Compact FrameWork. Ainda tentei achar uma solução no google para esse código e não tive êxito.&lt;br /&gt;&lt;br /&gt;Nessa busca cheguei a encontrar o &lt;a href="http://community.opennetcf.com/"&gt;OpenNETCF Community&lt;/a&gt;, mas não consegui utilizá-lo. Trata-se de um conjunto de classes para diversas finalidades, uma delas é para implementar um cliente de ftp.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Tela do Cliente de FTP para windows em c#.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_6HEffI4v80I/SEKqS9_pGjI/AAAAAAAAACk/kMPQ--l20_c/s1600-h/client+ftp+csharp+windows.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_6HEffI4v80I/SEKqS9_pGjI/AAAAAAAAACk/kMPQ--l20_c/s320/client+ftp+csharp+windows.JPG" alt="" id="BLOGGER_PHOTO_ID_5206911362049579570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Na continuidade de minha busca, &lt;a href="http://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=2655069&amp;amp;SiteID=21"&gt;encontrei um código&lt;/a&gt; para um cliente de ftp que consegui implementar no programa para pocket pc.&lt;br /&gt;&lt;br /&gt;Deu um pouco de trabalho devido a uma função da classe Char para converter uma &lt;a href="http://www.arquivodecodigos.net/arquivo/visualizar_dica.php?qual_dica=1745"&gt;string para um valor do tipo char&lt;/a&gt; que não existe no compact framework (utilizei o 2.0, não testei no 3.5).&lt;br /&gt;&lt;br /&gt;Tive que encontrar uma alternativa para a função Char.Parse.&lt;br /&gt;&lt;br /&gt;A solução que encontrei foi essa: de &lt;span style="font-weight: bold;"&gt;char ch = Char.Parse(ipData.Substring(i, 1));&lt;/span&gt; para &lt;span style="font-weight: bold;"&gt;char ch = ipData[i];&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Deu trabalho por que eu tinha pego o código e tranformado em uma DDL. Utilizei a dll no programa e deu esse erro do Char.Parse. Descobri que o compact framework não suportava por que resolvi utilizar o código diretamente no projeto, aí o visual acusou que não existia a função Char.Parse.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Criei uma cópia da tela do ftp para windows.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_6HEffI4v80I/SEKuPd_pGkI/AAAAAAAAACs/6dLZPdCPAIw/s1600-h/client+ftp+csharp+pocket+pc.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_6HEffI4v80I/SEKuPd_pGkI/AAAAAAAAACs/6dLZPdCPAIw/s320/client+ftp+csharp+pocket+pc.JPG" alt="" id="BLOGGER_PHOTO_ID_5206915699966548546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheguei a testar as funções de listar o conteúdo de uma pasta e para fazer o download de um arquivo. Funcionou. Depois eu termino de implementar esse exemplo.&lt;br /&gt;&lt;br /&gt;Download do código para criar um cliente de ftp para Pocket PC.&lt;br /&gt;&lt;a href="http://www.4shared.com/file/70203144/6681eea3/classe_cliente_ftp_windows_mobile.html"&gt;classe_cliente_ftp_windows_mobile.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-4671053618782916467?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/4671053618782916467/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=4671053618782916467&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4671053618782916467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/4671053618782916467'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/06/desenvolvendo-um-cliente-ftp-para.html' title='Desenvolvendo um Cliente FTP para Pocket PC'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_6HEffI4v80I/SEKqS9_pGjI/AAAAAAAAACk/kMPQ--l20_c/s72-c/client+ftp+csharp+windows.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-5532447054723464849</id><published>2008-05-25T00:25:00.013-03:00</published><updated>2011-06-15T07:49:03.657-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='agenda'/><category scheme='http://www.blogger.com/atom/ns#' term='código fonte'/><category scheme='http://www.blogger.com/atom/ns#' term='pocket pc'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><title type='text'>Desenvolvendo uma agenda de contatos para Pocket PC</title><content type='html'>HI,&lt;br /&gt;&lt;br /&gt;Depois do &lt;a href="http://dprogrammer.blogspot.com/2008/05/hello-world-no-windows-mobile.html"&gt;Hello Wolrd&lt;/a&gt;, chegou a hora de dominar o mundo, hehehe. Um passo de cada vez, claro.&lt;br /&gt;&lt;br /&gt;Como tinha dito antes, estou no processo de aprendizado para criar programas para Pocket PC e acabei de elaborar um exemplo demonstrando como incluir, atualizar e excluir usando o Sql Server Mobile com C#. E nada melhor para treinar isso do que fazer uma agenda de contatos, hehehe.&lt;br /&gt;&lt;br /&gt;Esse programinha é resultado de quatro artigos que encontrei, e claro, de minha experiência, hehehe. Não foi fácil fazer esse exemplo. Três artigos não são para principiantes e são incompletos. Vou explicar na descrição de cada artigo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Artigos&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=5381"&gt;&lt;span style="font-weight: bold;"&gt;1 - Desenvolvendo Aplicações para Pocket PC – Parte III&lt;/span&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;Pensei que ia fazer a agenda usando somente esse artigo, mas falta o código para editar o registro e a parte de excluir não funciona. Descobri que não excluía porque estava faltando o código do DeleteCommand no SqlCeDataAdapter na rotina CarregaDataAdapter. Por que eu coloquei um "Delete from tabela" e funcionou, mas aí excluiu tudo, hehehe.&lt;br /&gt;&lt;br /&gt;Não consegui implementar a rotina de editar desse exemplo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.linhadecodigo.com.br/Artigo.aspx?id=1618"&gt;&lt;span style="font-weight: bold;"&gt;2 - SQL Server Compact Edition: Criando um framework para acesso a dados em dispositivos móveis&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Já tinha esse em meus favoritos. Lembrei dele por que se eu fosse passar o comando de Excluir com o código do registro corrente para a rotina CarregaDataAdapter, era melhor usa SQL para tudo. Para Inserir, Alterar e Excluir.&lt;br /&gt;&lt;br /&gt;Mas nesse exemplo as classes para manipular o banco não são estáticas. Do primeiro são. Fiz essa alteração nas classes do segundo exemplo.&lt;br /&gt;&lt;br /&gt;E do primeiro exemplo dispensei o uso do BindingSource.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/brasil/msdn/Tecnologias/MSDNMagazine/ControleEstoque.mspx"&gt;&lt;span style="font-weight: bold;"&gt;3 - Controle de Estoque no Pocket PC: do eVB ao VB .NET&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Desse artigo aproveitei os comandos para criar as colunas do DataGrid e definir seus tamanhos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=95"&gt;&lt;span style="font-weight: bold;"&gt;4 - Introdução ao SQL Server CE&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tinha encontrado artigo de tarde quando estava pesquisando sobre o DataGrid. Quando foi agora de noite para executar o programa no emulador, lembrei dele. É que tava dando erro, não tava encontrando banco de dados e não conseguir fazer uma sincronização com o emulador para carregar o banco de dados. Foi aí que resolvir incluir o comando de criar o banco de dados e de criar a tabela, para conseguir usar o programa no emulador. Antes estava testando no meu qtek.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Telas do Programa&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_6HEffI4v80I/SDjmXd_pGdI/AAAAAAAAAB0/zUI6zmpWvrY/s1600-h/image-1.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5204162660289550802" src="http://1.bp.blogspot.com/_6HEffI4v80I/SDjmXd_pGdI/AAAAAAAAAB0/zUI6zmpWvrY/s320/image-1.jpg" style="cursor: pointer;" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/_6HEffI4v80I/SDjmo9_pGeI/AAAAAAAAAB8/-NN_31TRYUo/s1600-h/image-2.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5204162960937261538" src="http://3.bp.blogspot.com/_6HEffI4v80I/SDjmo9_pGeI/AAAAAAAAAB8/-NN_31TRYUo/s320/image-2.jpg" style="cursor: pointer;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_6HEffI4v80I/SDjm-t_pGfI/AAAAAAAAACE/d5dc8bnW7C4/s1600-h/image-3.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5204163334599416306" src="http://2.bp.blogspot.com/_6HEffI4v80I/SDjm-t_pGfI/AAAAAAAAACE/d5dc8bnW7C4/s320/image-3.jpg" style="cursor: pointer;" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/_6HEffI4v80I/SDjnG9_pGgI/AAAAAAAAACM/fsc_BYOqyWY/s1600-h/image-4.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5204163476333337090" src="http://3.bp.blogspot.com/_6HEffI4v80I/SDjnG9_pGgI/AAAAAAAAACM/fsc_BYOqyWY/s320/image-4.jpg" style="cursor: pointer;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_6HEffI4v80I/SDjnN9_pGhI/AAAAAAAAACU/AZXAkeA3x-Y/s1600-h/image-6.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5204163596592421394" src="http://3.bp.blogspot.com/_6HEffI4v80I/SDjnN9_pGhI/AAAAAAAAACU/AZXAkeA3x-Y/s320/image-6.jpg" style="cursor: pointer;" /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/_6HEffI4v80I/SDjnTd_pGiI/AAAAAAAAACc/PoM99ZK0Tf0/s1600-h/image-7.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5204163691081701922" src="http://1.bp.blogspot.com/_6HEffI4v80I/SDjnTd_pGiI/AAAAAAAAACc/PoM99ZK0Tf0/s320/image-7.jpg" style="cursor: pointer;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Códigos que incluir&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;São códigos que não existem nos artigos. Alguns tive que implementar por não está mais usando o BindingSource. Que automaticamnete exibiar o registro corrente na tela.&lt;br /&gt;&lt;br /&gt;- Pegar o registro e exibi-lo na tela.&lt;br /&gt;- Ao escolher um registro na tela de pesquisa e retornar, exibir na tela.&lt;br /&gt;- Controle de estado dos botões.&lt;br /&gt;- Os códigos nos botões para se trabalhar com as classes do Framework do segundo artigo.&lt;br /&gt;- Rotina para limpar os campos da tela.&lt;br /&gt;- Uma imagem na tela principal.&lt;br /&gt;- etc, hehehe.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Código fonte de uma agenda de contatos para pocket pc feita no VS2008 Framework 2.0 usando C# com SQL Server Mobile.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/60269901/50c39bca/AgendaFontes.html"&gt;http://www.4shared.com/file/60269901/50c39bca/AgendaFontes.html&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Espero está ajudando com esse programa. Depois tem mais. Ainda falta um exemplo para trabalhar com WebService e outro para enviar/receber um arquivo por ftp.&lt;br /&gt;&lt;br /&gt;Até a próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-5532447054723464849?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/5532447054723464849/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=5532447054723464849&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/5532447054723464849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/5532447054723464849'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/05/desenvolvendo-uma-agenda-de-contatos.html' title='Desenvolvendo uma agenda de contatos para Pocket PC'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_6HEffI4v80I/SDjmXd_pGdI/AAAAAAAAAB0/zUI6zmpWvrY/s72-c/image-1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-1104600454255123903</id><published>2008-05-04T01:55:00.010-03:00</published><updated>2008-08-24T12:50:08.284-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='hello world'/><category scheme='http://www.blogger.com/atom/ns#' term='pocket pc'/><category scheme='http://www.blogger.com/atom/ns#' term='visual studio 2008'/><title type='text'>Hello World no Windows Mobile</title><content type='html'>Nossa!!! Tempão que não pronunciava essa celebre frase. Consegui pronunciá-la - para  WM - graças a um &lt;a href="http://devmobile.blog.br/"&gt;blog&lt;/a&gt; que descobri ontem sobre desenvolvimento para dispositivos móveis.&lt;br /&gt;&lt;br /&gt;Graças ao artigo &lt;span style="font-weight: bold;"&gt;&lt;a href="http://devmobile.blog.br/2008/02/29/como-desenvolver-sua-primeira-aplicacao-ola-mundo-para-windows-mobile/"&gt;Como desenvolver sua primeira aplicação Olá Mundo para Windows Mobile&lt;/a&gt;&lt;/span&gt; coloquei um  pé no ambiente de desenvolvimento para windows mobile.&lt;br /&gt;&lt;br /&gt;Agora é só dá continuidade no aprendizado e portar o programa de força de vendas para Palm OS que tenho com um amigo.&lt;br /&gt;&lt;br /&gt;Pretendo criar vários aplicativos nesse aprendizado, tipo uma agenda, um programa para enviar um cadastro para um servidor, um programa para receber e enviar arquivos, etc.&lt;br /&gt;&lt;br /&gt;Quem quiser juntar-se nessa empreitada¹ é só deixar um recado.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Telas do programa&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;No Visual Studio 2008&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tela1&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/SB1HZb9bZqI/AAAAAAAAABU/54DpbbDJOPw/s1600-h/hello+world+ppc+1.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_6HEffI4v80I/SB1HZb9bZqI/AAAAAAAAABU/54DpbbDJOPw/s320/hello+world+ppc+1.JPG" alt="" id="BLOGGER_PHOTO_ID_5196388047383127714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tela2&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/SB1Hrb9bZrI/AAAAAAAAABc/lhIIuP_D5nY/s1600-h/hello+world+ppc+2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_6HEffI4v80I/SB1Hrb9bZrI/AAAAAAAAABc/lhIIuP_D5nY/s320/hello+world+ppc+2.JPG" alt="" id="BLOGGER_PHOTO_ID_5196388356620773042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Usando o emulador&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tela1&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_6HEffI4v80I/SB1IAL9bZsI/AAAAAAAAABk/ZWMHmBuyNDM/s1600-h/hello+world+ppc+1+-+emulador.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_6HEffI4v80I/SB1IAL9bZsI/AAAAAAAAABk/ZWMHmBuyNDM/s320/hello+world+ppc+1+-+emulador.JPG" alt="" id="BLOGGER_PHOTO_ID_5196388713103058626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tela2&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_6HEffI4v80I/SB1ILL9bZtI/AAAAAAAAABs/aJYQWJXoCdE/s1600-h/hello+world+ppc+2+-+emulador.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_6HEffI4v80I/SB1ILL9bZtI/AAAAAAAAABs/aJYQWJXoCdE/s320/hello+world+ppc+2+-+emulador.JPG" alt="" id="BLOGGER_PHOTO_ID_5196388902081619666" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Esse programa envia o texto digitado na tela1 para a tela2.&lt;br /&gt;&lt;br /&gt;Também testei no meu &lt;a href="http://www.blogtec.com.br/celular-qtek-a9100"&gt;QTEK A9100&lt;/a&gt;. Muito emocionante, hehehe.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Download dos fontes&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/60270387/3c86571b/HelloWorld.html"&gt;http://www.4shared.com/file/60270387/3c86571b/HelloWorld.html&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;¹ - Para aprender a programa para WM e não para desenvolver a aplicação de força de vendas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-1104600454255123903?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/1104600454255123903/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=1104600454255123903&amp;isPopup=true' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1104600454255123903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/1104600454255123903'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/05/hello-world-no-windows-mobile.html' title='Hello World no Windows Mobile'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_6HEffI4v80I/SB1HZb9bZqI/AAAAAAAAABU/54DpbbDJOPw/s72-c/hello+world+ppc+1.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7615579333816278762</id><published>2008-02-13T22:28:00.011-03:00</published><updated>2008-08-24T12:53:51.009-03:00</updated><title type='text'>Popup com parâmetros em Asp.net</title><content type='html'>Chega de tanto blá, blá, blá. Vamos ao que interessa. O código santo de cada dia, hehehe.&lt;br /&gt;&lt;br /&gt;Em um trabalho envolvendo Asp.net, precisei exibir alguns dados em um GridView. Mas eu não queria exibir na mesma página e nem chamar outra página utilizando link. Fixei a idéia que deveria utilizar uma janela popup para exibir esse Grid. A consulta utilizada por ele recebia dois parâmetros  informado pelo usuário. Data inicial e final.&lt;br /&gt;&lt;br /&gt;Pensei que poderia passar os parâmetros pelo lado do servidor.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(51, 51, 255);"&gt;&lt; id="Button1" runat="server" text="Popup usando JavaScript" onclientclick="popitup('Popup.aspx?texto="&amp;lt;% Response.Write(TextBox1.Text); %&gt; /&gt;&lt;/span&gt; &lt;span style="font-style: italic; color: rgb(51, 51, 255);"&gt;&lt; / asp : button &gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mas eu recebi essa linda mensagem de erro:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Parser Error Message:&lt;/span&gt; Server tags cannot contain &lt;% ... %&gt; constructs.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Eu sabia que poderia pegar o valor do controle utilizando JavaScript. Arrumei um exemplo para refrescar a memória no bom e velho Google e montei meu código.&lt;br /&gt;&lt;br /&gt;Também tinha achado um exemplo para criar o código do Script do lado do servidor usando o método RegisterStartupScript. Esse método coloca o script na base da página - depois que o navegador receber todas as tags e antes da tag &amp;lt;/form&gt;.&lt;br /&gt;&lt;br /&gt;Hoje de noite preparei um exemplo com essas duas formas de se chamar um Popup quando se trabalha com Asp.net&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Tela da página ChamaPopup.aspx&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/R7OmlgRo1hI/AAAAAAAAABE/rljoM5bU0dQ/s1600-h/chama_popup.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_6HEffI4v80I/R7OmlgRo1hI/AAAAAAAAABE/rljoM5bU0dQ/s320/chama_popup.JPG" alt="" id="BLOGGER_PHOTO_ID_5166656360773375506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Tela do Popup.aspx&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_6HEffI4v80I/R7OmyARo1iI/AAAAAAAAABM/7-G2oWj0eT4/s1600-h/popup_1.JPG"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_6HEffI4v80I/R7OmyARo1iI/AAAAAAAAABM/7-G2oWj0eT4/s320/popup_1.JPG" alt="" id="BLOGGER_PHOTO_ID_5166656575521740322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Usando a opção de JavaScript, acrescentei um &lt;span style="font-weight: bold;"&gt;"return false"&lt;/span&gt; no evento para evitar que o postBack do botão seja acionado. Dessa maneira se o usuário clicar no botão de voltar do navegador, vai voltar para a página anterior e não "voltar" para a mesma página.&lt;br /&gt;&lt;br /&gt;Quando estava preparando esse exemplo, pesquisei sobre o método RegisterStartupScript e achei dois excelentes artigos sobre o tema abordado aqui.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;São eles:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.bufaloinfo.com.br/artigos/artigo02082005.asp"&gt;Utilizando javascript com .NET&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=7684"&gt;Embutindo JavaScript em Páginas ASP.NET&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Download do exemplo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/60270705/1d5814e3/ChamaPopup.html&lt;br /&gt;"&gt;http://www.4shared.com/file/60270705/1d5814e3/ChamaPopup.html&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7615579333816278762?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7615579333816278762/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7615579333816278762&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7615579333816278762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7615579333816278762'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/02/popup-com-parmetros-em-aspnet.html' title='Popup com parâmetros em Asp.net'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_6HEffI4v80I/R7OmlgRo1hI/AAAAAAAAABE/rljoM5bU0dQ/s72-c/chama_popup.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3030429150706156678</id><published>2008-02-12T21:52:00.000-03:00</published><updated>2008-02-12T22:33:44.344-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webcast'/><category scheme='http://www.blogger.com/atom/ns#' term='vs 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='msdn'/><category scheme='http://www.blogger.com/atom/ns#' term='dicas'/><category scheme='http://www.blogger.com/atom/ns#' term='truques'/><title type='text'>Meu primeiro MSDN WebCasts</title><content type='html'>Hoje participei do &lt;a href="https://msevents.microsoft.com/CUI/default.aspx?culture=pt-BR"&gt;MSDN Webcasts&lt;/a&gt; sobre Visual Studio 2008, foi o meu primeiro. Estou começando a conhecer muita coisa da Microsoft que eu fazia questão de desconhecer. Quebrando paradigmas (sim, eu li o &lt;a href="http://www.esextante.com.br/publique/cgi/public/cgilua.exe/web/templates/htm/principal/view_0002.htm?editionsectionid=2&amp;amp;infoid=1085&amp;amp;user=reader"&gt;Monge e o Executivo&lt;/a&gt;, hehehe).&lt;br /&gt;&lt;br /&gt;Tema de hoje.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032369297&amp;amp;EventCategory=5&amp;amp;culture=pt-BR&amp;amp;CountryCode=BR&amp;amp;flag=1"&gt;&lt;span style="font-weight: bold;"&gt;Dicas e Truques do Visual Studio .NET 2008&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Idioma(s):&lt;/span&gt;  Português.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Produto(s):&lt;/span&gt;  Visual Studio 2008 Professional,Visual Studio 2008 Standard.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Público(s):&lt;/span&gt;  Desenvolvedores.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Mercado Relacionado:&lt;/span&gt;  Serviços Profissionais.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Duração:&lt;/span&gt;  60 Minutos&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Data de Início:&lt;/span&gt;  terça-feira, 12 de fevereiro de 2008 20:00 Brasília&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Visão Geral do Evento&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Palestrantes: Renato Haddad e Alexsandro Antunes.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Neste Webcast, Renato e Alex irão abordar as dicas e truques do VS 2008 usados no dia a dia do desenvolvedor, explorando a ferramenta com produtividade. Veja como instalar o VS 2008, criar projetos em multi-plataformas, usar C# e VB.NET na mesma aplicação, aplicar CSS no ASP.NET 3.5, como adicionar Ajax em controles, Master-page encadeadas, exportar templates do ASP.NET 3.5, gerenciamento de Using/Imports, usar o Intellisense adequadamente, refactor, criar propriedades automáticas, extrair Interface de uma classe, criar um diagrama de classe, usar o Debug visualizer, uso de generics em coleções, novas facilidades do Class View, trocar a plataforma de aplicações móveis no Windows Mobile 6 e como criar um Code Snippet. Desta forma, você poderá explorar as principais funcionalidades do VS 2008.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Gostei do que vi. Dicas que tornam ainda mais fácil o trabalho no VS 2008.&lt;br /&gt;&lt;br /&gt;Única parte que não gostei, foi por que não ganhei uma das 5 camisas sorteadas, hehehe.&lt;br /&gt;&lt;br /&gt;Esses são os eventos que me inscrevi&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/R7JGzwRo1gI/AAAAAAAAAA8/6Xk6Bg178Zk/s1600-h/grade+estudo.JPG"&gt;&lt;img style="cursor: pointer; width: 401px; height: 203px;" src="http://4.bp.blogspot.com/_6HEffI4v80I/R7JGzwRo1gI/AAAAAAAAAA8/6Xk6Bg178Zk/s400/grade+estudo.JPG" alt="" id="BLOGGER_PHOTO_ID_5166269577493534210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para acompanhá-los é preciso o &lt;a href="http://blog.tmcnet.com/blog/tom-keating/microsoft/microsoft-office-live-meeting-2007-first-look.asp"&gt;Live Meeting&lt;/a&gt;. É possível participar de enquetes e enviar perguntas para os apresentadores.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3030429150706156678?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3030429150706156678/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3030429150706156678&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3030429150706156678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3030429150706156678'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/02/meu-primeiro-msdn-webcast.html' title='Meu primeiro MSDN WebCasts'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_6HEffI4v80I/R7JGzwRo1gI/AAAAAAAAAA8/6Xk6Bg178Zk/s72-c/grade+estudo.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-9009976807312562551</id><published>2008-02-11T21:17:00.000-03:00</published><updated>2008-02-11T22:49:00.066-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='desenvolvimento'/><category scheme='http://www.blogger.com/atom/ns#' term='ágil'/><category scheme='http://www.blogger.com/atom/ns#' term='extreme programming'/><category scheme='http://www.blogger.com/atom/ns#' term='xp'/><category scheme='http://www.blogger.com/atom/ns#' term='método'/><title type='text'>Sou Ágil e não conhecia o Ágil</title><content type='html'>Ano passado tomei conhecido do &lt;a href="http://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software"&gt;Desenvolvimento Ágil&lt;/a&gt;. Trata-se de um conjunto de metodologias de desenvolvimento de software.&lt;br /&gt;&lt;br /&gt;Estava pesquisando sobre as &lt;a href="http://pt.wikipedia.org/wiki/Metodologia_%28engenharia_de_software%29"&gt;metodologias&lt;/a&gt; existentes, já que caiu no meu colo a responsabilidade de ser um &lt;a href="http://pt.wikipedia.org/wiki/An%C3%A1lise_de_sistemas"&gt;Analista de Sistemas Sênior&lt;/a&gt; (deve ser a idade. e o nome desse blog já existia, era do tempo que eu ainda era só um programador ).&lt;br /&gt;&lt;br /&gt;Li o material que encontrei na wikipédia sobre o &lt;a href="http://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software"&gt;Desenvolvimento Ágil&lt;/a&gt; e &lt;a href="http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_extrema"&gt;Extreme Programming (XP)&lt;/a&gt;, que é umas das metodologias. Captei algumas idéias sobre &lt;a href="http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_extrema"&gt;XP&lt;/a&gt;. Coloquei em prática a regra de sempre liberar uma release, de sempre está mostrando o que está sendo feito.  Outras eu já praticava  há anos. Pegava a idéia com o cliente, aprendia sobre o que ele estava solicitando e já começava a escrever o código. Também só fazia no começo o que era necessário para deixar o programa funcionando, depois é que eu ia incrementando. Sempre procurei implementar de maneira simples, sem muitas frescuras, sem muitos enfeites e bem objetivo. O que eu pecava mesmo era na comunicação com o Cliente, nos testes e na quantidade de bugs. Trabalhava sozinho e em casa, mas agora estou numa equipe, tentarei por em prática a programação em pares.&lt;br /&gt;&lt;br /&gt;Por conta da correria no trabalho, acabei esquecendo de me aprofundar no assunto. Na verdade tinha até esquecido. Mas ontem eu achei sem querer um link sobre o assunto. Tava procurando material sobre C# e Asp.Net. Foi um &lt;a href="http://www.linhadecodigo.com.br/Artigo.aspx?id=1670"&gt;artigo&lt;/a&gt; que encontrei no &lt;a href="http://www.linhadecodigo.com.br/"&gt;Linha de Código&lt;/a&gt;, e ele é recente. Identifiquei-me bastante com o artigo. Pretendo me aprofundar mais no tema e adotar o &lt;a href="http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_extrema"&gt;XP&lt;/a&gt; como &lt;a href="http://pt.wikipedia.org/wiki/Metodologia_%28engenharia_de_software%29"&gt;metodologia&lt;/a&gt; a seguir. Ontem comprei até um livro no site da Americanas.&lt;br /&gt;&lt;br /&gt;Também tomei conhecimento do &lt;a href="http://agilemanifesto.org/"&gt;Manifesto Ágil&lt;/a&gt;. Depois vou assiná-lo.&lt;br /&gt;&lt;br /&gt;Amanhã publico um post com o material que achei sobre o que abordei aqui.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-9009976807312562551?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/9009976807312562551/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=9009976807312562551&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9009976807312562551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/9009976807312562551'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/02/sou-gil-e-no-conhecia-o-gil.html' title='Sou Ágil e não conhecia o Ágil'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7433122858731180330</id><published>2008-02-11T20:03:00.000-03:00</published><updated>2008-02-11T20:41:02.257-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='activesync'/><category scheme='http://www.blogger.com/atom/ns#' term='problema'/><category scheme='http://www.blogger.com/atom/ns#' term='pocket pc'/><title type='text'>Problema na conexão Pc / Pocket PC</title><content type='html'>Andei enfrentando uns probleminhas no sincronismo entre o Micro e o Pocket PC. O PPC não estava sendo reconhecido e ainda aparecia uma mensagem na tela dele dizendo que não foi possível obter um endereço IP.&lt;br /&gt;&lt;br /&gt;Executei uma rotina do ActiveSync para analisar a conexão. Foram encontrados dois problemas e para cada um deles foi indicando uma url para tentar solucionar o problema.&lt;br /&gt;&lt;br /&gt;Sobre o problema do IP.&lt;br /&gt;&lt;a href="http://www.microsoft.com/windowsmobile/help/activesync/troubleshooter/dhcpclient.mspx"&gt;&lt;span style="font-weight: bold;"&gt;If the DHCP Client Service on the Computer is Not Running&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Sobre o problema de não ser reconhecido.&lt;br /&gt;&lt;a href="http://www.microsoft.com/windowsmobile/help/activesync/troubleshooter/port990.mspx"&gt;&lt;span style="font-weight: bold;"&gt;If ActiveSync Cannot Receive Data Through Port 990&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ainda continuo com o problema do IP. O serviço DHCP já estava rodando. E o interessante é que o Firewall estava desativado, já que o roteador wi-fi tem um. Ativei o firewall do windows e adicionei a porta, fiz o mesmo no firewall do roteador. Depois disso sincronizou que foi uma beleza. Exceto a parte do Windows Media Player. Ainda falta concluir a atualização dele no PC.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_6HEffI4v80I/R7DcvQRo1eI/AAAAAAAAAAs/5-59tAuz1Hc/s1600-h/tela_ActiveSync.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_6HEffI4v80I/R7DcvQRo1eI/AAAAAAAAAAs/5-59tAuz1Hc/s320/tela_ActiveSync.JPG" alt="" id="BLOGGER_PHOTO_ID_5165871476974867938" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7433122858731180330?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7433122858731180330/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7433122858731180330&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7433122858731180330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7433122858731180330'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/02/problema-na-conexo-pc-pocket-pc.html' title='Problema na conexão Pc / Pocket PC'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_6HEffI4v80I/R7DcvQRo1eI/AAAAAAAAAAs/5-59tAuz1Hc/s72-c/tela_ActiveSync.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-8040346084242514068</id><published>2008-02-06T01:22:00.000-03:00</published><updated>2008-02-06T01:42:07.349-03:00</updated><title type='text'>Transforme seu Pocket PC em um iPod</title><content type='html'>Agora você pode transformar seu Pocket Pc/SmartPhone em um iPod. Basta instalar o programa &lt;a href="http://brokenzero.com/2007/09/11/turn-your-pocket-pc-into-an-ipod/"&gt;pPod&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://brokenzero.com/wp-content/uploads/2007/09/ppod.png"&gt;&lt;img style="cursor: pointer; width: 166px; height: 222px;" src="http://brokenzero.com/wp-content/uploads/2007/09/ppod.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ele tem o visual do iPod da terceira geração.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_yH1LbEtm_jw/RZwbPpkaxWI/AAAAAAAAAXU/NmcSPidNMIs/s400/ipod-terceira-geracao-3g.gif"&gt;&lt;img style="cursor: pointer; width: 188px; height: 188px;" src="http://3.bp.blogspot.com/_yH1LbEtm_jw/RZwbPpkaxWI/AAAAAAAAAXU/NmcSPidNMIs/s400/ipod-terceira-geracao-3g.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Assista uma demonstração do programa em funcionamento.&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ZWClnacPKRM&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/ZWClnacPKRM&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;Já instalei no meu Qtek A9100. Agora "ouvo" meus mp3s com estilo, hehehe.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Download do pPod&lt;/span&gt;&lt;br /&gt;&lt;a href="http://brokenzero.com/2007/09/11/turn-your-pocket-pc-into-an-ipod/"&gt;http://brokenzero.com/2007/09/11/turn-your-pocket-pc-into-an-ipod/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-8040346084242514068?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/8040346084242514068/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=8040346084242514068&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8040346084242514068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/8040346084242514068'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/02/transforme-seu-pocket-pc-em-um-ipod.html' title='Transforme seu Pocket PC em um iPod'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_yH1LbEtm_jw/RZwbPpkaxWI/AAAAAAAAAXU/NmcSPidNMIs/s72-c/ipod-terceira-geracao-3g.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-3385934135461223951</id><published>2008-02-05T18:40:00.000-03:00</published><updated>2008-02-05T22:03:32.430-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retorno'/><category scheme='http://www.blogger.com/atom/ns#' term='2008'/><title type='text'>Amanhã começa o Ano</title><content type='html'>Quem nunca disse que o ano só começa depois do carnaval ou nunca presenciou alguém dizendo, que atire o primeiro comentário, hehehe.&lt;br /&gt;&lt;br /&gt;Na verdade estou aproveitando para retornar as atividades desse meu blog. Por que este ano para mim, começou ano passado.&lt;br /&gt;&lt;br /&gt;Faz um tempão que num publico nada aqui. Depois que mudei para outro Estado e me fixei em uma empresa, complicou mais ainda meu tempo livre. Antes eu acordava umas 11 da manhã e ficava no computador até de madrugada, trabalhava em casa. Agora trabalho em uma empresa e em casa, hehehe. Acordo às 06:30 em vou dormir às 00:30.&lt;br /&gt;&lt;br /&gt;E nesse retorno ao blog o que num vai faltar é assunto. Tou trabalhando com Oracle, Asp.Net e Windows Mobile. E ainda continuo com o Delphi, Firebird e NSBAsic. Não pretendo mais trabalhar com PHP, o Visual Studio é baum d+, hehehe. No VS tou usando o C# para programar. Ainda pretendo manter distância do Visual Basic, hehehe, mesmo ele sendo .net.&lt;br /&gt;&lt;br /&gt;É isso aí. Amanhã estou aqui trazendo conteúdo. Tentando ser útil. Retribuindo o que aprendi durante todos esses anos.&lt;br /&gt;&lt;br /&gt;PS: Ainda bem que o expediente amanhã no trabalho só começa depois do almoço, hehehe.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-3385934135461223951?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/3385934135461223951/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=3385934135461223951&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3385934135461223951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/3385934135461223951'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2008/02/amanh-comea-o-ano.html' title='Amanhã começa o Ano'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-350274383104216550</id><published>2007-08-29T01:25:00.000-03:00</published><updated>2007-08-29T02:04:39.831-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='lista'/><category scheme='http://www.blogger.com/atom/ns#' term='framework'/><category scheme='http://www.blogger.com/atom/ns#' term='discussão'/><category scheme='http://www.blogger.com/atom/ns#' term='j2me'/><title type='text'>Floggy, um framework de persistência para J2ME/MIDP</title><content type='html'>O Floggy acaba de ser lançado. Trata-se de um framework de &lt;a href="http://www.pr.gov.br/batebyte/edicoes/1999/bb90/objetos.htm"&gt;persistência&lt;/a&gt; para &lt;a href="http://java.sun.com/javame/index.jsp"&gt;J2ME/MIDP&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O projeto está hospedado no SourceForge.net e pode ser acessado através das seguintes URLs: &lt;a href="http://floggy.org/"&gt;http://floggy.org&lt;/a&gt; ou &lt;a href="http://floggy.sourceforge.net/"&gt;http://floggy.sourceforge.net&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;A idéia é muito simples!&lt;br /&gt;&lt;br /&gt;Basta que as classes persistentes implementem a interface net.sourceforge.floggy.persistence.Persistable  que toda a serialização / deserialização do objeto é adiciona à classe em tempo de compilação pelo Floggy.&lt;br /&gt;&lt;br /&gt;Implementações previstas: sincronização, criptografia, compactação, etc.&lt;br /&gt;&lt;br /&gt;Detalhe: o projeto é 100% brasileiro e teve início em 2005 através de um trabalho de conclusão de curso de dois membros da equipe atual do Floggy.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Fonte:&lt;/span&gt; Lista &lt;a href="http://www.nabble.com/Floggy:-framework-para-persist%C3%AAncia-em-J2ME-MIDP-t4321224.html"&gt;Sou Java J2ME&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vou ver se arrumo um tempinho para voltar a estudar J2ME.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script language="JavaScript" src="http://rec6.via6.com/link.php?action=widget&amp;amp;url=http://dprogrammer.blogspot.com/2007/08/floggy-um-framework-de-persistncia-para.html" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-350274383104216550?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/350274383104216550/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=350274383104216550&amp;isPopup=true' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/350274383104216550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/350274383104216550'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2007/08/floggy-um-framework-de-persistncia-para.html' title='Floggy, um framework de persistência para J2ME/MIDP'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6384287195268511990</id><published>2007-08-29T00:52:00.000-03:00</published><updated>2007-08-29T02:00:32.753-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wordpress'/><category scheme='http://www.blogger.com/atom/ns#' term='blog'/><category scheme='http://www.blogger.com/atom/ns#' term='blogspot'/><category scheme='http://www.blogger.com/atom/ns#' term='migrar'/><title type='text'>Migração concluída</title><content type='html'>Passei todos os posts do &lt;a href="http://dprogrammer.wordpress.com/"&gt;blog&lt;/a&gt; que tenho no &lt;a href="http://wordpress.com/"&gt;wordpress.com&lt;/a&gt;, que não vou utilizar mais, para esse aqui. Olhei no help do blogspot e vi que não existe a opção de importar. Então eu publiquei manualmente todos os post. Ainda bem que eu num tava criando muita coisa, hehehe.&lt;br /&gt;&lt;br /&gt;Resolvi voltar depois que meu blog no WP foi suspenso por ter colocado publicidade na barra lateral. Eu coloquei uma imagens com links de comparação de preço do buscapé. Tipo, tinha uma foto do WII com o link do buscapé. Sem falar que já estava descontente por não poder usar meu código do Google Ads.&lt;br /&gt;&lt;br /&gt;Agora vou brincar de criar material para por aqui. E claro, de vez em quando copiar, hehehe.&lt;br /&gt;&lt;br /&gt;PS: Antes se chamava &lt;a href="http://dprogrammer.wordpress.com/"&gt;Vômito Blog&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6384287195268511990?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6384287195268511990/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6384287195268511990&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6384287195268511990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6384287195268511990'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2007/08/migrao-concluda.html' title='Migração concluída'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-7817139446837522391</id><published>2007-08-28T21:46:00.000-03:00</published><updated>2007-08-28T22:20:40.559-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='dbdesigner'/><category scheme='http://www.blogger.com/atom/ns#' term='my sql'/><category scheme='http://www.blogger.com/atom/ns#' term='sgbd'/><category scheme='http://www.blogger.com/atom/ns#' term='modelagem'/><title type='text'>Modelagem de Dados e DBDesigner Fork</title><content type='html'>&lt;b&gt;Modelagem de Dados.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Modelagem de dados é um processo no qual você "projeta" ou "planeja" a sua base de dados de forma que você possa aproveitar os recursos do Gerenciador de Banco e também para que você possa construir um banco de dados consistente, que reaproveite recursos, que exija menos espaço em disco e sobretudo, que possa ser bem administrado.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.plugmasters.com.br/sys/materias/94/1/Modelagem-de-Dados-1---Vis%E3o-Geral"&gt;Artigo completo em 5 partes ( clique aqui)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Criei esse post por que descobrir na lista &lt;a href="http://groups.google.com/group/arqhp"&gt;ArqHP&lt;/a&gt; que existe o &lt;a href="http://sourceforge.net/projects/dbdesigner-fork"&gt;DBDesigner Fork&lt;/a&gt;. Tinha instalado aqui no meu micro o &lt;a href="http://fabforce.net/dbdesigner4/"&gt;DBDesigner 4&lt;/a&gt;. Desinstalei ele e vou passar a utilizar o Fork.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sourceforge.net/projects/dbdesigner-fork"&gt;DB Designer Fork&lt;/a&gt; is a fork of the fabFORCE DBDesigner 4. DBDesigner is a visual database design system that integrates entity relationship design and database creation. DB Designer Fork generates SQL scripts for Oracle, SQL Server, MySQL and FireBird.&lt;br /&gt;&lt;br /&gt;Vou ver se consigo acessar um base firebird e gerar os script para montar uma base em My SQL. Estou precisando colocar algumas tabelas na net de um sistema que tenho.&lt;br /&gt;&lt;br /&gt;Para conectar no &lt;a href="http://pt.wikipedia.org/wiki/Mozilla_Firefox"&gt;Firebird&lt;/a&gt; só &lt;a href="http://www.firebird.com.br/download.php?cat=3"&gt;utilizando ODBC&lt;/a&gt;, o programa disponibiliza conexão apenas paras os &lt;a href="http://pt.wikipedia.org/wiki/Sistema_de_gerenciamento_de_banco_de_dados"&gt;SGDBs&lt;/a&gt; &lt;a href="http://pt.wikipedia.org/wiki/MySQL"&gt;My SQL&lt;/a&gt;, &lt;a href="http://pt.wikipedia.org/wiki/Microsoft_SQL_Server"&gt;MSSQL&lt;/a&gt;, &lt;a href="http://pt.wikipedia.org/wiki/Oracle"&gt;Oracle&lt;/a&gt; e &lt;a href="http://pt.wikipedia.org/wiki/SQLite"&gt;SQLite&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Technorati Tags: &lt;a class="performancingtags" href="http://technorati.com/tag/DBDesigner%20Fork" rel="tag"&gt;DBDesigner Fork&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/DBDesigner%204" rel="tag"&gt;DBDesigner 4&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/Firebird" rel="tag"&gt;Firebird&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/My%20SQL" rel="tag"&gt;My SQL&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/ODBC" rel="tag"&gt;ODBC&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/Exportar" rel="tag"&gt;Exportar&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/Oracle" rel="tag"&gt;Oracle&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/SQLite" rel="tag"&gt;SQLite&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="poweredbyperformancing"&gt;Powered by &lt;a href="http://scribefire.com/"&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;----&lt;br /&gt;Data Original: 2007-07-13 12:52:09 am&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-7817139446837522391?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/7817139446837522391/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=7817139446837522391&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7817139446837522391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/7817139446837522391'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2007/08/modelagem-de-dados-e-dbdesigner-fork.html' title='Modelagem de Dados e DBDesigner Fork'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18941877.post-6493208507724875316</id><published>2007-08-28T21:43:00.000-03:00</published><updated>2007-08-28T21:44:55.158-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='conexão'/><category scheme='http://www.blogger.com/atom/ns#' term='discador'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='manter'/><title type='text'>Chega de sabotagem</title><content type='html'>&lt;div align="justify"&gt;Por favor, não derrube minha conexão discada. Já é lento, caindo é uma desgraça.&lt;br /&gt;&lt;br /&gt;Acabei de aprontar um programinha - fiz agora de noite - que verifica se o computador está conectado. Caso não esteja, a conexão Dial-up padrão é acionada.&lt;br /&gt;&lt;br /&gt;É o seguinte, estava deixando de madrugada o BitComet funcionando. Estou tentando baixar um filme de 700mb. O problema é que durante a madrugada toda não baixa 1% e quando acordo vejo que a conexão foi para o espaço.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Tela do Sempre Conectado&lt;/b&gt;&lt;br /&gt;&lt;img src="http://dprogrammer.files.wordpress.com/2007/07/sconectado.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Discando a conexão padrão.&lt;/b&gt;&lt;br /&gt;&lt;img src="http://dprogrammer.files.wordpress.com/2007/07/sconectado-discando.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Download:&lt;/b&gt; &lt;a href="http://www.cetasistemas.com.br/meusaplicativos/SConectado.zip"&gt;Sempre Conectado 1.01&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;É muito simples utilizá-lo. Basta definir o tempo em minutos e pronto. Querendo ele fica ao lado do relógio. E também pode emitir um aviso sonoro quando detecta que está desconectado e vai acionar o Dial-up.&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;Na versão 1.02 vou colocar uma opção de agendamento. Alguém pode querer desativar a conexão antes de acabar o horário reduzido. Não tenho esse problema, o plano de minutos que tenho dar direito à internet grátis em qualquer horário, então passo o dias ocupando a linha, hehehe.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Technorati Tags: &lt;a class="performancingtags" href="http://technorati.com/tag/discar" rel="tag"&gt;discar&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/dial-up" rel="tag"&gt;dial-up&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/conectar" rel="tag"&gt;conectar&lt;/a&gt;, &lt;a class="performancingtags" href="http://technorati.com/tag/monitorar" rel="tag"&gt;monitorar&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="poweredbyperformancing"&gt;Powered by &lt;a href="http://scribefire.com/"&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;----&lt;br /&gt;Data Original: 2007-07-05 2:11:20 am&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18941877-6493208507724875316?l=dprogrammer.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dprogrammer.blogspot.com/feeds/6493208507724875316/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18941877&amp;postID=6493208507724875316&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6493208507724875316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18941877/posts/default/6493208507724875316'/><link rel='alternate' type='text/html' href='http://dprogrammer.blogspot.com/2007/08/chega-de-sabotagem.html' title='Chega de sabotagem'/><author><name>dprogrammer</name><uri>http://www.blogger.com/profile/15141941544628235660</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://img316.imageshack.us/img316/2598/imagem56lx.jpg'/></author><thr:total>1</thr:total></entry></feed>
