criquio 12/10/2011, 13:35
Podemos fazer isso de uma outra forma, sem necessidade de tabela, usando os métodos, Read, Write e Delete para ler, escrever e deletar a entrada no registro. Para isso, coloque um botão de nome btnHabilitar por exemplo e no evento "Ao carregar" do formulário:
On Error GoTo TErro
Dim Reg As Object
Set Reg = CreateObject("wscript.shell")
Sit = Reg.RegRead("HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\Nome do Atalho")
Set Reg = Nothing
TErro:
If Err.Number = -2147024894 Then
Me.btnAbilitar.Caption = "Habilitar"
Else
Me.btnAbilitar.Caption = "Desabilitar"
End If
Agora, no clique do botão, coloque:
Dim Reg As Object
Set Reg = CreateObject("wscript.shell")
If Me.btnHabilitar.Caption = "Habilitar" Then
If MsgBox("Tem certeza que deseja habilitar a inicialização automática?", vbYesNo + vbQuestion, "Inicialização") = vbYes Then
Reg.RegWrite "HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\" & "Nome do atalho", CurrentDb.Name
Me.btnHabilitar.Caption = "Desabilitar"
Else
End If
ElseIf Me.btnHabilitar.Caption = "Desabilitar" Then
If MsgBox("Tem certeza que deseja desabilitar a inicialização automática?", vbYesNo + vbQuestion, "Inicialização") = vbYes Then
Reg.RegDelete "HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\" & "Nome do atalho"
Me.btnHabilitar.Caption = "Habilitar"
Else
End If
End If
Set Reg = Nothing