<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comentários sobre: Segurança &#8211; Quebrando senhas de projetos VBA do Microsoft Office</title>
	<atom:link href="http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/feed" rel="self" type="application/rss+xml" />
	<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office</link>
	<description>Notícias e Dicas sobre Tecnologia, Educação, Desenvolvimento, Web e Baboseiras em geral</description>
	<lastBuildDate>Sat, 21 Jan 2012 19:05:57 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Por: Tomás Vásquez</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13942</link>
		<dc:creator>Tomás Vásquez</dc:creator>
		<pubDate>Sat, 21 Jan 2012 19:05:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13942</guid>
		<description>Olá Wesley,

Excelente dica! Obrigado por compartilhar!

Abraços
Tomás</description>
		<content:encoded><![CDATA[<p>Olá Wesley,</p>
<p>Excelente dica! Obrigado por compartilhar!</p>
<p>Abraços<br />
Tomás</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: WesleyRufino</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13941</link>
		<dc:creator>WesleyRufino</dc:creator>
		<pubDate>Sat, 21 Jan 2012 14:07:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13941</guid>
		<description>A senha do projeto VBA podem ser removidas com um editor hexadecimal.  Feche o livro e abra o arquivo pasta de trabalho no editor hexadecimal.  Encontrar a string &quot;DPB&quot; e mude para &quot;DPX&quot;.  Salve o arquivo.  Abra o livro e clique em OK até que a pasta de trabalho está aberto (uma ou mais caixas de diálogo são exibidas descrevendo vários problemas com o projeto VBA).  Pressione ALT + F11, escolha o menu Ferramentas-&gt; comando Propriedades VBAProject, navegue até a guia Proteção, e alterar a senha, mas não removê-lo (note a nova senha).  Salve, feche e abra novamente a pasta de trabalho.  Pressione ALT + F11 e digite a nova senha.  Escolha Ferramentas-&gt; Propriedades VBAProject, navegue até a guia Proteção e remover a senha.  Guarde o livro.</description>
		<content:encoded><![CDATA[<p>A senha do projeto VBA podem ser removidas com um editor hexadecimal.  Feche o livro e abra o arquivo pasta de trabalho no editor hexadecimal.  Encontrar a string &#8220;DPB&#8221; e mude para &#8220;DPX&#8221;.  Salve o arquivo.  Abra o livro e clique em OK até que a pasta de trabalho está aberto (uma ou mais caixas de diálogo são exibidas descrevendo vários problemas com o projeto VBA).  Pressione ALT + F11, escolha o menu Ferramentas-&gt; comando Propriedades VBAProject, navegue até a guia Proteção, e alterar a senha, mas não removê-lo (note a nova senha).  Salve, feche e abra novamente a pasta de trabalho.  Pressione ALT + F11 e digite a nova senha.  Escolha Ferramentas-&gt; Propriedades VBAProject, navegue até a guia Proteção e remover a senha.  Guarde o livro.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: brunoclc</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13613</link>
		<dc:creator>brunoclc</dc:creator>
		<pubDate>Mon, 07 Mar 2011 04:50:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13613</guid>
		<description>rbortone

Por destino ou conhecidência, o seu codigo era o que eu estava procurando... e como eu uso o Excel x64 tive q adpatar o código mas, o que aconteceu aqui foi o seguinte, todas as &quot;(aspas) e &#039;(apostrofes) tiveram q ser substituidos, pois estavam em um padrão diferente do VBA e a string &quot;ThisWorkbook.Close SaveChanges:=False&quot; da SUB programRights deve vir abaixo do evento &quot;Case Else&quot; assim:

Sub ProgramRights()
Dim NameofUser As String
NameofUser = UserName
Select Case NameofUser
Case Is = &quot;Bruno&quot;
MsgBox &quot;Planilha LIberada pra este Computador&quot;
Case Else
MsgBox &quot;Planilha NÃO Liberada para este Computador&quot;
ThisWorkbook.Close SaveChanges:=False
End Select

End Sub


Caso contrário o arquivo fecha do mesmo jeito.

e para liberar basta colocar o nome do usuario (não do computador) na string Case Is = &quot;NOME DO USUARIO&quot;.

Mas ainda sim é muito falho, cada usuario tem uma identifição unica, uma chave no registro do tipo {A658-H545......} mas como só tenho um mes em VBA ainda não sei como acessar tal chave e compará-la.

Se alguem quiser dar um Help o Local da Chave é:

HKEY_CURRENT_USER\Identities\
Chave: Default UserID

Tomás, irei postar no forum mas como tá tarde, ou cedo, posto quando acordar! 

O Codigo completo com algumas melhorias tanto x86 como x64:


Option Explicit

Private Declare PtrSafe Function GetUserName Lib &quot;advapi32.dll&quot; _
Alias &quot;GetUserNameA&quot; (ByVal lpBuffer As String, nSize As Long) As Long

Private Declare PtrSafe Function GetComputerName Lib &quot;kernel32&quot; Alias _
&quot;GetComputerNameA&quot; (ByVal lpBuffer As String, ByRef nSize As Long) As Long

Private Declare PtrSafe Function lOpen Lib &quot;kernel32&quot; Alias &quot;_lopen&quot; _
(ByVal lpPathName As String, ByVal iReadWrite As Long) As Long

Private Declare PtrSafe Function lClose Lib &quot;kernel32&quot; _
Alias &quot;_lclose&quot; (ByVal hFile As Long) As Long

Private Declare PtrSafe Function DisplaySize Lib &quot;user32&quot; Alias _
&quot;GetSystemMetrics&quot; (ByVal nIndex As Long) As Long

Private Declare PtrSafe Function FindWindow Lib &quot;user32&quot; Alias &quot;FindWindowA&quot; _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Declare PtrSafe Function GetSystemMenu Lib &quot;user32&quot; _
(ByVal hwnd As Long, ByVal bRevert As Long) As Long

Private Const SC_CLOSE As Long = &amp;HF060
Private Const OF_SHARE_EXCLUSIVE = &amp;H10
Private Const SM_CXSCREEN = 0
Private Const SM_CYSCREEN = 1
Sub ComputerCheck()
Dim CompName As String
Dim UsrName As String
Dim Usuario As String

Usuario = Usuario:
CompName = ComputerName
UsrName = UserName
&#039; If CompName &quot;W7-NOT&quot; Then
&#039; MsgBox &quot;This application does not have the right to run on this computer.&quot;
&#039; ActiveWorkbook.Close SaveChanges:=False
&#039; End If
MsgBox Prompt:=CompName &amp; vbCrLf &amp; UsrName, Buttons:=vbOKOnly, Title:=&quot;Nome do Computador&quot;
End Sub
Private Function UserName() As String
Dim sName As String * 256
Dim cChars As Long
cChars = 256
If GetUserName(sName, cChars) Then
UserName = Left$(sName, cChars - 1)
End If
End Function
Sub ProgramRights()
Dim NameofUser As String
NameofUser = UserName
Select Case NameofUser
Case Is = &quot;Bruno&quot;
MsgBox &quot;Planilha LIberada pra este Computador&quot;
Case Else
MsgBox &quot;Planilha NÃO Liberada para este Computador&quot;
ThisWorkbook.Close SaveChanges:=False
End Select

End Sub
Private Function ComputerName() As String
Dim stBuff As String * 255, lAPIResult As Long
Dim lBuffLen As Long
lBuffLen = 255
lAPIResult = GetComputerName(stBuff, lBuffLen)
If lBuffLen &gt; 0 Then ComputerName = Left(stBuff, lBuffLen)
End Function</description>
		<content:encoded><![CDATA[<p>rbortone</p>
<p>Por destino ou conhecidência, o seu codigo era o que eu estava procurando&#8230; e como eu uso o Excel x64 tive q adpatar o código mas, o que aconteceu aqui foi o seguinte, todas as &#8220;(aspas) e &#8216;(apostrofes) tiveram q ser substituidos, pois estavam em um padrão diferente do VBA e a string &#8220;ThisWorkbook.Close SaveChanges:=False&#8221; da SUB programRights deve vir abaixo do evento &#8220;Case Else&#8221; assim:</p>
<p>Sub ProgramRights()<br />
Dim NameofUser As String<br />
NameofUser = UserName<br />
Select Case NameofUser<br />
Case Is = &#8220;Bruno&#8221;<br />
MsgBox &#8220;Planilha LIberada pra este Computador&#8221;<br />
Case Else<br />
MsgBox &#8220;Planilha NÃO Liberada para este Computador&#8221;<br />
ThisWorkbook.Close SaveChanges:=False<br />
End Select</p>
<p>End Sub</p>
<p>Caso contrário o arquivo fecha do mesmo jeito.</p>
<p>e para liberar basta colocar o nome do usuario (não do computador) na string Case Is = &#8220;NOME DO USUARIO&#8221;.</p>
<p>Mas ainda sim é muito falho, cada usuario tem uma identifição unica, uma chave no registro do tipo {A658-H545&#8230;&#8230;} mas como só tenho um mes em VBA ainda não sei como acessar tal chave e compará-la.</p>
<p>Se alguem quiser dar um Help o Local da Chave é:</p>
<p>HKEY_CURRENT_USER\Identities\<br />
Chave: Default UserID</p>
<p>Tomás, irei postar no forum mas como tá tarde, ou cedo, posto quando acordar! </p>
<p>O Codigo completo com algumas melhorias tanto x86 como x64:</p>
<p>Option Explicit</p>
<p>Private Declare PtrSafe Function GetUserName Lib &#8220;advapi32.dll&#8221; _<br />
Alias &#8220;GetUserNameA&#8221; (ByVal lpBuffer As String, nSize As Long) As Long</p>
<p>Private Declare PtrSafe Function GetComputerName Lib &#8220;kernel32&#8243; Alias _<br />
&#8220;GetComputerNameA&#8221; (ByVal lpBuffer As String, ByRef nSize As Long) As Long</p>
<p>Private Declare PtrSafe Function lOpen Lib &#8220;kernel32&#8243; Alias &#8220;_lopen&#8221; _<br />
(ByVal lpPathName As String, ByVal iReadWrite As Long) As Long</p>
<p>Private Declare PtrSafe Function lClose Lib &#8220;kernel32&#8243; _<br />
Alias &#8220;_lclose&#8221; (ByVal hFile As Long) As Long</p>
<p>Private Declare PtrSafe Function DisplaySize Lib &#8220;user32&#8243; Alias _<br />
&#8220;GetSystemMetrics&#8221; (ByVal nIndex As Long) As Long</p>
<p>Private Declare PtrSafe Function FindWindow Lib &#8220;user32&#8243; Alias &#8220;FindWindowA&#8221; _<br />
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long</p>
<p>Private Declare PtrSafe Function GetSystemMenu Lib &#8220;user32&#8243; _<br />
(ByVal hwnd As Long, ByVal bRevert As Long) As Long</p>
<p>Private Const SC_CLOSE As Long = &amp;HF060<br />
Private Const OF_SHARE_EXCLUSIVE = &amp;H10<br />
Private Const SM_CXSCREEN = 0<br />
Private Const SM_CYSCREEN = 1<br />
Sub ComputerCheck()<br />
Dim CompName As String<br />
Dim UsrName As String<br />
Dim Usuario As String</p>
<p>Usuario = Usuario:<br />
CompName = ComputerName<br />
UsrName = UserName<br />
&#8216; If CompName &#8220;W7-NOT&#8221; Then<br />
&#8216; MsgBox &#8220;This application does not have the right to run on this computer.&#8221;<br />
&#8216; ActiveWorkbook.Close SaveChanges:=False<br />
&#8216; End If<br />
MsgBox Prompt:=CompName &amp; vbCrLf &amp; UsrName, Buttons:=vbOKOnly, Title:=&#8221;Nome do Computador&#8221;<br />
End Sub<br />
Private Function UserName() As String<br />
Dim sName As String * 256<br />
Dim cChars As Long<br />
cChars = 256<br />
If GetUserName(sName, cChars) Then<br />
UserName = Left$(sName, cChars &#8211; 1)<br />
End If<br />
End Function<br />
Sub ProgramRights()<br />
Dim NameofUser As String<br />
NameofUser = UserName<br />
Select Case NameofUser<br />
Case Is = &#8220;Bruno&#8221;<br />
MsgBox &#8220;Planilha LIberada pra este Computador&#8221;<br />
Case Else<br />
MsgBox &#8220;Planilha NÃO Liberada para este Computador&#8221;<br />
ThisWorkbook.Close SaveChanges:=False<br />
End Select</p>
<p>End Sub<br />
Private Function ComputerName() As String<br />
Dim stBuff As String * 255, lAPIResult As Long<br />
Dim lBuffLen As Long<br />
lBuffLen = 255<br />
lAPIResult = GetComputerName(stBuff, lBuffLen)<br />
If lBuffLen &gt; 0 Then ComputerName = Left(stBuff, lBuffLen)<br />
End Function</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Tomás Vásquez</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13560</link>
		<dc:creator>Tomás Vásquez</dc:creator>
		<pubDate>Sat, 05 Feb 2011 11:54:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13560</guid>
		<description>Colega,

O melhor lugar para esta dúvida é no nosso fórum:

www.tomasvasquez.com.br/forum

Nos vemos lá!
Abraços
Tomás</description>
		<content:encoded><![CDATA[<p>Colega,</p>
<p>O melhor lugar para esta dúvida é no nosso fórum:</p>
<p><a href="http://www.tomasvasquez.com.br/forum" rel="nofollow">http://www.tomasvasquez.com.br/forum</a></p>
<p>Nos vemos lá!<br />
Abraços<br />
Tomás</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: rbortone</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13559</link>
		<dc:creator>rbortone</dc:creator>
		<pubDate>Sat, 05 Feb 2011 11:05:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13559</guid>
		<description>Algúem poderia descobrir porque esta rotina VBA não funciona Ela é para instalar a PLANILHA somente em computadores identificados pelo nome ...ela identifica o nome : Cole esta rotina em um um módulo VBA e teste pela macro Sub ProgramRights
Option Explicit

Private Declare Function GetUserName Lib &quot;advapi32.dll&quot; _
    Alias &quot;GetUserNameA&quot; (ByVal lpBuffer As String, nSize As Long) As Long
Private Declare Function GetComputerName Lib &quot;kernel32&quot; Alias _
    &quot;GetComputerNameA&quot; (ByVal lpBuffer As String, ByRef nSize As Long) As Long
Private Declare Function lOpen Lib &quot;kernel32&quot; Alias &quot;_lopen&quot; _
    (ByVal lpPathName As String, ByVal iReadWrite As Long) As Long
Private Declare Function lClose Lib &quot;kernel32&quot; _
    Alias &quot;_lclose&quot; (ByVal hFile As Long) As Long
Private Declare Function DisplaySize Lib &quot;user32&quot; Alias _
    &quot;GetSystemMetrics&quot; (ByVal nIndex As Long) As Long
Private Declare Function FindWindow Lib &quot;user32&quot; Alias &quot;FindWindowA&quot; _
    (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetSystemMenu Lib &quot;user32&quot; _
    (ByVal hwnd As Long, ByVal bRevert As Long) As Long

Private Const SC_CLOSE As Long = &amp;HF060
Private Const OF_SHARE_EXCLUSIVE = &amp;H10
Private Const SM_CXSCREEN = 0
Private Const SM_CYSCREEN = 1

Sub ComputerCheck()
    Dim CompName As String
    
    CompName = ComputerName
   &#039; If CompName  &quot;W7-NOT&quot; Then
   &#039;     MsgBox &quot;This application does not have the right to run on this computer.&quot;
   &#039;     ActiveWorkbook.Close SaveChanges:=False
   &#039; End If
   MsgBox Prompt:=CompName, Buttons:=vbOKOnly, Title:=&quot;Computador Nome&quot;
End Sub
Private Function UserName() As String
    Dim sName As String * 256
    Dim cChars As Long
    
    cChars = 256
    If GetUserName(sName, cChars) Then
        UserName = Left$(sName, cChars - 1)
    End If
End Function

Sub ProgramRights()
    Dim NameofUser As String
    
    NameofUser = UserName
    Select Case NameofUser
    Case Is = &quot;W7-NOT&quot;
        MsgBox &quot;Planilha LIberada pra este Computador&quot;
    Case Else
        MsgBox &quot;Planilha NÃO Liberada para este Computador&quot;
    End Select
    ThisWorkbook.Close SaveChanges:=False
End Sub


Private Function ComputerName() As String
    Dim stBuff As String * 255, lAPIResult As Long
    Dim lBuffLen As Long
    
    lBuffLen = 255
    lAPIResult = GetComputerName(stBuff, lBuffLen)
    If lBuffLen &gt; 0 Then ComputerName = Left(stBuff, lBuffLen)
End Function

Se alguém descrobrir como fazê-la funcionar e publicar ai no blog, ficarei grato</description>
		<content:encoded><![CDATA[<p>Algúem poderia descobrir porque esta rotina VBA não funciona Ela é para instalar a PLANILHA somente em computadores identificados pelo nome &#8230;ela identifica o nome : Cole esta rotina em um um módulo VBA e teste pela macro Sub ProgramRights<br />
Option Explicit</p>
<p>Private Declare Function GetUserName Lib &#8220;advapi32.dll&#8221; _<br />
    Alias &#8220;GetUserNameA&#8221; (ByVal lpBuffer As String, nSize As Long) As Long<br />
Private Declare Function GetComputerName Lib &#8220;kernel32&#8243; Alias _<br />
    &#8220;GetComputerNameA&#8221; (ByVal lpBuffer As String, ByRef nSize As Long) As Long<br />
Private Declare Function lOpen Lib &#8220;kernel32&#8243; Alias &#8220;_lopen&#8221; _<br />
    (ByVal lpPathName As String, ByVal iReadWrite As Long) As Long<br />
Private Declare Function lClose Lib &#8220;kernel32&#8243; _<br />
    Alias &#8220;_lclose&#8221; (ByVal hFile As Long) As Long<br />
Private Declare Function DisplaySize Lib &#8220;user32&#8243; Alias _<br />
    &#8220;GetSystemMetrics&#8221; (ByVal nIndex As Long) As Long<br />
Private Declare Function FindWindow Lib &#8220;user32&#8243; Alias &#8220;FindWindowA&#8221; _<br />
    (ByVal lpClassName As String, ByVal lpWindowName As String) As Long<br />
Private Declare Function GetSystemMenu Lib &#8220;user32&#8243; _<br />
    (ByVal hwnd As Long, ByVal bRevert As Long) As Long</p>
<p>Private Const SC_CLOSE As Long = &amp;HF060<br />
Private Const OF_SHARE_EXCLUSIVE = &amp;H10<br />
Private Const SM_CXSCREEN = 0<br />
Private Const SM_CYSCREEN = 1</p>
<p>Sub ComputerCheck()<br />
    Dim CompName As String</p>
<p>    CompName = ComputerName<br />
   &#8216; If CompName  &#8220;W7-NOT&#8221; Then<br />
   &#8216;     MsgBox &#8220;This application does not have the right to run on this computer.&#8221;<br />
   &#8216;     ActiveWorkbook.Close SaveChanges:=False<br />
   &#8216; End If<br />
   MsgBox Prompt:=CompName, Buttons:=vbOKOnly, Title:=&#8221;Computador Nome&#8221;<br />
End Sub<br />
Private Function UserName() As String<br />
    Dim sName As String * 256<br />
    Dim cChars As Long</p>
<p>    cChars = 256<br />
    If GetUserName(sName, cChars) Then<br />
        UserName = Left$(sName, cChars &#8211; 1)<br />
    End If<br />
End Function</p>
<p>Sub ProgramRights()<br />
    Dim NameofUser As String</p>
<p>    NameofUser = UserName<br />
    Select Case NameofUser<br />
    Case Is = &#8220;W7-NOT&#8221;<br />
        MsgBox &#8220;Planilha LIberada pra este Computador&#8221;<br />
    Case Else<br />
        MsgBox &#8220;Planilha NÃO Liberada para este Computador&#8221;<br />
    End Select<br />
    ThisWorkbook.Close SaveChanges:=False<br />
End Sub</p>
<p>Private Function ComputerName() As String<br />
    Dim stBuff As String * 255, lAPIResult As Long<br />
    Dim lBuffLen As Long</p>
<p>    lBuffLen = 255<br />
    lAPIResult = GetComputerName(stBuff, lBuffLen)<br />
    If lBuffLen &gt; 0 Then ComputerName = Left(stBuff, lBuffLen)<br />
End Function</p>
<p>Se alguém descrobrir como fazê-la funcionar e publicar ai no blog, ficarei grato</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Blog &#8211; Os top 20 posts de 2010 &#124; Tomás Vásquez - Blog</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13458</link>
		<dc:creator>Blog &#8211; Os top 20 posts de 2010 &#124; Tomás Vásquez - Blog</dc:creator>
		<pubDate>Mon, 10 Jan 2011 16:11:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13458</guid>
		<description>[...] Segurança – Quebrando senhas de projetos VBA do Microsoft Office [...]</description>
		<content:encoded><![CDATA[<p>[...] Segurança – Quebrando senhas de projetos VBA do Microsoft Office [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Tomás Vásquez</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13379</link>
		<dc:creator>Tomás Vásquez</dc:creator>
		<pubDate>Tue, 16 Nov 2010 20:00:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13379</guid>
		<description>Grande White,

Sempre tem um jeito, não? Apesar da maioria achar que são artimanhas para desbloquear aplicativos, para mim são mais alertas para os desenvolvedores estarem atentos a essa realidade.

Valeu a colaboração
Abraços
Tomás</description>
		<content:encoded><![CDATA[<p>Grande White,</p>
<p>Sempre tem um jeito, não? Apesar da maioria achar que são artimanhas para desbloquear aplicativos, para mim são mais alertas para os desenvolvedores estarem atentos a essa realidade.</p>
<p>Valeu a colaboração<br />
Abraços<br />
Tomás</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: White</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-13378</link>
		<dc:creator>White</dc:creator>
		<pubDate>Sat, 13 Nov 2010 21:37:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-13378</guid>
		<description>Bom se o BrOffice que só desprotegia o VbProject do Excel da no que falar, imagine isto aqui:

http://mbfigueredo.blogspot.com/2010/11/vou-postar-aqui-uma-coisa-que-descobri.html</description>
		<content:encoded><![CDATA[<p>Bom se o BrOffice que só desprotegia o VbProject do Excel da no que falar, imagine isto aqui:</p>
<p><a href="http://mbfigueredo.blogspot.com/2010/11/vou-postar-aqui-uma-coisa-que-descobri.html" rel="nofollow">http://mbfigueredo.blogspot.com/2010/11/vou-postar-aqui-uma-coisa-que-descobri.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Tomás Vásquez</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-12767</link>
		<dc:creator>Tomás Vásquez</dc:creator>
		<pubDate>Thu, 22 Jul 2010 13:29:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-12767</guid>
		<description>Ozires,

Muitíssimo obrigado pelo seu relato. Ele com certeza é um alívio e prova de que as aplicações VBA podem e devem ser levadas a sério. Quanto a segurança, coloco sempre dicas, comentários, posts e tópicos no fórum sobre o assunto. Confira por exemplo estes dois:

http://www.tomasvasquez.com.br/blog/microsoft-office/vba-verificando-se-o-projeto-vbaproject-esta-protegido
http://www.tomasvasquez.com.br/blog/microsoft-office/vba-excluindo-um-modulo-vba-programaticamente

São artigos que impactam diretamente em técnicas de segurança para proteger seus projetos. Com o tempo, outros serão produzidos. Se quiser colaborar, será um honra tê-lo como autor de artigos.

Parabéns pelo blog!
Abraços
Tomás</description>
		<content:encoded><![CDATA[<p>Ozires,</p>
<p>Muitíssimo obrigado pelo seu relato. Ele com certeza é um alívio e prova de que as aplicações VBA podem e devem ser levadas a sério. Quanto a segurança, coloco sempre dicas, comentários, posts e tópicos no fórum sobre o assunto. Confira por exemplo estes dois:</p>
<p><a href="http://www.tomasvasquez.com.br/blog/microsoft-office/vba-verificando-se-o-projeto-vbaproject-esta-protegido" rel="nofollow">http://www.tomasvasquez.com.br/blog/microsoft-office/vba-verificando-se-o-projeto-vbaproject-esta-protegido</a><br />
<a href="http://www.tomasvasquez.com.br/blog/microsoft-office/vba-excluindo-um-modulo-vba-programaticamente" rel="nofollow">http://www.tomasvasquez.com.br/blog/microsoft-office/vba-excluindo-um-modulo-vba-programaticamente</a></p>
<p>São artigos que impactam diretamente em técnicas de segurança para proteger seus projetos. Com o tempo, outros serão produzidos. Se quiser colaborar, será um honra tê-lo como autor de artigos.</p>
<p>Parabéns pelo blog!<br />
Abraços<br />
Tomás</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Ozires</title>
		<link>http://www.tomasvasquez.com.br/blog/microsoft-office/vba/seguranca-quebrando-senhas-de-projetos-vba-do-microsoft-office/comment-page-1#comment-12766</link>
		<dc:creator>Ozires</dc:creator>
		<pubDate>Thu, 22 Jul 2010 12:18:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.tomasvasquez.com.br/blog/?p=380#comment-12766</guid>
		<description>Tomás e demais leitores deste blog.

Também faço algumas planilhas em excel utilizando VBA e a proteção destas planilhas me tem dado dor de cabeça. Também já conhecia como muitos alguns programas que tiram as senhas de diversos tipos de arquivos, os mais variados, mas desconhecia que o broffice fizesse isso, apesar de os ter usado por um tempo, com intuito de teste. Então agradeço o esclarecimento.
Quero também discordar de nosso amigo que acha que fazer alguns tipos de trabalho no excel não é profissional. Quero relatar um fato que aconteceu comigo, será rápido e ilustrará bem.
Um cliente procurava um programador para criar um soft para ele executar determinada atividade, pois não existe nada parecido no mercado. Após consultar um monte de gente, que cobravam caro e pediam muito tempo para entregar o programa pronto ele decidiu fechar com o cara que prometeu entregar mais rápido, já que ele tinha uma certa pressa, quero salientar que não era o mais barato. Após vencido o prazo dado o cara entregou uma versão para teste cheia de erros e incoerências. Um colega meu conversando com ele passou meu telefone e ele entrou em contato comigo. Meu conhecimento em programação é muito pouco, então indiquei um colega programador que me tira algumas dúvidas de vez em quando, mas deixei claro que se ele quisesse algo no excel que lhe atendesse eu faria em menos de 30 dias.
Após falar com esse meu colega programador os dois me ligaram. O colegar pra dizer que o que o cara queria fazer era impossível de fazer tão rápido e não seria nada barato, o cliente pra me perguntar por quanto eu o faria. Fechei o preço com ele e entreguei o &quot;programinha&quot; em 20 dias para ele fazer os primeiros testes. Após algumas correções rápidas sugeridas por ele estava pronto, e a contento. Ele o utiliza até hoje e já me indicou vários outros clientes.

Voltando ao assunto principal seria muito mais interessante para todos se ao invés de você só mostrar as falhas desse umas dicas para como melhor se proteger. Fica aqui a dica e garanto que será um post bem mais visitado e comentado.

Até outra oportunidade!!!</description>
		<content:encoded><![CDATA[<p>Tomás e demais leitores deste blog.</p>
<p>Também faço algumas planilhas em excel utilizando VBA e a proteção destas planilhas me tem dado dor de cabeça. Também já conhecia como muitos alguns programas que tiram as senhas de diversos tipos de arquivos, os mais variados, mas desconhecia que o broffice fizesse isso, apesar de os ter usado por um tempo, com intuito de teste. Então agradeço o esclarecimento.<br />
Quero também discordar de nosso amigo que acha que fazer alguns tipos de trabalho no excel não é profissional. Quero relatar um fato que aconteceu comigo, será rápido e ilustrará bem.<br />
Um cliente procurava um programador para criar um soft para ele executar determinada atividade, pois não existe nada parecido no mercado. Após consultar um monte de gente, que cobravam caro e pediam muito tempo para entregar o programa pronto ele decidiu fechar com o cara que prometeu entregar mais rápido, já que ele tinha uma certa pressa, quero salientar que não era o mais barato. Após vencido o prazo dado o cara entregou uma versão para teste cheia de erros e incoerências. Um colega meu conversando com ele passou meu telefone e ele entrou em contato comigo. Meu conhecimento em programação é muito pouco, então indiquei um colega programador que me tira algumas dúvidas de vez em quando, mas deixei claro que se ele quisesse algo no excel que lhe atendesse eu faria em menos de 30 dias.<br />
Após falar com esse meu colega programador os dois me ligaram. O colegar pra dizer que o que o cara queria fazer era impossível de fazer tão rápido e não seria nada barato, o cliente pra me perguntar por quanto eu o faria. Fechei o preço com ele e entreguei o &#8220;programinha&#8221; em 20 dias para ele fazer os primeiros testes. Após algumas correções rápidas sugeridas por ele estava pronto, e a contento. Ele o utiliza até hoje e já me indicou vários outros clientes.</p>
<p>Voltando ao assunto principal seria muito mais interessante para todos se ao invés de você só mostrar as falhas desse umas dicas para como melhor se proteger. Fica aqui a dica e garanto que será um post bem mais visitado e comentado.</p>
<p>Até outra oportunidade!!!</p>
]]></content:encoded>
	</item>
</channel>
</rss>

