<?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-4864758783979232683</id><updated>2012-02-16T11:15:31.788-08:00</updated><title type='text'>VFP Brasil</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>24</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-2653642720242017155</id><published>2010-07-27T07:34:00.000-07:00</published><updated>2010-07-27T07:36:24.531-07:00</updated><title type='text'>Utilizando o EXCEL</title><content type='html'>&lt;b&gt;Por &lt;a target='_blank' href="http://forum.programacaobrasil.com/profile.forum?mode=viewprofile&amp;amp;page_profil=profile&amp;amp;u=1"&gt;&lt;span class="Apple-style-span" style="color: #073763;"&gt;Marcos Guedes&lt;/span&gt;&lt;/a&gt; (&lt;span class="Apple-style-span" style="color: #274e13;"&gt;&lt;a target='_blank' href="http://www.programacaobrasil.com/"&gt;Programação Brasil&lt;/a&gt;&lt;/span&gt;)&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;CLEAR&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;obj = NEWOBJECT("excelfiles")&lt;/blockquote&gt;&lt;blockquote&gt;obj.cnamefile = "F:\teste.xls"&lt;/blockquote&gt;&lt;blockquote&gt;*!*obj.cpassword = '654321'&lt;/blockquote&gt;&lt;blockquote&gt;obj.openfile()&lt;/blockquote&gt;&lt;blockquote&gt;?obj.readcellvalue("A1")&lt;/blockquote&gt;&lt;blockquote&gt;?obj.readcellvalue("A2")&lt;/blockquote&gt;&lt;blockquote&gt;*!*obj.cpassword = ''&lt;/blockquote&gt;&lt;blockquote&gt;*!*obj.savefile('')&lt;/blockquote&gt;&lt;blockquote&gt;obj.closefile()&lt;/blockquote&gt;&lt;blockquote&gt;obj = NULL&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;DEFINE CLASS excelfiles AS CUSTOM&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; NAME = "EXCELFILES"&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; HIDDEN objexcel&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; objexcel = NULL&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; cnamefile = ""&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; cpassword = NULL&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; quitexcel = .T.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; FUNCTION openfile AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It open o file specified in the property "cNameFile".&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LOCAL fileopened AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;m.fileopened = .F.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;IF FILE(THIS.cnamefile,1) THEN&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; TRY&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.workbooks.OPEN(THIS.cnamefile,,,,THIS.cpassword)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.fileopened = .T.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CATCH TO oerr&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LOCAL strerro AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = ""&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "Date: " + DTOC(DATE()) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "Hour: " + TIME() + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "Error: " + ALLTRIM(STR(m.oerr.ERRORNO)) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "LineNo: " + ALLTRIM(STR(m.oerr.LINENO)) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "Message: " + m.oerr.MESSAGE + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "Procedure: " + m.oerr.PROCEDURE + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "Details: " + m.oerr.DETAILS + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "StackLevel: " + ALLTRIM(STR(m.oerr.STACKLEVEL)) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;m.strerro = "" + m.strerro + "LineContents: " + m.oerr.LINECONTENTS + _enter + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STRTOFILE(m.strerro, SYS(5)+CURDIR()+"ErrosABT.log", 1)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MESSAGEBOX(m.strerro, 16, THIS.NAME)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FINALLY&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ENDTRY&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ENDIF&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;RETURN m.fileopened&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDFUNC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE closefile AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It open o file specified in the property "cNameFile".&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.workbooks.CLOSE()&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; FUNCTION savefile AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It saves the file with the same name.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS m.cpassword AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LOCAL filesaved AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;m.filesaved = .F.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;TRY&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; IF (VARTYPE(m.cpassword) == "C") THEN&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activeworkbook.PASSWORD = m.cpassword&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ENDIF&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; THIS.objexcel.SAVE()&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.filesaved = .T.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;CATCH TO oerr&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; LOCAL strerro AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = ""&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "Date: " + DTOC(DATE()) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "Hour: " + TIME() + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "Error: " + ALLTRIM(STR(m.oerr.ERRORNO)) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "LineNo: " + ALLTRIM(STR(m.oerr.LINENO)) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "Message: " + m.oerr.MESSAGE + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "Procedure: " + m.oerr.PROCEDURE + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "Details: " + m.oerr.DETAILS + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "StackLevel: " + ALLTRIM(STR(m.oerr.STACKLEVEL)) + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m.strerro = "" + m.strerro + "LineContents: " + m.oerr.LINECONTENTS + _enter + _enter&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STRTOFILE(m.strerro, SYS(5)+CURDIR()+"ErrosABT.log", 1)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; MESSAGEBOX(m.strerro, 16, THIS.NAME)&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;FINALLY&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ENDTRY&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;RETURN m.filesaved&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDFUNC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; FUNCTION savefileas AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It saves the file with other name.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cnewnamefile AS STRING, m.cpassword AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;IF (VARTYPE(m.cpassword) == "C") THEN&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; THIS.objexcel.activeworkbook.PASSWORD = m.cpassword&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ENDIF&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;IF (VARTYPE(m.cnewnamefile) == "C") THEN&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; THIS.objexcel.activeworkbook.SAVEAS(m.cnewnamefile)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; RETURN .T.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ELSE&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; RETURN .F.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ENDIF&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDFUNC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; FUNCTION readcellvalue&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It edit the value of a cell.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;RETURN THIS.objexcel.RANGE(m.ccelllinecollumn).VALUE&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDFUNC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE editcellvalue AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It edit the value of a cell.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, cnewvalue AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).VALUE = m.cnewvalue&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE editcellcolor AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It edit the color of a cell.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Minimum:1 Maximim: 56&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, ncolor AS INTEGER&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).interior.colorindex = m.ncolor&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE editcellwidth AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It edit the value of a cell.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, nwidth AS INTEGER&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).COLUMNWIDTH = m.nwidth&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE insertcelltoright AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Insere uma nova célula, movendo o restante para a direita&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.INSERT(1)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE deletecelltoleft AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Remove a célula, movendo o restante para a esquerda&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.DELETE(1)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE insertcelltobottom AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Insere uma nova célula, movendo o restante para baixo&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.INSERT(2)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE deletecelltotop AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Remove a célula, movendo o restante para a cima&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.DELETE(2)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE insertrowtobottom AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Insere uma nova linha acima da célula selecionada, movendo o restante para baixo&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.INSERT(3)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE deletecelltotop AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Remove a linha da célula selecionada, movendo o restante para cima&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.DELETE(3)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE insertcolltoright AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Insere uma nova coluna à direita da célula selecionada, movendo o restante para a direita&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.INSERT(4)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE deletecolltoleft AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Remove a coluna da célula selecionada, movendo o restante para a esquerda&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.DELETE(4)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE deletecolltoleft AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Remove a coluna da célula selecionada, movendo o restante para a esquerda&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).SELECT&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.activecell.DELETE(4)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE mergecell AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS cellrange AS STRING&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Remove a coluna da célula selecionada, movendo o restante para a esquerda&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.cellrange).merge&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE editcellheight AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* It edit the value of a cell.&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, nheight AS INTEGER&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).ROWHEIGHT = m.nheight&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE cellbold AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Bold&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, lbold AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).FONT.bold = m.lbold&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE cellitalic AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Italic&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, litalic AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).FONT.italic &amp;nbsp;= m.litalic&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE cellunderline AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Underline&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, lunderline AS logical&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).FONT.italic &amp;nbsp;= m.lunderline&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE cellforecolor AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Forecolor&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, ncolor AS INTEGER&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).FONT.colorindex = m.ncolor&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE cellbordersingler AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* Forecolor&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, nstyle AS INTEGER&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).BORDERS.linestyle = m.nstyle&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE cellhorizontalalignment AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!* 1: Left; 2: Center; 3: Right&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS ccelllinecollumn AS STRING, nposition AS INTEGER&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;DO CASE&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CASE (m.nposition = 1)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).horizontalalignment=-4131&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CASE (m.nposition = 2)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).horizontalalignment=-4108&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CASE (m.nposition = 3)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.RANGE(m.ccelllinecollumn).horizontalalignment=-4152&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; OTHERWISE&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ENDCASE&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; PROCEDURE showexcel AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.VISIBLE = .T. &amp;amp;&amp;amp; Excel visible&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; HIDDEN PROCEDURE INIT AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel = NEWOBJECT('Excel.Application')&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;*!*&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.displayalerts = .F. &amp;amp;&amp;amp; Disable any dialog message&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel.VISIBLE = .F. &amp;amp;&amp;amp; Excel invisible&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; HIDDEN PROCEDURE DESTROY AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;IF (THIS.quitexcel = .T.) THEN&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; THIS.objexcel.QUIT()&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;ENDIF&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;THIS.objexcel = NULL&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; HIDDEN PROCEDURE ERROR AS void&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;LPARAMETERS nerror, cmethod, nline&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;MESSAGEBOX("Erro: " + ALLTRIM(STR(m.nerror)) + _enter+;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "Método: " + ALLTRIM(m.cmethod) + _enter+;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "Linha: " + ALLTRIM(STR(m.nline)) + _enter+;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "Descrição: "+MESSAGE(),16, THIS.NAME)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp;&amp;nbsp; ENDPROC&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;ENDDEFINE&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-2653642720242017155?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/2653642720242017155/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2010/07/utilizando-o-excel.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2653642720242017155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2653642720242017155'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2010/07/utilizando-o-excel.html' title='Utilizando o EXCEL'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-5136931484069670756</id><published>2010-07-06T19:12:00.001-07:00</published><updated>2010-07-06T19:13:33.668-07:00</updated><title type='text'>Programação Brasil no Twitter</title><content type='html'>Seja um seguidor(a) do Programação Brasil, no Twitter:&lt;div&gt;&lt;a href="http://twitter.com/programacaobras"&gt;http://twitter.com/programacaobras&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Você poderá acompanhar todas as novidades que ocorrem no site.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-5136931484069670756?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/5136931484069670756/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2010/07/programacao-brasil-no-twitter.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5136931484069670756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5136931484069670756'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2010/07/programacao-brasil-no-twitter.html' title='Programação Brasil no Twitter'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-5454454867337587470</id><published>2010-01-12T09:29:00.000-08:00</published><updated>2010-01-12T09:35:12.780-08:00</updated><title type='text'>Projeto VFP (Gratuito)</title><content type='html'>Se você tem interesse em participar - gratuitamente - da criação de um projeto em VFP,&lt;br /&gt;acesse o seguinte link:&lt;br /&gt;&lt;a href="http://programacaobrasil.5forum.info/-f22/"&gt;http://programacaobrasil.5forum.info/-f22/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-5454454867337587470?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/5454454867337587470/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2010/01/projeto-vfp-gratuito.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5454454867337587470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5454454867337587470'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2010/01/projeto-vfp-gratuito.html' title='Projeto VFP (Gratuito)'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-4117713512606944237</id><published>2009-12-16T12:40:00.000-08:00</published><updated>2009-12-16T12:45:31.341-08:00</updated><title type='text'>BR Office Calc</title><content type='html'>Segue um modelo simples para manipulação de arquivos do BR Office.&lt;br /&gt;Para ilustração dos recursos que podem ser utilizados, segue em anexo duas classes.&lt;br /&gt;&lt;br /&gt;A primeira, "&lt;strong&gt;brcalcfiles&lt;/strong&gt;" mostra como manipular planilhas através do BR Office.&lt;br /&gt;A segunda, "&lt;strong&gt;brofficefiles&lt;/strong&gt;" mostra algumas opções, tais como converter para PDF, HTML e outros...&lt;br /&gt;&lt;br /&gt;Havendo alguma mudança na classe, favor postá-la(s) neste fórum para que nossos colegas tomem conhecimento.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/96375741/382b11ff/BROffice.html" target="_blank"&gt;Para obter o arquivo, clique aqui!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Só um lembrete: O BR office deverá está instalado!&lt;br /&gt;&lt;br /&gt;Segue um exemplo de como utilizá-la:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;CLEAR ALL&lt;br /&gt;WAIT "Aguarde..." WINDOW NOWAIT NOCLEAR&lt;br /&gt;m.obj = NEWOBJECT("brcalcfiles")&lt;br /&gt;m.obj.openfile("f:\nov-2008.xls")&lt;br /&gt;m.obj.exporthtml("f:\teste.html")&lt;br /&gt;m.obj.closefile()&lt;br /&gt;m.obj = NULL&lt;br /&gt;WAIT CLEAR&lt;/span&gt;&lt;/blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-4117713512606944237?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/4117713512606944237/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/12/br-office-calc.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/4117713512606944237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/4117713512606944237'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/12/br-office-calc.html' title='BR Office Calc'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-9009163487925089319</id><published>2009-10-27T12:53:00.000-07:00</published><updated>2009-10-27T12:54:09.877-07:00</updated><title type='text'>Google + API + Foxpro</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Google Tradutor:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://programacaobrasil.5forum.info/visual-foxpro-f4/vfp-translator-t382.htm"&gt;http://programacaobrasil.5forum.info/visual-foxpro-f4/vfp-translator-t382.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Google Maps&lt;/span&gt;&lt;br /&gt;&lt;a href="http://programacaobrasil.5forum.info/visual-foxpro-f4/google-maps-t384.htm"&gt;http://programacaobrasil.5forum.info/visual-foxpro-f4/google-maps-t384.htm&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-9009163487925089319?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/9009163487925089319/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/10/google-api-foxpro.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/9009163487925089319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/9009163487925089319'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/10/google-api-foxpro.html' title='Google + API + Foxpro'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-2754854246479413936</id><published>2009-09-17T10:41:00.000-07:00</published><updated>2009-09-17T10:42:31.700-07:00</updated><title type='text'>Países do Banco Central do Brasil</title><content type='html'>Segue o link para download do arquivo:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/133392686/784322f6/paisBACEN.html"&gt;http://www.4shared.com/file/133392686/784322f6/paisBACEN.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-2754854246479413936?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/2754854246479413936/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/09/paises-do-banco-central-do-brasil.html#comment-form' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2754854246479413936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2754854246479413936'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/09/paises-do-banco-central-do-brasil.html' title='Países do Banco Central do Brasil'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-5502070832569330182</id><published>2009-08-12T13:05:00.000-07:00</published><updated>2009-08-12T13:10:52.035-07:00</updated><title type='text'>Help x Visual Foxpro</title><content type='html'>Crie Help's no Visual Foxpro utilizando o [b]Microsoft HTML Workshop[/b].&lt;br /&gt;&lt;br /&gt;Segue o link de um projeto para demonstração:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/124639625/dfd4abc5/help.html"&gt;http://www.4shared.com/file/124639625/dfd4abc5/help.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Segue o link de um tutorial:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/124639847/6d1e4065/helps.html"&gt;http://www.4shared.com/file/124639847/6d1e4065/helps.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fonte:&lt;br /&gt;&lt;a href="http://br.groups.yahoo.com/group/visual_foxfonte/"&gt;http://br.groups.yahoo.com/group/visual_foxfonte/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-5502070832569330182?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/5502070832569330182/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/08/help-x-visual-foxpro.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5502070832569330182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5502070832569330182'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/08/help-x-visual-foxpro.html' title='Help x Visual Foxpro'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-2459747646303014643</id><published>2009-08-06T19:00:00.000-07:00</published><updated>2011-01-25T10:29:23.444-08:00</updated><title type='text'>Enviando emails com winsock</title><content type='html'>Segue uma ótima rotina encontrada no site &lt;a target='_blank' href="http://www.xfrx.net/vfpWinsock/"&gt;http://www.xfrx.net/vfpWinsock/&lt;/a&gt;&lt;br /&gt;Para download do arquivo, basta clicar no seguinte link:&lt;br /&gt;&lt;a target='_blank' href="http://www.4shared.com/file/123451622/832b7cac/VFPwinsock.html"&gt;http://www.4shared.com/file/123451622/832b7cac/VFPwinsock.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Se preferir, você pode acessar também a página oficial no seguinte endereço:&lt;br /&gt;&lt;strike&gt;&lt;a target='_blank' href="http://www.xfrx.net/vfpWinsock/SendMaildownload_e.asp"&gt;http://www.xfrx.net/vfpWinsock/SendMaildownload_e.asp&lt;/a&gt;&lt;/strike&gt;&lt;br /&gt;&lt;br /&gt;Para exemplos de como utilizar a rotina acesso o link abaixo:&lt;br /&gt;&lt;strike&gt;&lt;a target='_blank' href="http://www.xfrx.net/vfpWinsock/SendMailexemples_e.asp"&gt;http://www.xfrx.net/vfpWinsock/SendMailexemples_e.asp&lt;/a&gt;&lt;/strike&gt;&lt;br /&gt;&lt;br /&gt;Esta rotina funcionará em máquina que não têm o fox instalado, apenas se a seguinte chave estiver incluída no registro:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;[HKEY_CLASSES_ROOT\Licenses\2c49f800-c2dd-11cf-9ad6-0080c7e7b78d]&lt;br /&gt;@="mlrljgrlhltlngjlthrligklpkrhllglqlrk"&lt;br /&gt;&lt;br /&gt;A chave poderá ser adicionada manualmente, ou se preferir, baixe o arquivo contido no link abaixo e execute na máquina que utilizará esta rotina:&lt;br /&gt;&lt;a target='_blank' href="http://www.4shared.com/file/124205380/c57df255/HabilitarWinsock.html"&gt;http://www.4shared.com/file/124205380/c57df255/HabilitarWinsock.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Esta dica foi encontrada no seguinte link:&lt;br /&gt;&lt;a target='_blank' href="http://forums.devx.com/archive/index.php/t-75785.html"&gt;http://forums.devx.com/archive/index.php/t-75785.html&lt;/a&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Link de exemplos (similar): (Adicionado em 25/01/2011)&lt;/b&gt;&lt;br /&gt;&lt;a target='_blank' href='http://www.vfpwinsock.com/exemples.asp'&gt;http://www.vfpwinsock.com/exemples.asp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-2459747646303014643?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/2459747646303014643/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/08/enviando-emails-com-winsock.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2459747646303014643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2459747646303014643'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/08/enviando-emails-com-winsock.html' title='Enviando emails com winsock'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-7942447117672146525</id><published>2009-08-06T18:21:00.000-07:00</published><updated>2009-08-06T18:31:45.712-07:00</updated><title type='text'>Form Transparente</title><content type='html'>Segue um exemplo de transparência num form.&lt;br /&gt;&lt;a href="http://www.4shared.com/file/123444365/75563762/FormTransparente.html"&gt;&lt;/a&gt;&lt;a href="http://www.4shared.com/file/123445863/28dc1ad3/FormTransparente.html"&gt;http://www.4shared.com/file/123445863/28dc1ad3/FormTransparente.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-7942447117672146525?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/7942447117672146525/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/08/form-transparente.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/7942447117672146525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/7942447117672146525'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/08/form-transparente.html' title='Form Transparente'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-6941419783691492938</id><published>2009-07-09T19:51:00.000-07:00</published><updated>2009-07-09T19:55:34.123-07:00</updated><title type='text'>Criptografia</title><content type='html'>Classe muito boa para criptografia, utilizando o &lt;span style="font-weight: bold;"&gt;Blowfish&lt;/span&gt;:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/117088608/35011ded/blowfish.html"&gt;http://www.4shared.com/file/117088608/35011ded/blowfish.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Classe muito boa para criptografia, utilizando o &lt;span style="font-weight: bold;"&gt;MD5&lt;/span&gt;:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/117088768/6299d05c/md5.html"&gt;http://www.4shared.com/file/117088768/6299d05c/md5.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-6941419783691492938?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/6941419783691492938/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/07/criptografia.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6941419783691492938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6941419783691492938'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/07/criptografia.html' title='Criptografia'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-5174281072501771162</id><published>2009-05-27T11:45:00.000-07:00</published><updated>2009-05-27T11:58:20.124-07:00</updated><title type='text'>Atualização para VFP 9.0 SP2</title><content type='html'>Segue um link para download de uma atualização que corrige alguns problemas existentes no VFP 9.0 SP2.&lt;br /&gt;Após baixar o arquivo zipado, descompacte-o e cole os arquivos na pasta de instalação do Visual Foxpro 9.0, substituindo os existentes.&lt;br /&gt;&lt;br /&gt;Clique no link abaixo para baixar a atualização:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/108183501/68243fc3/VFP90SP2-KB968409-ENU.html"&gt;http://www.4shared.com/file/108183501/68243fc3/VFP90SP2-KB968409-ENU.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-5174281072501771162?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/5174281072501771162/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/atualizacao-para-vfp-90-sp2.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5174281072501771162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/5174281072501771162'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/atualizacao-para-vfp-90-sp2.html' title='Atualização para VFP 9.0 SP2'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-3241207841810545511</id><published>2009-05-20T06:33:00.001-07:00</published><updated>2009-05-20T06:33:35.381-07:00</updated><title type='text'>ZIP X VFP</title><content type='html'>Uma ótima rotina para manipulação de arquivos zipados:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/106612062/592a45e5/Zip.html"&gt;http://www.4shared.com/file/106612062/592a45e5/Zip.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-3241207841810545511?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/3241207841810545511/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/zip-x-vfp.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3241207841810545511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3241207841810545511'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/zip-x-vfp.html' title='ZIP X VFP'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-6060732850948794008</id><published>2009-05-20T06:16:00.001-07:00</published><updated>2009-05-20T06:16:46.584-07:00</updated><title type='text'>FoxTray</title><content type='html'>Exemplo utilizando FoxTray:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/106607615/863ce3b1/FoxTray.html"&gt;http://www.4shared.com/file/106607615/863ce3b1/FoxTray.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-6060732850948794008?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/6060732850948794008/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/foxtray.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6060732850948794008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6060732850948794008'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/foxtray.html' title='FoxTray'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-3660110840539482184</id><published>2009-05-20T05:57:00.000-07:00</published><updated>2009-05-20T05:58:56.841-07:00</updated><title type='text'>EXE X VFP</title><content type='html'>Abrindo aplicações externas com o VFP:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/106601910/d8610fdf/exewindows.html"&gt;http://www.4shared.com/file/106601910/d8610fdf/exewindows.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fechando aplicações externas com o VFP:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/106604087/afc8ea88/killprocess.html"&gt;http://www.4shared.com/file/106604087/afc8ea88/killprocess.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-3660110840539482184?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/3660110840539482184/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/exe-x-vfp.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3660110840539482184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3660110840539482184'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/05/exe-x-vfp.html' title='EXE X VFP'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-6416140252567673725</id><published>2009-04-28T05:52:00.000-07:00</published><updated>2009-12-07T10:21:38.711-08:00</updated><title type='text'>Gerando Código de Barras</title><content type='html'>Segue um exemplo prático de como gerar alguns modelos de código de barras.&lt;br /&gt;&lt;br /&gt;Download no link abaixo:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/102203987/52108fbb/barras.html"&gt;http://www.4shared.com/file/102203987/52108fbb/barras.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Clique no link baixo para baixar a fonte Barra Biro para impressão de códigos de barra em pdf:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/167399045/22dced84/BarrasBiroPdf.html"&gt;http://www.4shared.com/file/167399045/22dced84/BarrasBiroPdf.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-6416140252567673725?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/6416140252567673725/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/gerando-codigo-de-barras.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6416140252567673725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6416140252567673725'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/gerando-codigo-de-barras.html' title='Gerando Código de Barras'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-3632426272339514397</id><published>2009-04-23T07:52:00.000-07:00</published><updated>2009-04-23T07:54:22.146-07:00</updated><title type='text'>Downloads via HTTP, HTTPS, FTP e FTPS.</title><content type='html'>A VFPCONNECTION.FLL é ótima para downloads via HTTP, HTTPS, FTP&lt;br /&gt;e FTPS.&lt;br /&gt;&lt;br /&gt;Clique no link abaixo para baixá-la juntamente com um exemplo:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/101290564/72cddde9/VFPCONNECTION.html"&gt;http://www.4shared.com/file/101290564/72cddde9/VFPCONNECTION.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-3632426272339514397?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/3632426272339514397/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/downloads-via-http-https-ftp-e-ftps.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3632426272339514397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3632426272339514397'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/downloads-via-http-https-ftp-e-ftps.html' title='Downloads via HTTP, HTTPS, FTP e FTPS.'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-4982481513198087427</id><published>2009-04-07T09:18:00.001-07:00</published><updated>2010-04-14T05:56:04.572-07:00</updated><title type='text'>Tabela de Cidades do IBGE 2009</title><content type='html'>Clique no link abaixo para obter o arquivo:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Opção 1:&lt;/b&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/97268640/eccf6222/TabelaCidadesIBGE2009.html"&gt;http://www.4shared.com/file/97268640/eccf6222/TabelaCidadesIBGE2009.html&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Opção 2:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://www.4shared.com/file/uRr04Zq6/codcepibge.html"&gt;http://www.4shared.com/file/uRr04Zq6/codcepibge.html&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-4982481513198087427?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/4982481513198087427/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/tabela-de-cidades-do-ibge-2009.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/4982481513198087427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/4982481513198087427'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/tabela-de-cidades-do-ibge-2009.html' title='Tabela de Cidades do IBGE 2009'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-7937968074995876965</id><published>2009-04-01T11:47:00.000-07:00</published><updated>2009-04-01T11:51:06.982-07:00</updated><title type='text'>REFOX</title><content type='html'>Decompile aplicaçãoes feitas com o Fox.&lt;br /&gt;Este software é muito bom, e permite que você proteja sua aplicação até dele mesmo.&lt;br /&gt;&lt;br /&gt;Link para download:&lt;br /&gt;&lt;a href="http://www.4shared.com/file/59629626/82cb8d30/Refox10.html?s=1"&gt;http://www.4shared.com/file/59629626/82cb8d30/Refox10.html?s=1&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-7937968074995876965?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/7937968074995876965/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/refox.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/7937968074995876965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/7937968074995876965'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/04/refox.html' title='REFOX'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-8837949592762534408</id><published>2009-03-31T19:32:00.001-07:00</published><updated>2010-03-02T09:31:26.217-08:00</updated><title type='text'>Programação Brasil</title><content type='html'>&lt;div&gt;&lt;div&gt;Não deixe de participar do Programação Brasil.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Um site com recursos diversos para profissionais e estudantes na área de informática e tecnologia.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;O cadastro é gratuito e o usuário tem seu acesso ativado em menos de 24hs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Acesse e confira:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.programacaobrasil.com/"&gt;http://www.programacaobrasil.com&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-8837949592762534408?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/8837949592762534408/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/forum-programacao-brasil.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/8837949592762534408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/8837949592762534408'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/forum-programacao-brasil.html' title='Programação Brasil'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-1642747052171381784</id><published>2009-03-26T06:46:00.000-07:00</published><updated>2010-03-03T08:18:10.702-08:00</updated><title type='text'>CEP's</title><content type='html'>Segue abaixo o link para download de todos (ou quase todos) os CEP's do Brasil.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Atualizada (03/03/2010):&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://www.4shared.com/file/233535728/5c65728c/CEPs.html"&gt;http://www.4shared.com/file/233535728/5c65728c/CEPs.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Março (2009):&lt;/b&gt;&lt;/div&gt;&lt;a href="http://www.4shared.com/file/95093893/45f0c02d/CEPs-Brasil.html"&gt;http://www.4shared.com/file/95093893/45f0c02d/CEPs-Brasil.html&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/4864758783979232683-1642747052171381784?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/1642747052171381784/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/ceps.html#comment-form' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/1642747052171381784'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/1642747052171381784'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/ceps.html' title='CEP&apos;s'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-1893618237038717287</id><published>2009-03-12T14:36:00.000-07:00</published><updated>2009-11-10T05:47:40.331-08:00</updated><title type='text'>Dlls X Foxpro</title><content type='html'>Segue abaixo os links para downloads das dll's necessárias para o bom funcionamento das aplicações feitas em quase todas as versões do Foxpro:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Versão&lt;/strong&gt;&lt;strong&gt; 5.0&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://rapidshare.de/files/46043950/VFP50_DLL_files.rar.html" title="http://rapidshare.de/files/46043950/VFP50_DLL_files.rar.html" target="_blank"&gt;&lt;/a&gt;&lt;a href="http://www.4shared.com/file/102071565/7e668fed/VFP50_DLL_files.html"&gt;http://www.4shared.com/file/102071565/7e668fed/VFP50_DLL_files.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Versão&lt;/strong&gt;&lt;strong&gt; 6.0&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://rapidshare.de/files/46039758/VFP6RUN.zip.html" title="http://rapidshare.de/files/46039758/VFP6RUN.zip.html" target="_blank"&gt;&lt;/a&gt;&lt;a href="http://www.4shared.com/file/102069448/cbf7faba/VFP6RUN.html"&gt;http://www.4shared.com/file/102069448/cbf7faba/VFP6RUN.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Versão 7.0&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/102068764/4a8d0d2f/VFP7run.html" title="http://rapidshare.de/files/46043151/VFP7run.zip.html" target="_blank"&gt;http://www.4shared.com/file/102068764/4a8d0d2f/VFP7run.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Versão 8.0&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/102068179/29aa3c61/vfp8run.html" title="http://rapidshare.de/files/46043194/vfp8run.zip.html" target="_blank"&gt;http://www.4shared.com/file/102068179/29aa3c61/vfp8run.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Versão&lt;/strong&gt;&lt;span style="font-weight: bold;"&gt; 9.0 (&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;DLLs)&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); white-space: pre;font-family:Arial;" &gt;&lt;br /&gt;&lt;a href="http://www.4shared.com/file/98036560/4f009758/VFP9_DLL.html"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;http://www.4shared.com/file/98036560/4f009758/VFP9_DLL.html&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;Versão&lt;/strong&gt;&lt;span style="font-weight: bold;"&gt; 9.0 (&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Runtime&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;)&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.4shared.com/file/149572727/33b59bf6/runtime_vfp9.html"&gt;http://www.4shared.com/file/149572727/33b59bf6/runtime_vfp9.html&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-1893618237038717287?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/1893618237038717287/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/dlls-x-foxpro.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/1893618237038717287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/1893618237038717287'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/dlls-x-foxpro.html' title='Dlls X Foxpro'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-2927360976604614288</id><published>2009-03-03T07:50:00.000-08:00</published><updated>2009-04-08T04:19:26.432-07:00</updated><title type='text'>MYSQL X Visual Foxpro</title><content type='html'>Precisando realizar acessos a banco de dados MySQL, através do Visual Foxpro?&lt;br /&gt;O link abaixo disponibiliza a solução que você precisa.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;INSERT &lt;/li&gt;&lt;li&gt;UPDATE&lt;/li&gt;&lt;li&gt;DELETE&lt;/li&gt;&lt;li&gt;BROWSE&lt;/li&gt;&lt;/ul&gt;Link do Arquivo:&lt;span class="Apple-style-span" style="font-family: Arial; white-space: pre; "&gt;&lt;a href="http://www.4shared.com/file/97400634/384e0eae/acessomysql.html"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; white-space: pre; "&gt;&lt;a href="http://www.4shared.com/file/97400634/384e0eae/acessomysql.html"&gt;http://www.4shared.com/file/97400634/384e0eae/acessomysql.html&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-2927360976604614288?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/2927360976604614288/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/mysql-x-visual-foxpro.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2927360976604614288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/2927360976604614288'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/mysql-x-visual-foxpro.html' title='MYSQL X Visual Foxpro'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-3024234288069175925</id><published>2009-03-03T07:44:00.000-08:00</published><updated>2009-04-11T19:52:12.975-07:00</updated><title type='text'>PING</title><content type='html'>Precisando verificar se um IP está disponível em uma rede local?&lt;br /&gt;Com este arquivo você poderá simular o &lt;span style="font-weight: bold;"&gt;ping&lt;/span&gt; do Prompt de Comando.&lt;br /&gt;&lt;br /&gt;Link do arquivo:&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(85, 26, 139); text-decoration: underline;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Arial; white-space: pre; "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;a href="http://www.4shared.com/file/98037371/9d2d8d58/pingPRG.html"&gt;http://www.4shared.com/file/98037371/9d2d8d58/pingPRG.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-3024234288069175925?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/3024234288069175925/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/ping.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3024234288069175925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/3024234288069175925'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/ping.html' title='PING'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4864758783979232683.post-6249048548959341852</id><published>2009-03-03T07:35:00.000-08:00</published><updated>2009-04-11T19:54:29.772-07:00</updated><title type='text'>FTP</title><content type='html'>Uma classe completa de acesso a FTP disponibilizando as seguintes funções:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Listar o diretório posicionado&lt;/li&gt;&lt;li&gt;Criar diretórios&lt;/li&gt;&lt;li&gt;Remover Diretórios&lt;/li&gt;&lt;li&gt;Criar Arquivos&lt;/li&gt;&lt;li&gt;Renomear Arquivos&lt;/li&gt;&lt;li&gt;Apagar Arquivos&lt;/li&gt;&lt;li&gt;Enviar Arquivos&lt;/li&gt;&lt;li&gt;Baixar Arquivos&lt;/li&gt;&lt;/ul&gt;Link do Arquivo:&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(85, 26, 139); text-decoration: underline;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Arial; white-space: pre; "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;a href="http://www.4shared.com/file/98037645/b7a6d869/ftp.html"&gt;http://www.4shared.com/file/98037645/b7a6d869/ftp.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4864758783979232683-6249048548959341852?l=vfpbrasil.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vfpbrasil.blogspot.com/feeds/6249048548959341852/comments/default' title='Enviar comentários'/><link rel='replies' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/ftp.html#comment-form' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6249048548959341852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4864758783979232683/posts/default/6249048548959341852'/><link rel='alternate' type='text/html' href='http://vfpbrasil.blogspot.com/2009/03/ftp.html' title='FTP'/><author><name>Administrador</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry></feed>
