none
Programa iniciando com Windows RRS feed

  • Pergunta

  • Boa noite amigos!

    Pessoal o código a baixo ele grava no registro do windows, fazendo minha aplicação iniciar com o Windows, até aqui tudo bem!

     Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = Form1.Text
            Dim Value As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, True)
            RegKey.SetValue(Valuename, Value, RegistryValueKind.String)

            'Desabilitando btiniciarWindows
            btIniciarWindows.Enabled = False

            'Abilitando btnãoiniciar
            btNaoIniciarWindows.Enabled = True

            MsgBox("Confuguração com Sucesso!")

    ----------------------------------------------------------------------------------------

    Agora eu gostaria de que o código abaixo tirasse o aplicativo da inicialização do window, mas não funciona, algué sabe o por que?

     Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = Form1.Text
            Dim Value As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, False)
            RegKey.GetValue(Valuename, Value, RegistryValueKind.String)

            'Abilitando btIniciarWindows
            btIniciarWindows.Enabled = True

            'Desabilitando btnãoIniciar
            btNaoIniciarWindows.Enabled = False

            MsgBox("Configurado com Sucesso!")

    Se alguém descobrir, valeu!!!!


    Anderson.mds

    segunda-feira, 25 de maio de 2015 23:09

Respostas

  • Não sei como conseguiu inserir, aqui o seu codigo da erro quando vai setar o valor no registro, fiz uma alteração teste ai:

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btAtiva.Click
            Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = txtTeste.Text
            Dim Valor As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, False)
    
            'Remove os valores do registro setando vazio
            RegKey.SetValue(Valor, "Teste", 1)
    
    
            'HAbilitando btIniciarWindows
            btAtiva.Enabled = True
    
            'Desabilitando btnãoIniciar
            btInativa.Enabled = False
    
            MsgBox("Configurado com Sucesso!")
        End Sub
    
        Private Sub btInativa_Click(sender As Object, e As EventArgs) Handles btInativa.Click
            Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = txtTeste.Text
            Dim Value As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, False)
    
            'Remove os valores do registro setando vazio
            RegKey.SetValue("", "teste", 1)
    
    
            'HAbilitando btIniciarWindows
            btAtiva.Enabled = True
    
            'Desabilitando btnãoIniciar
            btInativa.Enabled = False
    
            MsgBox("Configurado com Sucesso!")
        End Sub


    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    • Marcado como Resposta anderson.mds terça-feira, 26 de maio de 2015 18:56
    • Não Marcado como Resposta anderson.mds terça-feira, 26 de maio de 2015 18:56
    • Marcado como Resposta anderson.mds quarta-feira, 27 de maio de 2015 21:32
    terça-feira, 26 de maio de 2015 15:50

Todas as Respostas

  • No segundo código você tem que remover a descrição e indicação de seu programa, e não esta fazendo isso, esta só lendo os valores do registro
    Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = Form1.Text
            Dim Value As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, False)
    'Remove os valores do registro setando vazio RegKey.SetValue("", "", RegistryValueKind.String) 'HAbilitando btIniciarWindows btIniciarWindows.Enabled = True 'Desabilitando btnãoIniciar btNaoIniciarWindows.Enabled = False MsgBox("Configurado com Sucesso!")



    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    terça-feira, 26 de maio de 2015 11:47
  • Ola amigo, cara não funciona, acredita, tem como vc revisar o código?
    Roda belesa mais não desabilita no inicializar do Windows.

    To trabalhando e preciso terminar isso, so falta esse detalhe!

    Valeu!!!!!!


    Anderson.mds


    • Editado anderson.mds terça-feira, 26 de maio de 2015 14:36
    terça-feira, 26 de maio de 2015 14:36
  • Olá Anderson,

    Veja este artigo no meu blog:

    Win Forms & WPF: Iniciando a aplicação junto com o Windows | Herbert.Lausmann

    Já foi bem testado. Funciona para Windows Forms e Windows Presentation Foundation.

    Espero ter ajudado.


    Herbert Lausmann

    terça-feira, 26 de maio de 2015 15:13
  • Não sei como conseguiu inserir, aqui o seu codigo da erro quando vai setar o valor no registro, fiz uma alteração teste ai:

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btAtiva.Click
            Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = txtTeste.Text
            Dim Valor As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, False)
    
            'Remove os valores do registro setando vazio
            RegKey.SetValue(Valor, "Teste", 1)
    
    
            'HAbilitando btIniciarWindows
            btAtiva.Enabled = True
    
            'Desabilitando btnãoIniciar
            btInativa.Enabled = False
    
            MsgBox("Configurado com Sucesso!")
        End Sub
    
        Private Sub btInativa_Click(sender As Object, e As EventArgs) Handles btInativa.Click
            Dim RegKey As Microsoft.Win32.RegistryKey
            'aqui tenho  o caminho do registro
            Dim Keyname As String = "Software\Microsoft\Windows\Currentversion\Run"
            Dim Valuename As String = txtTeste.Text
            Dim Value As String = Application.ExecutablePath
            RegKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(Keyname, False)
    
            'Remove os valores do registro setando vazio
            RegKey.SetValue("", "teste", 1)
    
    
            'HAbilitando btIniciarWindows
            btAtiva.Enabled = True
    
            'Desabilitando btnãoIniciar
            btInativa.Enabled = False
    
            MsgBox("Configurado com Sucesso!")
        End Sub


    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    • Marcado como Resposta anderson.mds terça-feira, 26 de maio de 2015 18:56
    • Não Marcado como Resposta anderson.mds terça-feira, 26 de maio de 2015 18:56
    • Marcado como Resposta anderson.mds quarta-feira, 27 de maio de 2015 21:32
    terça-feira, 26 de maio de 2015 15:50