USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  Visual Basic    (Arquivos/Diretórios)

Título da Dica:  Descobrindo e Alterando Atributos de Arquivos
Postada em 8/10/2000 por Webmaster      Clique aqui para enviar email para o autor  webmaster@vbweb.com.br
'Num módulo:
Public Type Attrib
  Archive As Boolean
  Hidden As Boolean
  ReadOnly As Boolean
  System As Boolean
End Type

Public Function MudaAtributo(ByVal sNomeArq As _
       String, ByRef m_Attrib As Attrib) As Boolean
  Dim AtributoMudar As Integer

  If m_Attrib.Archive = True Then
    AtributoMudar = AtributoMudar + vbArchive
  End If
  If m_Attrib.Hidden = True Then
    AtributoMudar = AtributoMudar + vbHidden
  End If
  If m_Attrib.ReadOnly = True Then
    AtributoMudar = AtributoMudar + vbReadOnly
  End If
  If m_Attrib.System = True Then
    AtributoMudar = AtributoMudar + vbSystem
  End If

  If Dir(sNomeArq, vbReadOnly + vbArchive + _
         vbSystem + vbHidden) = "" Then
    MudaAtributo = False
    Exit Function
  End If

  On Error GoTo Erro
  SetAttr sNomeArq, AtributoMudar
  On Error GoTo 0
  MudaAtributo = True
Exit Function
Erro:
  MudaAtributo = False
End Function

Public Function PegaAtributo(ByVal sNomeArq As _
       String, ByRef m_Attrib As Attrib) As Boolean
  Dim AtributoReceber As Integer

  If Dir(sNomeArq, vbReadOnly + vbArchive + _
         vbSystem + vbHidden) = "" Then
    PegaAtributo = False
    Exit Function
  End If

  On Error GoTo Erro
  AtributoReceber = GetAttr(sNomeArq)
  On Error GoTo 0
    
  m_Attrib.Archive = AtributoReceber And vbArchive
  m_Attrib.Hidden = AtributoReceber And vbHidden
  m_Attrib.ReadOnly = AtributoReceber And vbReadOnly
  m_Attrib.System = AtributoReceber And vbSystem
  PegaAtributo = True
Exit Function
Erro:
  PegaAtributo = False
End Function

'P/ saber os atributos, proceda da seguinte maneira:
Private Sub cmdPegar_Click()
  Dim ATR As Attrib

  If Not PegaAtributo("C:\Cezar.BMP", ATR) Then
    Debug.Print "Erro ao Pegar"
    Exit Sub
  End If

  MsgBox "Atrubutos do Arquivo: C:\Cezar.BMP" & _
         vbCrLf & "A - " & ATR.Archive & vbCrLf & _
         "H - " & ATR.Hidden & vbCrLf & _
         "R - " & ATR.ReadOnly & vbCrLf & _
         "S - " & ATR.System
End Sub
Ele retornará da seguinte forma:
ATR.Archive => Atributo Archive (Arquivo)
ATR.Hidden => Atributo Hidden (Oculto)
ATR.ReadOnly => Atributo ReadOnly (Somente p/ Leitura)
ATR.System => Atributo System (Arquivo de Sistema)

'P/ mudar os atributos, proceda da seguinte
'maneira:
Private Sub cmdMudar_Click()
  Dim ATR As Attrib
  ATR.Archive = True
  ATR.Hidden = False
  ATR.ReadOnly = False
  ATR.System = False
  
  If Not MudaAtributo("C:\Cezar.BMP", ATR) Then
    Debug.Print "Erro ao Pegar"
    Exit Sub
  End If
  Call cmdPegar_Click
End Sub
Então, após ele mudar os atributos, ele irá confirmar (chamando a Sub anterior) e lhe mostrará o resultado (os novos valores p/ os atributos...).

Detalhe, os parâmetros da função MudaAtributo são:
ATR.Archive => Atributo Archive (Arquivo)
ATR.Hidden => Atributo Hidden (Oculto)
ATR.ReadOnly => Atributo ReadOnly (Somente p/ Leitura)
ATR.System => Atributo System (Arquivo de Sistema)
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página