Joel이 주석에 언급했듯이 먼저 하위 키를 열고 값을 설정해야합니다. 내가 명령을 전달하고 싶었 경우 AddToStartup
방법에
Public Sub AddToStartup(Optional appCommand As String = "")
Dim applicationName As String = Application.ProductName
Dim applicationPath As String = Application.ExecutablePath
Dim regKey As Microsoft.Win32.RegistryKey
regKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True)
regKey.SetValue(applicationName, """" & applicationPath & """" & appCommand)
regKey.Close()
End Sub
Public Sub RemoveFromStartup()
Dim applicationName As String = Application.ProductName
Dim regKey As Microsoft.Win32.RegistryKey
regKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True)
regKey.DeleteValue(applicationName, False)
regKey.Close()
End Sub
내가 선택적 매개 변수를 사용하여 (즉,
appCommand
) :
여기에 내가 일반적으로 Windows 시작으로/내 프로그램 추가/제거를 위해 사용하는 방법이다 Windows 시작시 실행되는 인스턴스에 대한 인수 예를 들어, " -Hide"
은 시작할 때 실행할 때 트레이에서 프로그램을 숨 깁니다.
사이드 노트 :은 항상 사용자에게 시작시 응용 프로그램을 추가 할 수있는 옵션과이를 되돌릴 수있는 옵션을 제공합니다. 그렇지 않으면 사용자가 당신을 :) 싫어하는 것, 사용자의 허가없이 시작시에 실행되도록 응용 프로그램을 강제하지 마십시오
사이드 참고 : 항상 사용자에게 기꺼이 시동하도록 응용 프로그램을 추가 할 수있는 옵션 및 옵션을 제공 그 반대. ** 사용자의 허가없이 시작시 응용 프로그램을 강제 실행하지 마십시오 **. –
HKEY_CURRENT_USER의 약 아무 것도 특별한 사용 권한없이 쓰기 가능합니다. 권한보다 오히려 긴 경로에서 SetValue()를 호출하는 대신 키를 가져 오거나 (또는 하위 키를 열어) 키의 값을 설정해야 할 필요가 있다고 생각합니다. –
답장을 보내 주셔서 감사합니다. YouTube 튜토리얼을 많이 보았지만 사용자 권한은 포함되어 있지 않으며 여전히 작동합니다. 다음 동영상을 참조하십시오. https://www.youtube.com/watch?v=baXyf-jlGm4 –